Signal message format
Nexconn defines signal messages for internal SDK use. Developers generally do not need to handle them.
Command message
ObjectName: RC:CmdMsg. Unlike the command notification (RC:CmdNtf), this message is not stored and is not displayed in the UI. Use it to send operational commands from your server to clients.
Content structure
{
"name":"AtPerson",
"data":"{\"sourceId\":\"9527\"}"
}
| Field | Type | Required | Description |
|---|---|---|---|
name | String | Yes | Command name (user-defined). |
data | String | Yes | Command content. |
Client defaults
- Not stored on the client
- Does not count as unread
- Push not supported by default
Recall command message
ObjectName: RC:RcCmd. Sent internally by the client SDK when recalling a message. Not recommended for direct use.
Content structure
| Field | Type | Required | Description |
|---|---|---|---|
MessageUId | String | Yes | Message UID (server-generated unique ID). |
TargetId | String | Yes | Channel ID. |
ChannelId | String | Yes | Community channel subchannel ID. |
SentTime | String | Yes | Message send time. |
ConversationType | String | Yes | Channel type. |
isAdmin | Boolean | Yes | Whether the recall is an admin action. |
isDelete | Boolean | Yes | Whether to delete the original record on mobile clients. |
Client defaults
- Not stored on the client
- Does not count as unread
- Push supported by default: Default push content is "[recalled a message]".
Read receipt message (direct)
ObjectName: RC:ReadNtf. Indicates that messages have been read in a direct channel.
Content structure
{
"lastMessageSendTime":1408706337,
"messageUId":"XXXXXX",
"type":1
}
| Field | Type | Required | Description |
|---|---|---|---|
lastMessageSendTime | Int | Yes | Send time of the last read message. |
messageUId | String | No | UID of the last read message. Included by default from Web clients; not included from mobile clients. |
type | Int | Yes | Channel type. Currently only supports direct channels (1). |
Client defaults
- Not stored, not counted, push not supported by default
Group read receipt request message
ObjectName: RC:RRReqMsg. Requests read receipts for a group message.
Content structure
{
"messageUId":"596E-P5PG-4FS2-7OJK"
}
| Field | Type | Required | Description |
|---|---|---|---|
messageUId | String | Yes | UID of the message to request a read receipt for. |
Client defaults
- Not stored, not counted, push not supported by default
Group read receipt response message
ObjectName: RC:RRRspMsg. Returns read status for group messages.
Content structure
{
"receiptMessageDic":{"wX7zFv8dR":["BJN3-LSG0-7MUC-OR7A"]}
}
| Field | Type | Required | Description |
|---|---|---|---|
receiptMessageDic | Object | Yes | Dictionary of messages to receipt. Key: sender user ID. Value: array of MessageUId values. |
Client defaults
- Not stored, not counted, push not supported by default
Multi-device read sync message
ObjectName: RC:SRSMsg. Syncs read status across multiple devices for the same user.
Content structure
{
"lastMessageSendTime":1610941689734
}
| Field | Type | Required | Description |
|---|---|---|---|
lastMessageSendTime | Int | Yes | Send time of the last read message. |
Client defaults
- Not stored, not counted, push not supported by default
Open channel KV notification message
ObjectName: RC:chrmKVNotiMsg. Notifies clients of KV attribute changes in an open channel.
Content structure
{
"type":1,
"key":"name",
"value":"Host",
"extra":""
}
| Field | Type | Required | Description |
|---|---|---|---|
type | Int | Yes | Operation type. 1: set attribute. 2: delete attribute. |
key | String | Yes | Attribute name (max 128 characters). |
value | String | Yes | Attribute value (max 4096 characters). |
extra | String | No | Additional info (corresponds to notificationExtra in the set attribute API). |
Client defaults
- Stored on the client
- Does not count as unread
- Push not supported by default
Message metadata operation message
Used only in community channels. Not delivered to client SDKs.
ObjectName: RC:MsgExMsg. Generated when message metadata is set or deleted in community channels. Available via message routing and message callback.
Set metadata structure:
{
"clear":0,"put":{"123":"example","2":"222","3":"example"}
}
Delete metadata structure:
{
"clear":0,"del":{"123":"example","2":"222","3":"example"}
}
| Field | Description |
|---|---|
clear | Whether to delete all attributes. 1: delete all. 0: do not delete all. |
del | Array of attribute keys/values to delete. |
put | Array of attribute keys/values to set. |
Audio/video call signals
Used internally by the CallLib/CallKit SDK. Included in message routing and message callback data.
Call accept signal
ObjectName: RC:VCAccept
{
"callId":"DBAA6F6A-21DC-4A2E-B353-2EEED958B0FC",
"mediaType":2,
"deviceId":"NxM4MmRlMDk3ZWU0ZWM3Yw",
"platform":"iOS"
}
Call hangup signal
ObjectName: RC:VCHangup
{
"callId":"D80A1E4B-F3B2-4B71-86F9-C6B9FA0EEEB1",
"deviceId":"YtliMzY1MDc1ZDg4MWFlYQ",
"reason":1,
"platform":"iOS"
}
Call invite signal
ObjectName: RC:VCInvite
{
"callId":"53287BC6-5805-481D-A8A2-CDEC221EEB5B",
"mediaType":1,
"deviceId":"YTliMzY2MDc1ZDg4MWFlYQ",
"observerUserIds":[],
"platform":"iOS",
"inviteUserIds":["O6fKSQwOt"],
"channelInfo":{
"Key":"RongRTCChannelKey",
"Id":"53287BC6-5805-481D-A8A2-CDEC221EEB5B"
},
"engineType":4
}
Media switch signal
ObjectName: RC:VCModifyMedia
{
"callId":"b462616b-1247-4986-b77a-7f438a50bfe6",
"mediaType":1
}
Member change signal
ObjectName: RC:VCModifyMem
{
"platform":"iOS",
"callId":"DBAA6F6A-21DC-4A2E-B353-2EEED958B0FC"
}