Skip to main content

Callback Before Sending Group Message

Functional Description

Before sending a group chat message, the business server can reject this request, or modify and intervene in the request.

Precautions

  • To enable the callback, you must configure the callback URL and turn on the switch corresponding to this callback protocol. See the Callback Description document for configuration methods.
  • The callback direction is an HTTP/HTTPS POST request initiated by IMServer to the business server.
  • The business server must respond to this request within the timeout period.

Scenarios That May Trigger This Callback

  • Before users perform corresponding operations through the client or APP administrators through REST API.

Timing of Callback

  • Before sending a group chat message.

Interface Description

Request URL Example

Here CallbackCommand is: callbackBeforeSendGroupMsgCommand

{WEBHOOK_ADDRESS}/callbackBeforeSendGroupMsgCommand?contenttype=json

Request Package Example

{
"sendID": "123456",
"callbackCommand": "callbackBeforeSendGroupMsgCommand",
"serverMsgID": "msg123",
"clientMsgID": "client123",
"operationID": "1646445464564",
"senderPlatformID": 1,
"senderNickname": "John",
"sessionType": 2,
"msgFrom": 1,
"contentType": 1,
"status": 0,
"sendTime": 1673048592000,
"createTime": 1673048592000,
"content": "Hello, this is a group message!",
"seq": 1,
"atUserList": ["user123", "user456"],
"faceURL": "http://example.com/user123.png",
"ex": "Extra data",
"groupID": "group567"
}

Request Package Field Description

ObjectTypeDescription
sendIDstringUnique identifier of the sender
callbackCommandstringCallback command, here it is the callback before sending a group message
serverMsgIDstringServer-side message ID
clientMsgIDstringClient-side message ID
operationIDstringoperationID used for global link tracking
senderPlatformIDint32Platform ID of the sender
senderNicknamestringNickname of the sender
sessionTypeint32Session type
msgFromint32Message source, 1 for user, 2 for group
contentTypeint32Message type, 1 for text message
statusint32Message status
sendTimeint64Timestamp of message sending (milliseconds)
createTimeint64Timestamp of message creation (milliseconds)
contentstringMessage content
sequint32Sequence number of the message
atUserListstringList of group member IDs
faceURLstringAvatar URL of the sender
exstringExtra data field
groupIDstringGroup ID

Response Package Example

Allow Sending

Allow users to send group messages.

{
"actionCode": 0,
"errCode": 0,
"errMsg": "",
"errDlt": "",
"nextCode": 0
}

Response Package Field Description

FieldValueDescription
actionCode0Indicates whether the business system callback was executed correctly. 0 means the operation was successful.
errCode5001Custom error code, ranges from 5000-9999. Set when actionCode is not 0; set when nextCode is 1.
errMsg"An error message"Simple error message corresponding to the custom error code.
errDlt"Detailed error information"Detailed error information corresponding to the custom error code.
nextCode1Next execution instruction, 1 means refusing to continue execution, set when actionCode is 0.