Send group messages
Overview
You can call this operation to send messages to all online users in a group.
The QPS limit is 10 calls per second.
The client receives the message notification in the following ZIM SDK callbacks.
iOS | Android | macOS | Windows |
---|---|---|---|
groupMessageReceived | onGroupMessageReceived | groupMessageReceived | onGroupMessageReceived |
Web | Flutter | Unity3D | React Native |
groupMessageReceived | onGroupMessageReceived | onReceiveGroupMessage | groupMessageReceived |
Request method and endpoint
- Request method: POST
- Request URL:
https://zim-api.zego.im/?Action=SendGroupMessage
- Protocol: HTTPS
Request parameters
The following table describes only the operation-specific request parameters and some common request parameters. For the complete list of common request parameters, see the Public request parameters section of the Accessing Server APIs topic.
Parameter | Type | Required | Description |
---|---|---|---|
FromUserId | String | Yes | The ID of the message sender. |
GroupId | String | Yes | The group chat ID. |
MessageType | Number | Yes | The message type. For more information about group message types, see MessageBody Introduction. |
Priority | Number | Yes | The message priority. Valid values:
|
MessageBody | Object | Yes | The message content. For more information, see MessageBody Introduction. |
SubMsgType | Number | No (Yes if MessageType is 200 ) | The custom message type. Value range: [0,200]. |
SearchedContent | String | No | The search field for a custom message. This field is valid only if MessageType is 200 , cannot exceed 64 bytes in length, and must be specified to search for custom messages in the client. |
The FromUserId
and GroupId
parameters can contain only digits, letters, and the following characters: '!', '#', '$', '%', '&', '(', ')', '+', '', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', ', ', '|', '~'.
- If the version of the sending ZIM SDK is earlier than
2.0.0
, the ZIM server supports only command messages whoseMessageType
is2
.
We recommend that you use the SDK of the latest version for better experience. - To receive text messages whose
MessageType
is1
, the version of the ZIM SDK needs to be 2.7.0 or later. - To send and receive custom messages whose
MessageType
is200
, the version of the ZIM SDK needs to be 2.8.0 or later. - If the version of the receiving ZIM SDK is 2.0.0 or later but earlier than 2.8.0, the ZIM SDK can receive custom messages but will identify the message type as unknown. In addition, it cannot obtain the message content. To obtain the message content, upgrade the ZIM SDK to 2.8.0 or later.
- If the version of the receiving ZIM SDK is 1.x.x, the ZIM SDK cannot receive custom messages and identify the message type as unknown.
Sample request
-
Request URL:
Untitledhttps://zim-api.zego.im/?Action=SendGroupMessage &<Common request parameters>
1 -
Request body:
Untitled{ "FromUserId": "u1", "GroupId": "r1", "MessageType": 1, "Priority": 1, "MessageBody": { "Message":"hello world", "ExtendedData":"d", "OfflinePush" :{ "Enable":0, "Title":"Title", "Content":"Content", "Payload":"data" } } }
1
Response parameters
Parameter | Type | Description |
---|---|---|
Code | Number | The return code. |
Message | String | The description of the request result. |
RequestId | String | The request ID. |
MsgSeq | Number | The sequence of the message. This field is empty for command messages and can be used to Recall a group message. |
MsgId | Number | The ID of the message. |
Sample response
{
"Code":0,
"Message":"success",
"RequestId":"343649807833778782",
"MsgSeq": 1,
"MsgId": 1
}
Return codes
The following table describes only the return codes related to the business logic of the operation. For the complete list of return codes, see Return codes.
Return Code | Description | Solution |
---|---|---|
660000025 | Failed to send the Base64-encoded signaling message when IsBase64 is set to 1 in MessageBody . | Check the following items: - Check whether IsBase64 needs to be set to 1 , that is, whether a binary signaling message needs to be sent. - Check whether the message is Base64-encoded. |
660400001 | The message size exceeds the limit. | Check the message size. |
660500002 | The message sender has not logged in to the ZIM SDK. | Log in to the ZIM SDK before sending the message. |
660600001 | The group ID does not exist. | Check whether the value of the GroupId parameter is valid. |