欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP基于websocket实现前台及后台实时推送

程序员文章站 2022-04-07 11:43:22
...
PHP websocket实时消息推送
实现步骤如下:
1. 获取GoEasy appkey.
在goeasy官网上注册一个账号,并新建一个app. APP创建好后系统会为该app自动生成两个key, 一个既可以用来接收又可以用来推送 (supper key),另一个只可以用来接收(subscriber key).
2. 客户端订阅一个channel.
a. 在客户端引入goeasy.js, js地址:cdn.goeasy.io/goeasy.js
需要注意的是,不能将goeasy.js下载到本地,因为goeasy会根据不同浏览器来提供不同的js. 官网上也有相应说明。
b. 订阅代码
var goEasy = new GoEasy({appkey: 'subscriber key'});
//这里我用的是subscriber key,因为在我的客户端我不需要推送任何消息,所以没有必要使用supper key
                goEasy.subscribe({
                 channel: 'csdnNotification',
                 onMessage: function(message){
                              alert('Meessagereceived:'+message.content);
                              //接收到推送的消息
                           }
                    });

3. 前台推送及后台推送
3.1. 前台往相同channel上推送
在引入了goeasy.js的页面,直接调用goEasy. publish('csdnNotification', '您的好友222已上线'); 用法与订阅类似。
3.2. 后台往相同channel上推送. 用GoEasy提供的restful API实现
API url: goeasy.io/goeasy/publish
方式: Post
参数列表:

channel: 'csdnNotification' //与订阅的channel必须一致,否则客户端将收不到消息。因此我们也可以根据channel来控制哪些客户端可以接收。
   appkey: 'supper key' //这里必须使用supper key
   content: 'blabla…..' //要推送的内容

希望对大家有帮助。

以上就是PHP基于websocket实现前台及后台实时推送的详细内容,更多请关注其它相关文章!