使用anyRTC开发的webSDK 实现实时消息

使用anyRTC开发的webSDK 实现实时消息

技术杂谈小彩虹2021-08-19 4:59:02170A+A-

准备工作

APPID获取地址: anyRTC;

SDK获取地址: webSDK;

导入SDK

ArRTM 是 anyrtc RTM SDK 的导出模块。 使用 script 标签引入 SDK 时,产生名为 ArRTM 的全局变量,该变量含有该模块的所有成员。

<script src="./js//ArRTM@latest.js"></script>

创建sdk全局实例

ArRTM 是引入sdk后自动抛出的。

let client = await ArRTM.createInstance(APPID);

登陆系统

登录 anyrtc RTM 系统的用户 ID。该字符串不可超过 64 字节。以下为支持的字符集范围:

26 个小写英文字母 a-z

26 个大写英文字母 A-Z

10 个数字 0-9

空格

"!", "#", "$", "%", "&", "(", ")", "+", "-", ":", ";", "<", "=", ".", ">", "?", "@", "[", "]", "^", "_", " {", "}", "|", "~", ","

请不要将 uid 设为空、null,或字符串 "null"。

uid 不支持 number 类型。建议调用 toString() 方法转化非 string 型 uid。

client.login({ uid: string })

监听点对点消息

client.on("MessageFromPeer", async (message, peerId, messagePros)=> {
	// 你的业务逻辑
};

发送消息(包括点对点消息和频道消息)

// 本地用户(发送者)向指定用户(接收者)发送点对点消息或点对点的离线消息。
client.sendMessageToPeer(
	{ text: 'test peer message' }, // 一个 RtmMessage 实例。  
	'PeerId',                      // 对端用户的 uid。 
).then(sendResult => {  
    if (sendResult.hasPeerReceived) {
      // 你的代码:远端用户收到消息事件。  
    } else {    
      // 你的代码:服务器已收到消息,对端未收到消息。  
    } 
}).catch(error => {  
    // 你的代码:点对点消息发送失败。 
});

退出登录

退出登录,退出后自动断开连接和销毁回调监听。

client.logout();

完整示例

更多代码详情,请移步 github

点击这里复制本文地址 以上内容由权冠洲的博客整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

支持Ctrl+Enter提交

联系我们| 本站介绍| 留言建议 | 交换友链 | 域名展示
本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除

权冠洲的博客 © All Rights Reserved.  Copyright quanguanzhou.top All Rights Reserved
苏公网安备 32030302000848号   苏ICP备20033101号-1
本网站由 提供CDN/云存储服务

联系我们