跳转到内容

Yunba JavaScript SDK 快速入门

通过利用 Yunba Javascript SDK 提供的接口 API,你可以很方便地在智能手机、平板电脑、网站等终端应用上使用 Yunba 的各种消息服务。

下载最新SDK

调试工具可以用 Chrome 本身自带 JavaScript Console,其它浏览器可能需要安装相应插件。例如 FireFox 需要安装 FireBug。

Yunba JavaScript SDK 依赖于 Socket.IO,所以要先引入 Socket.IO。 请参考(SDK 中的)Demo 分别引入 Socket.IO 和 yunba-js-sdk。

这里,需要在云巴 Portal 上创建新应用,用获取到的 AppKey 创建 Yunba 实例。

var yunba = new Yunba({server: 'sock.yunba.io', port: 3000, appkey: appkey});

第三步:初始化并连接消息服务器

Section titled “第三步:初始化并连接消息服务器”

注意:如果不使用 connect_by_customid 而使用不带 customid 的 connect,那对云巴来说每次连接的都是新用户,也就是客户端每次连接都会创建一个新的日活,

yunba.init(function (success) {
if (success) {
yunba.connect_by_customid('your_app_user_id', function (success, msg, sessionid) {
if (success) {
console.log('你已成功连接到消息服务器,会话ID:' + sessionid);
} else {
console.log(msg);
}
});
}
});

如果你想接收一个频道的消息,你得先使用subscribe()方法订阅该 频道, 然后用set_message_cb()方法设置收到消息时调用的回调函数来接收消息。

注:subscribe()的前提是客户端已经成功连上服务器。为了确保在连接成功以后再进行订阅,可以将subscribe()写到connect_by_customid()的回调函数中,在 success 时才执行。

yunba.subscribe({'topic': 'my_topic'},
function (success, msg) {
if (success) {
console.log('你已成功订阅频道:my_topic');
} else {
console.log(msg);
}
}
);
yunba.set_message_cb(function (data) {
console.log('Topic:' + data.topic + ',Msg:' + data.msg);
});

你可以使用publish()方法向所有订阅 my_topic 频道的终端发布一条 “你好!Yunba。” 消息。

yunba.publish({'topic': 'my_topic', 'msg': '你好!Yunba。'},
function (success, msg) {
if (success) {
console.log('消息发布成功');
} else {
console.log(msg);
}
}
);

将上面的例子扩展一下,我们就可以利用 Yunba 实现在 JavaScript 和其他平台之间的实时通讯。