首页 > 代码库 > Ruby 基于websocket的前台及后台实时推送

Ruby 基于websocket的前台及后台实时推送

 Ruby websocket实时消息推送
 
实现步骤如下:
1.        获取GoEasy appkey.
在goeasy官网上注册一个账号,并新建一个app. APP创建好后系统会为该app自动生成两个key, 一个既可以用来接收又可以用来推送 (supper key),另一个只可以用来接收(subscriber key).
2.        客户端订阅一个channel.
a.        在客户端引入goeasy.js, js地址:http://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(‘Meessage received:‘+message.content);//接收到推送的消息

                           }

                    });

3.        前台推送及后台推送
3.1.   前台往相同channel上推送
在引入了goeasy.js的页面,直接调用goEasy. publish(‘csdnNotification‘, ‘您的好友222已上线‘); 用法与订阅类似。
3.2.   后台往相同channel上推送. 用GoEasy提供的restful API实现
API url: http://goeasy.io/goeasy/publish
方式: Post
参数列表:
   channel: ‘csdnNotification‘ //与订阅的channel必须一致,否则客户端将收不到消息。因此我们也可以根据channel来控制哪些客户端可以接收。
   appkey: ‘supper key‘ //这里必须使用supper key
   content: ‘blabla…..‘ //要推送的内容
希望对大家有帮助。
 

Ruby 基于websocket的前台及后台实时推送