通知
更新时间: 2021/07/26 07:56:21
通知信令相关的在线通知
- API 介绍
用于通知信令相关的在线通知,可以使用on
的方式侦听,也可以通过nim.getInstance()
的时候传入。
- 示例
javascript// 在线用户接收到的通知事件
nim.on('signalingNotify', signalingNotifyHandler);
function signalingNotifyHandler (event) {
console.log("signalingOnlineNotify: ", event)
switch (event.eventType) {
case 'ROOM_CLOSE':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.ext 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
*/
console.log("独立呼叫信令:频道关闭事件");
break;
case 'ROOM_JOIN':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.ext 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
event.attach 新加入的成员信息
event.msgid 消息id
*/
console.log("独立呼叫信令:加入频道事件");
break;
case 'INVITE':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.ext 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
event.to 接收者的账号
event.requestId 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作
event.pushInfo 推送信息
*/
console.log("独立呼叫信令: 邀请事件");
break;
case 'CANCEL_INVITE':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.ext 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
event.to 接收者的账号
event.requestId 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作
*/
console.log("独立呼叫信令:取消邀请事件");
break;
case 'REJECT':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.ext 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
event.to 接收者的账号
event.requestId 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作
*/
console.log("独立呼叫信令:拒绝邀请事件");
break;
case 'ACCEPT':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.ext 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
event.to 接收者的账号
event.requestId 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作
*/
console.log("独立呼叫信令:接受邀请事件");
break;
case 'LEAVE':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
event.to 接收者
evnet.ext 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
*/
console.log("独立呼叫信令:离开频道事件");
break;
case 'CONTROL':
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
event.to 接收者
evnet.attachExt 操作者附加的自定义信息,透传给你
event.time 操作的时间戳
*/
console.log("独立呼叫信令:自定义控制事件");
break;
}
});
- 参数说明
event 事件通知对象
event 属性 | 类型 | 说明 |
---|---|---|
eventType | number | 通知事件的类型 |
channelName | string | 频道名称 |
channelId | string | 频道ID |
channelCreateTime | string | 频道创建时间 |
channelExpireTime | string | 频道过期时间 |
creator | string | 频道创建者 |
from | string | 操作者 |
attachExt | string | 操作者附加的自定义信息,透传给其他人 |
time | number | 操作的时间戳 |
members | object | 新加入的成员信息 |
pushInfo | number | 推送信息 (邀请接口里已经说明格式) |
requestId | number | 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作 |
to | string | 接收者的账号 |
member | 类型 | 说明 |
---|---|---|
account | string | 成员account账号 |
uid | string | 该成员在频道中对应的uid |
createTimestamp | number | 频道创建时间点 |
expireTimestamp | number | 频道失效时间点 |
- 参数说明
eventList 为通知事件列表
eventList 属性 | 类型 | 说明 |
---|---|---|
eventList | array | 通知事件数组,数组元素即为在线通知接口中的通知事件 |
在线多端同步通知
-
API 介绍
- 用于通知信令相关的多端同步通知。比如自己在手机端接受邀请,PC端会同步收到这个通知
- 可以使用
on
的方式侦听,也可以通过nim.getInstance()
的时候传入。
-
示例
javascript// 在线多端同步通知
nim.on('signalingMutilClientSyncNotify', function(event) {
console.log("signalingMutilClientSyncNotify: ", event)
switch (event.eventType) {
case nim.EVENT_TYPE_REJECT:
//nim.EVENT_TYPE_REJECT 数值为5
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.attachExt 操作者附加的自定义信息,透传给其他人
event.time 操作的时间戳
event.to 接收者的账号
event.requestId 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作
*/
console.log("独立呼叫信令:拒绝邀请事件");
break;
case nim.EVENT_TYPE_ACCEPT:
//nim.EVENT_TYPE_ACCEPT 数值为6
/* 该事件的通知内容
event.eventType 事件类型
event.channelName 频道名称
event.channelId 频道ID
event.channelCreateTime 频道创建时间
event.channelExpireTime 频道过期时间
event.creator 频道创建者
event.from 操作者
evnet.attachExt 操作者附加的自定义信息,透传给其他人
event.time 操作的时间戳
event.toAccount 接收者的账号
event.requestId 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作
*/
console.log("独立呼叫信令:接受邀请事件");
break;
}
});
- 参数说明
event 为通知事件
event 属性 | 类型 | 说明 |
---|---|---|
eventType | number | 通知事件的类型 |
channelName | string | 频道名称 |
channelId | string | 频道ID |
channelCreateTime | string | 频道创建时间 |
channelExpireTime | string | 频道过期时间 |
creator | string | 频道创建者 |
from | string | 操作者 |
attachExt | string | 操作者附加的自定义信息,透传给其他人 |
time | number | 操作的时间戳 |
pushInfo | number | 推送信息 (邀请接口里已经说明格式) |
requestId | number | 邀请者邀请的请求id,用于被邀请者回传request_id_作对应的回应操作 |
to | number | 接收者的账号 |
频道成员变更同步
-
API 介绍
- 调用
signalingSync
后将会触发这个通知回调 - 通过
nim.getInstance()
的时候传入。
- 调用
-
示例
javascript// 被叫接受的通知
function signalingMembersSyncNotify(event) {
console.log("signalingMembersSyncNotify: ", event)
}
nim.getInstance({
...
onSignalingMembersSyncNotify: signalingMembersSyncNotify
});
- 参数说明
event 为通知事件
event对象说明 | 类型 | 说明 |
---|---|---|
channelInfo | object | 频道信息,创建频道接口中有说明格式 |
members | array | 频道里的成员列表,加入频道的接口中有说明格式 |
收到未读信令消息通知
-
调用
signalingSync
后将会触发这个通知回调 -
事件 介绍
- 收到未读的信令消息。
-
示例
javascript// 收到信令未读消息
nim.on('signalingUnreadMessageSyncNotify',function(data){
console.log(data)
/*
* [{
attach: "{"type":6}"
attachExt: "13245678"
channelCreateTime: "123456"
channelExpireTime: "22345677789"
channelId: "123456789"
channelInValid: true
channelName: "音频001"
creator: "cs1"
eventType: "ACCEPT"
ext: "音频001"
from: "cs2"
msgid: "117504"
requestId: "1111111111"
time: "1557715530592"
to: "cs1"
type: "1"
}]
*/
});
// 或者在getInstance的时候传入
NIM.getInstance({
onSignalingUnreadMessageSyncNotify: function(data){
console.log(data)
}
})
此文档是否对你有帮助?