Class
ZIMAppConfig
ZIM application configuration, including AppID and AppSign.
Declared in ZIMDefines.h
Properties
appID
public unsigned int appID- Required: Required.
appSign
public NSString * appSign- Required: Required.
ZIMAudio
Methods
getVersion
+ (NSString *)getVersion;If you encounter an abnormality during the running of the SDK, you can submit the problem, log, and other information to the ZEGO technical staff to locate and troubleshoot. Developers can also collect current SDK version information through this API, which is convenient for App operation statistics and related issues.
- When to call: Any time.
- Available since: ZIM Audio SDK 1.0.0
SDK current version.
setAdvancedConfigWithKey:key:value:
+ (void)setAdvancedConfigWithKey:(NSString *) key value:(NSString *) value;Parameters
| Name | Type | Description |
|---|---|---|
| key | NSString * | Key for advanced configuration. |
| value | NSString * | Value for advanced configuration. |
Details
When the default behavior of the SDK cannot meet the developer's usage scenario, this API can be called to implement developer-defined advanced configuration.
-
When to call: Must be called before [init], otherwise it will only take effect after the next [init].
-
Caution: Please contact ZEGO technical support before use.
-
Available since: ZIM Audio SDK1.0.0
-
Restrictions: None.
sharedInstance
+ (ZIMAudio) sharedInstance;When using ZIMAudio SDK, developers should directly call this API to obtain the internal singleton object without creating and maintaining the object themselves.
- When to call: Any time.
- Available since: ZIM Audio SDK 1.0.0
initWithLicense:license:
- (void)initWithLicense:(NSString *) license;Parameters
| Name | Type | Description |
|---|---|---|
| license | NSString * | Authorization file. If only recording and playing audio, this field can be left empty. When advanced features such as volume gain and noise are required, this field needs to be passed. |
Details
When using other functional interfaces of ZIMAudio SDK, this API must be called first for initialization.
- When to call: Call before calling other APIs.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: When no authentication information is passed in or the authentication information is incorrect, the initialization of the SDK can proceed normally, but subsequent use of some functions that require authentication will be restricted.
uninit
- (void)uninit;When you no longer need to use ZIMAudio SDK, you can call this API to deinitialize and release memory resources.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: None.
setEventHandler:eventHandler:
- (void)setEventHandler:(nullable id<ZIMAudioEventHandler>) eventHandler;Parameters
| Name | Type | Description |
|---|---|---|
| eventHandler | nullable id<ZIMAudioEventHandler> | Event notification callback. Developers should override callbacks to focus on specific notifications based on their own business scenarios. |
Details
Set event notification callbacks to monitor callbacks such as recorder and player life cycle events.
- When to call: After [init].
- Caution: When the API is called multiple times and different eventHandler objects are passed in, the last object will overwrite the previously set object; when the eventHandler object passed in by the API is empty, the event callback notification is cancelled.
- Available since: ZIM Audio SDK 1.0.0
enableANS:enable:
- (void)enableANS:(BOOL) enable;Parameters
| Name | Type | Description |
|---|---|---|
| enable | BOOL | Whether to enable this function. |
Details
After turning on this function, the human voice can be made clearer. This function is better at suppressing continuous noise (such as the sound of rain and other white noise).
Use case: This feature can be turned on when noise suppression is needed to improve the vocal quality and user experience of recorded audio.
- When to call: Called at the time after [init] and before [startPlay].
- Caution: This API can only be called normally after the authentication is within the legal usage period, or the use is allowed in the authentication information; otherwise, an error message will be reported that the authentication has expired or this feature is not supported.
- Available since: ZIM Audio SDK 1.0.0
enableAGC:enable:
- (void)enableAGC:(BOOL) enable;Parameters
| Name | Type | Description |
|---|---|---|
| enable | BOOL | Whether to enable this function. |
Details
After turning on this function, the SDK can automatically adjust the microphone volume to adapt to far and near pickup and keep the volume stable.
Use case: This feature can be turned on when volume stability needs to be ensured to improve the vocal quality and user experience of recorded audio.
- When to call: Called at the time after [init] and before [startPlay].
- Caution: This API can only be called normally after the authentication is within the legal usage period, or the use is allowed in the authentication information; otherwise, an error message will be reported that the authentication has expired or this feature is not supported. =
- Available since: ZIM Audio SDK 1.0.0
setANSParam:param:
- (void)setANSParam:(ZIMAudioANSParam) param;Parameters
| Name | Type | Description |
|---|---|---|
| param | ZIMAudioANSParam | ANS parameter |
Details
When noise suppression is turned on using [enableANS], you can use this function to switch between different noise suppression modes to control the degree of noise suppression.
Use case: When the default noise suppression effect does not meet expectations, you can use this function to adjust the noise suppression mode.
- Default value: When this function is not called, the default noise suppression mode is [Medium].
- When to call: Called at any time after [init].
- Caution: This API can only be called normally after the license is within the legal usage period, or the use is allowed in the authentication information; otherwise, an error message will be reported that the authentication has expired or this feature is not supported.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: None.
startRecordWithConfig:config:
- (void)startRecordWithConfig:(ZIMAudioRecordConfig) config;Parameters
| Name | Type | Description |
|---|---|---|
| config | ZIMAudioRecordConfig | Audio recording configuration. |
Details
Start recording audio files. The SDK will apply to the system to use the microphone device to collect audio and write it to a local file. Use case: Before the user needs to send voice messages, they can call this API to collect and generate the voice files required for sending. The recording files will eventually be saved to the path set locally.
- When to call: After [init].
- Related APIs: When this API is called to start recording, the SDK will throw the [onRecorderStarted] notification. Only after receiving this callback notification can the developer consider that recording has officially started and updated the UI display; after that, the SDK will call back the recording progress through [onRecorderProgress]; under abnormal circumstances, the SDK may also throw an [onRecorderFailed] notification, please Developers may monitor and alert users when exceptions occur as appropriate.
- Caution: Developers are requested to ensure that they have obtained the audio collection permission of the app before using this API; when the SDK starts recording, it will exclusively have the right to use the audio device, so it will interrupt the playback and other behaviors of other third-party apps.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: Recording-related APIs cannot be used at the same time as playback-related APIs. At the same time, only recording or playback can be performed inside the SDK. Therefore, before you need to start recording, developers are required to actively stop the playback function, otherwise the playback-related functions will also be stopped before the SDK starts recording.
completeRecord
- (void)completeRecord;Finish recording the audio file. After calling this API, the recording file will be generated in the file path passed in [startRecord] and saved.
Use case: After completing the recording, the developer can send the recording file as an IM message. For example, it is passed to ZIM's AudioMessage to send voice messages.
- When to call: [startRecord] Recording is taking effect.
- Related APIs: When this API is called and recording is successfully completed, the SDK throws the [onRecorderCompleted] notification. Developers must receive this callback notification before sending voice messages.
- Caution: If the developer does not call this API to end the recording while [startRecord] is in effect, the recording will still be completed and the file will be saved when the maximum recording duration of [startRecord] is reached. After completing the recording, the SDK will release the occupation of the audio device.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: Recording-related APIs cannot be used at the same time as playback-related APIs. At the same time, only recording or playback can be performed inside the SDK.
cancelRecord
- (void)cancelRecord;Interrupt recording audio file. After calling this API, recording will be stopped, and the local file will be deleted internally by the SDK.
Use case: When you need to stop recording early during the recording process and do not need to send a voice message, you can call this API to cancel the recording.
- When to call: [startRecord] Recording is taking effect.
- Related APIs: When this API is called to cancel recording, the SDK will throw the [onRecorderCancelled] notification. Developers can clean up related resources and update UI display based on this notification.
- Caution: After canceling the recording, the SDK will release the occupation of the audio device.
- Available since: 1.0.0
- Restrictions: Recording-related APIs cannot be used at the same time as playback-related APIs. At the same time, only recording or playback can be performed inside the SDK.
isRecording
- (BOOL)isRecording;Get whether the SDK is recording at the current moment.
Use case: When developers need to obtain and detect the recording status at a certain moment,
they can call this API to obtain the recording status.
- When to call: Called at any time after [init].
- Available since: ZIM Audio SDK 1.0.0
setAudioRouteType:routeType:
- (void)setAudioRouteType:(ZIMAudioRouteType) routeType;Parameters
| Name | Type | Description |
|---|---|---|
| routeType | ZIMAudioRouteType | Route type. |
Details
Set the audio routing type to choose whether to use speakers or earpieces to play audio.
Use case: When developers need to have the option for users to choose where the sound is played from, they can call this API to change the audio routing type currently being played.
- When to call: Called at any time after [init].
- Caution: When the user is currently using headphones for audio playback, the settings of this API will not take effect.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: None.
startPlayWithConfig:config:
- (void)startPlayWithConfig:(ZIMAudioPlayConfig) config;Parameters
| Name | Type | Description |
|---|---|---|
| config | ZIMAudioPlayConfig | Audio playing configuration. |
Details
Start playing the audio file. The SDK will read the audio file in the specified path and play it.
Use case: After the user receives the voice message, the API can be called to play the audio file that has been downloaded and saved locally.
- When to call: After [init].
- Related APIs: When this API is called to start playback, the SDK will throw the [onPlayerStarted] notification. Only after receiving this callback notification can the developer consider that playback has officially started and update the UI display; after that, the SDK will call back the playback progress through [onPlayerProgress]; under abnormal circumstances, the SDK may also throw an [onPlayerFailed] notification, please Developers may monitor and alert users when exceptions occur as appropriate.
- Caution: When the SDK starts playing, it will exclusively use the audio device, so it will interrupt the playback of other third-party apps and will not mix with the audio output of other apps.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: Playback-related APIs cannot be used at the same time as recording-related APIs. At the same time, only recording or playback can be performed inside the SDK. Therefore, before you need to enable playback, developers must first ensure that the recording function is not being used at this time, otherwise playback will fail.
stopPlay
- (void)stopPlay;Stops the audio currently being played by the SDK. Use case: When you need to stop audio playback in advance during playback, you can call this API to stop playback. If the user needs to immediately play the next piece of audio, he needs to stop the playback of the previous piece of audio; or when he is about to leave the playback page, he should also stop the current playback.
- When to call: [startPlay] During playback.
- Related APIs: When this API is called to stop playback, the SDK will throw the [onPlayerStopped] notification. Developers can update the UI display based on this callback notification.
- Caution: After stopping playback or completing playback, the SDK will release the occupation of the audio device.
- Available since: ZIM Audio SDK 1.0.0
- Restrictions: Playback-related APIs cannot be used at the same time as recording-related APIs. At the same time, only recording or playback can be performed inside the SDK. Therefore, before you need to enable playback, developers must first ensure that the recording function is not being used at this time, otherwise playback will fail.
isPlaying
- (BOOL)isPlaying;Get whether ZIM Audio SDK is playing audio. Use case: When developers need to obtain and detect the playback status at a certain moment, they can call this API to obtain the playback status.
- When to call: Called at any time after [init].
- Available since: ZIM Audio SDK 1.0.0
ZIMAudioANSParam
ANS Parameter
Details
Includes noise suppression mode.
Declared in ZIMAudioDefines.h
Properties
mode
ZIMAudioError
Details
It can be used to record the error type and error information generated by the SDK, check the error code table on the ZEGO official website, and seek assistance from ZEGO technical support.
Declared in ZIMAudioDefines.h
Properties
code
public ZIMAudioErrorCode codeError code.
message
public NSString * messageIt can be used to record the error type and error information generated by the SDK, check the error code table on the ZEGO official website, and seek assistance from ZEGO technical support.
ZIMAudioEventHandler
Methods
onError:errorInfo:
- (void)onError:(ZIMAudioError) errorInfo;Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMAudioError | Error information. |
Details
When an exception is detected internally in the SDK, a notification will be thrown through this callback.
Use case: It is used to facilitate developers to collect SDK problems and troubleshoot them. It is recommended to monitor the callback and do appropriate log printing or event reporting.
- Caution: It is not recommended that developers perform logic after listening to this callback. It is only recommended for collecting and troubleshooting problems.
- Available since: ZIM Audio SDK1.0.0
onRecorderStarted
- (void)onRecorderStarted;When the developer calls [startRecord] and the SDK has internally prepared the audio device and is about to start recording, the notification will be called back.
Use case: Used by developers to update the UI.
- Related APIs: The notification will be called back after [startRecord] is called.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
onRecorderCompleted:totalDuration:
- (void)onRecorderCompleted:(int) totalDuration;Parameters
| Name | Type | Description |
|---|---|---|
| totalDuration | int | Audio duration (in milliseconds). |
Details
When the developer calls [completeRecord] and the SDK completes the recording and saves the recording file, the notification will be called back.
Use case: Used by developers to update the UI and send subsequent voice messages.
- Related APIs: The notification will be called back after [completeRecord] is called.
- Caution: Developers must receive this callback notification before sending voice messages.
- Available since: ZIM Audio SDK 1.0.0
onRecorderCancelled
- (void)onRecorderCancelled;When the developer calls [cancelRecord] and the SDK stops recording and deletes the recording file, this notification will be called back.
Use case: Used by developers to update the UI.
- Related APIs: The notification will be called back after [cancelRecord] is called.
- Caution: None.
- Available since: 1.0.0
onRecorderProgress:currentDuration:
- (void)onRecorderProgress:(int) currentDuration;Parameters
| Name | Type | Description |
|---|---|---|
| currentDuration | int | Current recording duration in milliseconds. |
Details
Recording progress notification. When recording has started, the SDK will callback progress notifications every 500 milliseconds. Use case: Used by developers to update the UI.
- Caution: None.
- Available since: ZIM Audio SDK v1.0.0
onRecorderFailed:errorCode:
- (void)onRecorderFailed:(ZIMAudioErrorCode) errorCode;Parameters
| Name | Type | Description |
|---|---|---|
| errorCode | ZIMAudioErrorCode | Error Code. |
Details
When recording starts or an exception occurs during recording and the recording fails, this callback will be used to notify you.
Use case: Used by developers to update the UI. It is recommended that developers listen to this callback and provide necessary prompts to users.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
onPlayerStarted:totalDuration:
- (void)onPlayerStarted:(int) totalDuration;Parameters
| Name | Type | Description |
|---|---|---|
| totalDuration | int | Total playing duration in milliseconds. |
Details
When the developer calls [startPlay] and the SDK has internally prepared the audio device and is about to start playing, the notification will be called back.
Use case: Used by developers to update the UI.
- Related APIs: The notification will be called back after [startPlay] is called.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
onPlayerEnded
- (void)onPlayerEnded;When the playing is finished, the notification will be called back.
Use case: Used by developers to update the UI.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
onPlayerStopped
- (void)onPlayerStopped;When the developer calls [stopPlay], the SDK will immediately stop the currently playing audio and call back this notification.
Use case: Used by developers to update the UI.
- Related APIs: The notification will be called back after [stopPlay] is called.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
onPlayerProgress:currentDuration:
- (void)onPlayerProgress:(int) currentDuration;Parameters
| Name | Type | Description |
|---|---|---|
| currentDuration | int | Current playing duration in milliseconds. |
Details
When playback has started, the SDK will call back progress notifications every 500ms.
Use case: Used by developers to update the UI.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
onPlayerInterrupted
- (void)onPlayerInterrupted;When playback is interrupted by other actions, the SDK will call back this notification. For example, recording is started during playback, an incoming call event from the system is received during playback, the audio device is preempted by other apps during playback, etc.
Use case: Used by developers to update the UI.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
onPlayerFailed:errorCode:
- (void)onPlayerFailed:(ZIMAudioErrorCode) errorCode;Parameters
| Name | Type | Description |
|---|---|---|
| errorCode | ZIMAudioErrorCode | Error Code. |
Details
When playback starts or an exception occurs during playback and the playback fails, this callback will be used to notify you.
Use case: Used by developers to update the UI. It is recommended that developers listen to this callback and provide necessary prompts to users.
- Caution: None.
- Available since: ZIM Audio SDK 1.0.0
ZIMAudioFrameParam
Details
Audio frame attribute parameters.
Declared in ZIMAudioDefines.h
Properties
sampleRate
public Number sampleRateThe audio sample rate.
channels
public Number channelsThe number of audio channels.
ZIMAudioMessage
Audio message object.
Details
Identifies the basic parameters of a message.
- Caution: If the Type parameter of the base class is Audio during callback, you can force the base class message object to be of this type.
Declared in ZIMDefines.h
Properties
audioDuration
public unsigned long long audioDuration- Required: Required by the sender, if not filled, the audio message will fail to be sent When sending local audio messages.
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileUID
public NSString * fileUIDDetail description: The unique ID of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMAudioMessageLiteInfo
Audio message lite info object.
Details
Identifies the basic parameters of a audio message.
Declared in ZIMDefines.h
Properties
audioDuration
public unsigned long long audioDuration- Required: Required by the sender, if not filled, the audio message will fail to be sent When sending local audio messages.
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
ZIMAudioPlayConfig
Audio Playback Configuration
Details
Playing configuration. Configuration specifies the audio file path and routing type that currently need to be played.
Declared in ZIMAudioDefines.h
Properties
filePath
public NSString * filePathThe absolute path of the file needs to be played. Currently, only full absolute paths with the suffix .mp3 or .m4a are supported. When passing in file paths in other formats, the SDK will throw an illegal file path error.
routeType
ZIMAudioRecordConfig
Audio Recording Configuration
Details
Configure the recording file output path and maximum recording time during recording.
Declared in ZIMAudioDefines.h
Properties
filePath
public NSString * filePathThe output path of the recording file. Currently, only full absolute paths with the suffix .mp3 or .m4a are supported. When passing in file paths in other formats, the SDK will throw an illegal file path error.
maxDuration
public number maxDurationThe maximum recording time, the default is 60000 ms, which is 60s. The unit of this parameter is milliseconds, and the maximum value does not exceed 300000.
ZIMBarrageMessage
Barrage message class.
Details
The barrage message class does not appear in the session and does not store historical messages.
Declared in ZIMDefines.h
Properties
message
public NSString * messageThe content of barrage message.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMBlacklistQueryConfig
Query the blacklist configuration.
Details
Through this configuration, you can set the total number of queries and the pagination query.
Declared in ZIMDefines.h
Properties
count
public unsigned int countcount.
- Required: Required.
nextFlag
public unsigned int nextFlagnextFlag.
- Required: Not required, it is 0 by default for the first time, which means to start the query from the beginning.
ZIMCacheConfig
Cache configuration
Details
Configure the storage path of cache files (such as chat records).
Declared in ZIMDefines.h
Properties
cachePath
public NSString * cachePathThe storage path of the cache files. Refer to the official website document for the default path.
ZIMCallAcceptConfig
Behavior property set by accepting a call invitation.
Details
Behavior property set by accepting a call invitation.
Declared in ZIMDefines.h
Properties
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
- Required: Required.
ZIMCallCancelConfig
Behavior property that cancels the call invitation setting.
Details
Behavior property that cancels the call invitation setting.
Declared in ZIMDefines.h
Properties
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
- Required: not required.
- Default value: "".
pushConfig
ZIMCallEndConfig
End the behavior attribute of the call invitation setting.
Details
End the behavior attribute of the call invitation setting.
Declared in ZIMDefines.h
Properties
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
- Required: not required.
pushConfig
ZIMCallInfo
Call invitation information.
Details
Call invitation information.
Declared in ZIMDefines.h
Properties
callID
public NSString * callIDCall invite ID.
caller
public NSString * callerCall invitation initiator ID.
mode
state
extendedData
public NSString * extendedDataCreate a call invitation additional information.
createTime
public number createTimeCall invites to create a timestamp.
endTime
public number endTimeCall invitation end time.
callUserList
ZIMCallInvitationAcceptedInfo
Accept the call invitation message.
Details
Accept the call invitation message.
Declared in ZIMDefines.h
Properties
invitee
public NSString * inviteeInvitee ID.
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
ZIMCallInvitationCancelledInfo
Cancel the call invitation message.
Details
Cancel the call invitation message.
Declared in ZIMDefines.h
Properties
inviter
public NSString * inviterThe inviter ID of the call invitation.
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
ZIMCallInvitationCreatedInfo
Information to created the call invitation.
Details
Information to created the call invitation.
Declared in ZIMDefines.h
Properties
timeout
public int timeoutThe timeout setting of the call invitation, the unit is seconds.
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
mode
caller
public NSString * callerThe creator of the call invitation is the same as the userID that calls callInvite.
createTime
public long long createTimeThe event stamp when the call invitation was created on the server, accurate to milliseconds.
callUserList
ZIMCallInvitationEndedInfo
End the call operation information.
Details
End the call operation information.
Declared in ZIM.h
Properties
caller
public NSString * callerThe calling party of the current call.
operatedUserID
public NSString * operatedUserIDEnd the call operator.
extendedData
public NSString * extendedDataThe pass-through field that comes with invoking the end of the call.
mode
endTime
public long long endTimeTime stamp of the end of the call, in milliseconds. The format is UTC time stamp.
ZIMCallInvitationQueryConfig
Inquiry the setting attribute of the call invitation list
Details
Inquiry the setting attribute of the call invitation list
Declared in ZIMDefines.h
Properties
count
public unsigned int countThe query number is limited to up to 100.
- Required: required.
nextFlag
public long long nextFlagThe flag of the query list.No padding is required for the first query. After the query, callback will return a nextFlag, which can be filled in the next query to continue the query based on the last query.
- Required: not required.
ZIMCallInvitationReceivedInfo
Information to accept the call invitation.
Details
Information to accept the call invitation.
Declared in ZIMDefines.h
Properties
timeout
public int timeoutThe timeout setting of the call invitation, the unit is seconds.
inviter
public NSString * inviterInviter ID.
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
mode
caller
public NSString * callerThe creator of the call invitation is the same as the userID that calls callInvite.
createTime
public long long createTimeThe event stamp when the call invitation was created on the server, accurate to milliseconds.
callUserList
ZIMCallInvitationRejectedInfo
Reject the call invitation message.
Details
Reject the call invitation message.
Declared in ZIMDefines.h
Properties
invitee
public NSString * inviteeInvitee ID.
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
ZIMCallInvitationSentInfo
Call invitation sent message.
Details
Call invitation sent message.
Declared in ZIMDefines.h
Properties
timeout
public int timeoutThe timeout setting of the call invitation, the unit is seconds.
errorInvitees
public NSArray< ZIMCallUserInfo *> errorInviteesUser id that has not received a call invitation.
errorUserList
public NSArray<ZIMErrorUserInfo *> errorUserListUser id that has not received a call invitation list.
ZIMCallInvitationTimeoutInfo
Information class about timeout notifications.
Details
Information class about timeout notifications.
Declared in ZIMDefines.h
Properties
mode
ZIMCallInviteConfig
The behavior property of the Send Call Invitation setting.
Details
The behavior property of the Send Call Invitation setting.
Declared in ZIMDefines.h
Properties
timeout
public unsigned int timeoutThe timeout setting of the call invitation, the unit is seconds. The range is [1, 600].
- Required: not required.
Default: 90.
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
pushConfig
mode
public ZIMCallInvitationMode modeCall invitation mode configuration. Supported Version: 2.9.0 or later.
- Required: required. default:GENERAL
enableNotReceivedCheck
public BOOL enableNotReceivedCheckIf the pass value is true, the system checks whether the call invitation is delivered in this call and subsequent calls.
- Use cases: After the calling party sends a call invitation, if the called party does not receive the invitation within 5 seconds (3 or 4 seconds can be configured for technical support) because the user is disconnected or not online, the user status changes to notYetReceived. You can use this state flow to indicate to the user that the user may not be online. If the called party goes online before the call times out, the status changes to received received.
- Required: This is not required.
- Default value: false
- Recommended value: This property takes effect in version 2.15.0 and later, when the new version sends an invitation to a call with delivery detection turned on to the old version, which will continue to display the inviting status instead of notYetReceived.
ZIMCallJoinConfig
Add the behavior attribute of the call invitation setting.
Details
Add the behavior attribute of the call invitation setting.
Declared in ZIMDefines.h
Properties
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
ZIMCallJoinSentInfo
Result of join the call operation.
Details
Result of join the call operation.
Declared in ZIMDefines.h
Properties
createTime
public long long createTimeTimestamp of the time when the call invitation was created.
joinTime
public long long joinTimeTime stamp of the person join the call invitation.
extendedData
public NSString * extendedDataThe pass-through field that comes with invoking the end of the call.
callUserList
public NSArray<ZIMCallUserInfo> * callUserListList of user information in the current call invitation.
ZIMCallQuitConfig
Behavior property set by quit a call invitation.
Details
Behavior property set by quit a call invitation.
Declared in ZIMDefines.h
Properties
extendedData
public NSString * extendedDataExtended field, through which the inviter can carry information to the invitee.
- Required: Required.
pushConfig
ZIMCallQuitSentInfo
Result of quit the call operation.
Details
Result of quit the call operation.
Declared in ZIMDefines.h
Properties
createTime
public long long createTimeTimestamp of the time when the call invitation was created.
acceptTime
public long long acceptTimeTime stamp of the person accepting the call invitation.
quitTime
public long long quitTimeThe time stamp for me to exit the call.
ZIMCallRejectConfig
This parameter is used to set the configuration item of call invitation rejection.
Details
This command is used to customize the call invitation when sending invitation rejection.
- Use cases: You need to pass the configuration item to the interface when invoking the call rejection invitation.
Declared in ZIMDefines.h
Properties
extendedData
public NSString extendedDataAdditional fields for attaching custom content when sending a reject invitation.
- Use cases: When the user needs to refuse to send some custom content to the inviter.
- Required: Required.
- Default value: "".
ZIMCallUserInfo
Call invitation user information.
Details
Call invitation user information.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDUser ID, a string with a maximum length of 32 bytes or less. It is customized by the developer. Only support numbers, English characters and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'.
state
extendedData
public NSString * extendedDataCall the additional information in user information.
ZIMCallUserStateChangeInfo
Call member status change information.
Details
Call member status change information.
Declared in ZIM.h
Properties
callUserList
public NSArray<ZIMCallUserInfo *> * callUserListList of call members whose status changes.
ZIMCallingInvitationSentInfo
Information about callingInvite
Details
Information about callingInvite
Declared in ZIMDefines.h
Properties
errorUserList
ZIMCallingInviteConfig
Behavior property set by quit a call invitation.
Details
Behavior property set by quit a call invitation.
Declared in ZIMDefines.h
Properties
pushConfig
ZIMCombineMessage
Base class for combine message objects.
- Available since: 2.14.0 and above.
Declared in ZIMDefines.h
Properties
title
public NSString * titleThe title of combine message
summary
public NSString * summaryThe summary of combine message
combineID
public NSString * combineIDCombine ID, internal user
messageList
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMCombineMessageLiteInfo
Base class for combine message lite info objects.
Details
Detail description: Identifies a combine message.
Declared in ZIMDefines.h
Properties
title
public NSString * titleThe title of combine message
summary
public NSString * summaryThe summary of combine message
type
ZIMCommandMessage
Custom binary message object.
Details
Identifies a binary message.
- Caution: If the Type parameter of the base class is Custom during callback, you can force the base class message object to be of this type.
Declared in ZIMDefines.h
Properties
message
public NSData * messageThe content of the custom message.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
Methods
ZIMCommandMessage
ZIMConversation
Session specific content.
Details
The specific content of the session.
Declared in ZIMDefines.h
Properties
conversationID
public NSString * conversationIDconversationID.
conversationName
public NSString * conversationNameconversationName is the same as the groupName/userName value corresponding to the session.
type
unreadMessageCount
public int unreadMessageCountSession unread.
lastMessage
orderKey
public long orderKeyOrderKey is used to describe the order of messages in the session. The larger orderKey is, the newer it is.
notificationStatus
public ZIMConversationNotificationStatus notificationStatussession notification status.
conversationAvatarUrl
public NSString * conversationAvatarUrlDetail description: Conversation avatar URL. The peer to peer chat conversation avatar URL is the same as the user avatar URL, and the group chat conversation avatar URL is the same as the group avatar URL.
Use Limit: the maximum number of characters is 500 bytes. There is no limit on special characters.
isPinned
public BOOL isPinnedWhether the conversation is pinned.
mentionedInfoList
public NSArray<ZIMMessageMentionedInfo *>* mentionedInfoListWhen reminded in a message or reminded to everyone in a conversation, this array will record the reminders.
- Use cases: For example, you can display the number of reminders in the conversation list based on this array, and also display which user's reminder it is.
conversationAlias
public NSString * conversationAliasAfter the friend remarks are set through [updateFriendAlias], this parameter is changed for each chat conversation. After setting a group alias by [updateGroupAlias], the corresponding group chat conversation's parameter will be modified synchronously.
- Use cases: After update alias for friends or groups, the corresponding conversation chooses to display the alias over the conversation name when rendering the conversation page.
marks
public NSArray<NSNumber *> * marksDescribes all the existing marks for the conversation.
- Use cases: The business layer can group logic, etc., according to different conversations with different marks.
draft
public NSString * draftConversation draft, when draft set conversation will carry this parameter.
ZIMConversationBaseInfo
Conversation base content.
Details
The base content of the session.
Declared in ZIMDefines.h
Properties
conversationID
public NSString * conversationIDconversationID.
conversationType
ZIMConversationChangeInfo
Session change information.
Details
Contains information after session changes.
Declared in ZIMDefines.h
Properties
event
conversation
ZIMConversationDeleteConfig
Delete session configuration.
Details
Delete the related configuration of the session.
Declared in ZIMDefines.h
Properties
isAlsoDeleteServerConversation
public BOOL isAlsoDeleteServerConversationWhether to delete the conversation on the server
- Required: not required.
- Default value: true.
ZIMConversationFilterOption
Search filters related to the conversation.
Details
Configurable filter options when querying conversation list.
Declared in ZIMDefines.h
Properties
marks
public NSArray<NSNumber *> * marksConversation marks. Only integers in the range [1, 20] are supported. If the list contains -1, the query result will be all marked conversation; if the list contains 0, the query result will be all unmarked conversations; if multiple markers are passed, the query result will be the union of all passed markers; if the list is empty, the query result will be all conversations.
- Use cases: This filter can be used when needing to search for conversations that include specified conversation marks.
conversationTypes
public NSArray<NSNumber *> * conversationTypesConversation types. Only support one-on-one and group conversations.
- Use cases: When you need to search by conversation type, you can use this filter.
isOnlyUnreadConversation
public BOOL isOnlyUnreadConversationWhether to only query conversations with unread counts. Pass true to only query conversations with unread counts. Pass false to query without considering whether conversations have unread counts.
- Use cases: It is necessary to query conversations that have a message unread count.
ZIMConversationQueryConfig
Query the relevant configuration of the session.
Details
Configurable information when querying a session.
Declared in ZIMDefines.h
Properties
nextConversation
public ZIMConversation nextConversationSession that needs to be queried.
- Required: Not required.
count
public unsigned int countThe number of sessions to query.
- Required: Required.
ZIMConversationSearchConfig
Conversation search configuration.
Details
Conversation search configuration.
Declared in ZIMDefines.h
Properties
nextFlag
unsigned int nextFlagPagination token, fill in 0 initially, and then fill in the nextFlag returned from the callback to retrieve data for the next page.
totalConversationCount
unsigned int totalConversationCountThe number of messages that can be retrieved in one search. It is recommended to be less than 20 to reduce performance overhead.
- Required: Required.
conversationMessageCount
unsigned int conversationMessageCountThe number of local messages that can be retrieved for a single conversation in one search. It is recommended to be less than 10 to reduce performance overhead.
keywords
NSArray<NSString *> * keywordsSearch keywords, supports up to 5. Otherwise, an error will occur. For example, if you pass in "1" and "2", the search results will only display conversations that contain both "1" and "2" keywords in the messages.
messageTypes
NSArray<NSNumber *> messageTypesMessage types, can be used to specify message types. Support passing in multiple types. Please refer to ZIMMessageType for details.
subMessageTypes
NSArray<NSNumber *> subMessageTypesThe subtypes of custom messages have a value range of [0,200]. Developers can use this range to search for specific custom types.
senderUserIDs
NSArray<NSString *> senderUserIDsSend user ID, supports up to 5. For example, if you pass in "zego2023", the search results will only display conversations where messages have been sent by the user "zego2023".
startTime
long long startTimeThe starting point of the search, in milliseconds, with a default value of 0. The format is UTC timestamp.
endTime
long long endTimeThe ending point of the search, which must be greater than the startTime, in milliseconds. The default value is 0 and the format is UTC timestamp.
ZIMConversationSearchInfo
Conversations search info.
Declared in ZIMDefines.h
Properties
conversationID
public NSString * conversationIDThe conversation ID of the local message to be search.
conversationType
totalMessageCount
public unsigned int totalMessageCountTotal message count
messageList
ZIMConversationTotalUnreadMessageCountQueryConfig
Search filters related to the conversation total unread message count.
Details
Configurable filter options when querying conversation total unread message count.
Declared in ZIMDefines.h
Properties
marks
public NSArray<NSNumber *> * marksConversation marks. Only integers in the range [1, 20] are supported. If the list contains -1, the query result will be all marked conversation; if the list contains 0, the query result will be all unmarked conversations; if multiple markers are passed, the query result will be the union of all passed markers; if the list is empty, the query result will be all conversations.
- Use cases: This filter can be used when needing to search for conversations that include specified conversation marks.
conversationTypes
public NSArray<NSNumber *> * conversationTypesConversation types. Only support one-on-one and group conversations.
- Use cases: When you need to search by conversation type, you can use this filter.
ZIMConversationsAllDeletedInfo
Delete all session notification information.
Details
Delete all session notification information.
Declared in ZIMDefine.h
Properties
count
public unsigned int countNumber of sessions that were deleted.
ZIMCustomMessage
Custom message object.
Details
Identifies a custom message.
- Caution: When calling back, if the Type parameter of the base class is Custom, the base class message object can be forcibly converted to this class.
- Available since: 2.8.0 and above.
Declared in ZIMDefines.h
Properties
message
public NSString * messageThe text content of the message.
subType
public unsigned int subTypeThe subtype of the message, which is used by customers to customize the usage of different custom messages.
- Required: The sender is required, otherwise the message will fail to be sent.
searchedContent
public NSString * searchedContentSearch fields for custom messages. Since you cannot search for a custom message by directly searching the message field, you can concatenate the content you want to be searched in the custom message (such as the title of the poll, etc.) and put it in this parameter (the length is 64 bytes by default), so that follow-up search.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMCustomMessageLiteInfo
Custom message lite info object.
Details
Identifies a custom message.
Declared in ZIMDefines.h
Properties
message
public NSString * messageThe text content of the message.
subType
public unsigned int subTypeThe subtype of the message, which is used by customers to customize the usage of different custom messages.
- Required: The sender is required, otherwise the message will fail to be sent.
searchedContent
public NSString * searchedContentSearch fields for custom messages. Since you cannot search for a custom message by directly searching the message field, you can concatenate the content you want to be searched in the custom message (such as the title of the poll, etc.) and put it in this parameter (the length is 64 bytes by default), so that follow-up search.
type
ZIMDefines
Methods
ZIMBlacklistUsersAddedCallback
void(^ZIMBlacklistUsersAddedCallback)((NSArray<ZIMErrorUserInfo *> *) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorUserList | NSArray<ZIMErrorUserInfo *> * | List of userInfo that failed to add to the blacklist. |
| errorInfo | ZIMError * | Error code. |
- Use cases: The developer can check whether the queried succeeded by using [errorCode] in this callback.
Notification timing: This callback is triggered when a developer invokes the [addUsersToBlacklistWithUserIDs] interface.
Related interface: Run the addUsersToBlacklistWithUserIDs add user to blacklist
ZIMFriendAddedCallback
void(^ZIMFriendAddedCallback)((ZIMFriendInfo) friendInfo, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| friendInfo | ZIMFriendInfo | Friend information. |
| errorInfo | ZIMError * | Error code. |
Details
The return of the result of adding a friend.
- Use cases: The callback is used to determine whether a friend has been added.
Related API: [addFriendByUserID],Add friends.
ZIMFriendAliasUpdatedCallback
void(^ZIMFriendAliasUpdatedCallback)((ZIMFriendInfo) friendInfo, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| friendInfo | ZIMFriendInfo | Friend information. |
| errorInfo | ZIMError * | Error code. |
Details
Return results of updating friend alias.
- Use cases: After updating friend alias, the success or failure can be known through this callback.
Related API: [updateFriendAlias], update friend alias.
ZIMFriendApplicationAcceptedCallback
void(^ZIMFriendApplicationAcceptedCallback)((ZIMFriendInfo) friendInfo, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| friendInfo | ZIMFriendInfo | Friend information. |
| errorInfo | ZIMError * | Error code. |
Details
Accept the returned result of friend application.
- Use cases: After accepting a friend application, the success or failure can be known through this callback. Related API: [acceptFriendApplicationFromUserID], Accept friend application.
ZIMFriendApplicationListQueriedCallback
void(^ZIMFriendApplicationListQueriedCallback)((NSArray<ZIMFriendApplicationInfo *> *) applicationList, (int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| applicationList | NSArray<ZIMFriendApplicationInfo *> * | Friend application information list. |
| nextFlag | int | The index of the current query anchor point. |
| errorInfo | ZIMError * | Error code. |
Details
The result of sending a friend application.
- Use cases: After sending the friend application operation, the success can be known through the callback.
Related API: [sendFriendApplicationToUserID],send friend application
ZIMFriendApplicationRejectedCallback
void(^ZIMFriendApplicationRejectedCallback)((ZIMUserInfo) userInfo, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| userInfo | ZIMUserInfo | Applicant user information. |
| errorInfo | ZIMError * | Error code. |
Details
Reject the returned result of friend application.
- Use cases: After rejecting a friend application, the success or failure can be known through this callback. Related API: [rejectFriendApplicationFromUserID], Reject friend application.
ZIMFriendApplicationSentCallback
void(^ZIMFriendApplicationSentCallback)((ZIMFriendApplicationInfo) applicationInfo, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| applicationInfo | ZIMFriendApplicationInfo | Friend application information. |
| errorInfo | ZIMError * | Error code. |
Details
The result of sending a friend application.
- Use cases: After sending the friend application operation, the success can be known through the callback.
Related API: [sendFriendApplicationToUserID],send friend application
ZIMFriendAttributesUpdatedCallback
void(^ZIMFriendAttributesUpdatedCallback)((ZIMFriendInfo) friendInfo, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| friendInfo | ZIMFriendInfo | Friend information. |
| errorInfo | ZIMError * | Error code. |
Details
Return results of updating friend attributes.
- Use cases: After updating friend attributes, the success or failure can be known through this callback.
Related API: [updateFriendAttributes], update friend attributes.
ZIMFriendListQueriedCallback
void(^ZIMFriendListQueriedCallback)((NSArray<ZIMFriendInfo *> *) friendList, (int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| friendList | NSArray<ZIMFriendInfo *> * | The returned result of querying the friends list. |
| nextFlag | int | The index of the current query anchor point. |
| errorInfo | ZIMError * | Error code. |
Details
The returned result of querying the friends list.
- Use cases: This callback will tell you if the operation to query the list of friends was successful or not.
Related API: [queryFriendListWithConfig], Querying the friends list.
ZIMFriendsDeletedCallback
void(^ZIMFriendsDeletedCallback)((NSArray<ZIMErrorUserInfo *> *) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorUserList | NSArray<ZIMErrorUserInfo *> * | List of user IDs and reasons for failed deletion. |
| errorInfo | ZIMError * | Error code. |
Details
Return results of deleting friends.
- Use cases: After deleting a friend, the success or failure can be known through this callback.
Related API: [deleteFriendsByUserIDs], Delete friends in batches.
ZIMFriendsInfoQueriedCallback
void(^ZIMFriendsInfoQueriedCallback)((NSArray<ZIMFriendInfo *> *) friendInfos, (NSArray<ZIMErrorUserInfo *> *) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| friendInfos | NSArray<ZIMFriendInfo *> * | Friend information. |
| errorUserList | NSArray<ZIMErrorUserInfo *> * | Query the user ID and reason for failed query. |
| errorInfo | ZIMError * | Error code. |
Details
Return results of querying friend information in batches.
- Use cases: After querying friend information in batches, the success or failure can be known through this callback.
Related API: [queryFriendsInfoByUserIDs], Querying friend information in batches.
ZIMFriendsSearchedCallback
void(^ZIMFriendsSearchedCallback)((NSArray<ZIMFriendInfo *> *) friendInfos, (int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| friendInfos | NSArray<ZIMFriendInfo *> * | Friend application information list. |
| nextFlag | int | The index of the current query anchor point. |
| errorInfo | ZIMError * | Error code. |
Details
Search results returned by local friends.
- Use cases: This callback will tell you if the operation to query the list of friend application was successful or not.
Related API: [searchLocalFriendsWithConfig], Search results returned by local friends.
ZIMBlacklistUsersRemovedCallback
void(^ZIMBlacklistUsersRemovedCallback)((NSArray<ZIMErrorUserInfo *> *) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorUserList | NSArray<ZIMErrorUserInfo *> * | List of userInfo that failed to add. |
| errorInfo | ZIMError * | Error code. |
- Use cases: The developer can check whether the queried succeeded by using [errorCode] in this callback.
Notification timing: This callback is triggered when a developer invokes the [removeUsersFromBlacklistWithUserIDs] interface.
Related interface: Remove users from the blacklist through [removeUsersFromBlacklistWithUserIDs].
ZIMBlacklistQueriedCallback
void(^ZIMBlacklistQueriedCallback)((NSArray<ZIMUserInfo *> *) blacklist, (unsigned int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| blacklist | NSArray<ZIMUserInfo *> * | Blacklist data stored locally by the SDK. |
| nextFlag | unsigned int | Description: nextFlag. A value of 0 indicates that the blacklist query is completed. When the value is not 0, it means that the blacklist query is not yet completed. To continue the query, call the query interface again and pass in this nextFlag. |
| errorInfo | ZIMError * | Error code. |
- Use cases: The developer can check whether the queried succeeded by using [errorCode] in this callback.
Notification timing: This callback is triggered when a developer invokes the [queryBlacklistWithConfig] interface.
Related interface: Run the queryBlacklistWithConfig query blacklist
ZIMFriendsRelationCheckedCallback
void(^ZIMFriendsRelationCheckedCallback)((NSArray<ZIMErrorUserInfo *> *) errorUserList, (NSArray<ZIMFriendRelationInfo *> *) relationInfos, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorUserList | NSArray<ZIMErrorUserInfo *> * | Check the list of user IDs and reasons for friend relationship failure. |
| relationInfos | NSArray<ZIMFriendRelationInfo *> * | Friend relationship information list. |
| errorInfo | ZIMError * | Error code. |
Details
The result of sending a friend application.
- Use cases: After checking the friend relationship, the success or failure can be known through this callback.
Related API: [checkFriendsRelationByUserIDs], check the friend relationship.
ZIMBlacklistCheckedCallback
void(^ZIMBlacklistCheckedCallback)((BOOL) isUserInBlacklist, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| isUserInBlacklist | BOOL | Whether the user is on the blacklist. |
| errorInfo | ZIMError * | Error code. |
- Use cases: Developers can determine whether the check was successful through the [errorCode] in this callback.
Notification timing: This callback is triggered when a developer invokes the [checkUserIsInBlackListByUserID] interface.
Related interface: Check whether the user is on the blacklist through [checkUserIsInBlackListByUserID].
ZIMSubscribedUserStatusListQueriedCallback
void(^ZIMSubscribedUserStatusListQueriedCallback)((NSArray< ZIMUserStatusSubscription *> *) userStatusSubscriptionList);Parameters
| Name | Type | Description |
|---|---|---|
| userStatusSubscriptionList | NSArray< ZIMUserStatusSubscription *> * | Subscription information for users in the subscription list. |
Details
QuerySubscribedUserStatusList query for the current user subscription list operation results callback.
ZIMUserCustomStatusUpdatedCallback
void(^ZIMUserCustomStatusUpdatedCallback)((ZIMError) errorInfo, (NSString *) customStatus);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError | The error message of the custom status update. |
| customStatus | NSString * | custom status. |
Details
The callback of the custom status update.
ZIMUsersStatusQueriedCallback
void(^ZIMUsersStatusQueriedCallback)((NSArray<ZIMUserStatus *>*) userStatusList, (NSArray< ZIMErrorUserInfo *>*) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| userStatusList | NSArray<ZIMUserStatus > | Indicates the online status of the user to be queried. |
| errorUserList | NSArray< ZIMErrorUserInfo > | Query the list of failed users. |
| errorInfo | ZIMError * | The query result contains error codes and error information. |
Details
Result callback of the queryUsersStatus interface for batch querying user online status.
ZIMUsersStatusSubscribedCallback
void(^ZIMUsersStatusSubscribedCallback)((NSArray<ZIMErrorUserInfo *> *_Nonnull) errorUserList, (ZIMError *_Nonnull) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorUserList | NSArray<ZIMErrorUserInfo *> *_Nonnull | List of users who failed to subscribe. |
| errorInfo | ZIMError *_Nonnull | Operation result, including error codes and error information. |
Details
subscribeUsersStatus Callback for the operation results of the batch subscription interface.
ZIMUsersStatusUnsubscribedCallback
void(^ZIMUsersStatusUnsubscribedCallback)((NSArray<ZIMErrorUserInfo *> *_Nonnull) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorUserList | NSArray<ZIMErrorUserInfo *> *_Nonnull | Cancels the list of failed users. |
| errorInfo | ZIMError * | The result of the batch cancellation operation contains error messages and error codes. |
Details
unsubscribeUsersStatus Callback for canceling the operations of subscribing interfaces in a batch.
ZIMTokenRenewedCallback
void(^ZIMTokenRenewedCallback)((NSString *) token, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| token | NSString * | The renewed token. |
| errorInfo | ZIMError | Error code. |
Details
After the developer updates the Token, execute the callback of the result.
- Use cases: The developer can use [errorCode] in this callback to determine whether the Token was successfully updated.
- When to call: This callback is triggered when a developer invokes the [renewToken] interface.
- Caution: Renew tokens through [renewToken]. Success or failure to renew tokens will be notified through this callback.
- Available since: 1.1.0 or above.
ZIMUsersInfoQueriedCallback
void(^ZIMUsersInfoQueriedCallback)((NSArray<ZIMUserFullInfo *> *) userList, (NSArray<ZIMErrorUserInfo*> *) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| userList | NSArray<ZIMUserFullInfo *> * | List of the userInfo queried. |
| errorUserList | NSArray<ZIMErrorUserInfo*> * | Failed to query the userInfo list. |
| errorInfo | ZIMError * | Error code. |
- Use cases: The developer can check whether the queried succeeded by using [errorCode] in this callback.
Notification timing: This callback is triggered when a developer invokes the [queryUsersInfo] interface.
Related interface: Run the queryUsersInfo command to query information.
ZIMUserNameUpdatedCallback
void(^ZIMUserNameUpdatedCallback)((NSString *) userName, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| userName | NSString * | Updated of the user name. |
| errorInfo | ZIMError | Error code. |
- Use cases: The developer can check whether the operation succeeded by using [errorCode] in this callback.
Notification timing: This callback is triggered when a developer invokes the [updateUserName] interface.
Related interface: [updateUserName].
ZIMUserAvatarUrlUpdatedCallback
void(^ZIMUserAvatarUrlUpdatedCallback)((NSString *) userAvatarUrl, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| userAvatarUrl | NSString * | The updated user avatar URL. |
| errorInfo | ZIMError | Error code. |
Details
Supported versions: 2.3.0 and above.
Detail description: The callback after the developer updates the user avatar URL.
Business scenario: The developer can judge whether the operation is successful through the [errorCode] in the callback.
Notification timing: This callback is triggered when the developer calls the [updateUserAvatarUrl] interface.
Related interface: [updateUserAvatarUrl] .
ZIMUserExtendedDataUpdatedCallback
void(^ZIMUserExtendedDataUpdatedCallback)((NSString *) extendedData, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| extendedData | NSString * | Updated of the user extended data. |
| errorInfo | ZIMError | Error code. |
- Use cases: The developer can check whether the operation succeeded by using [errorCode] in this callback.
Notification timing: This callback is triggered when a developer invokes the [updateUserExtendedData] interface.
Related interface: Run the updateUserExtendedData command to query information.
ZIMLoggedInCallback
void(^ZIMLoggedInCallback)((ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError |
- Use cases: Developers can use the [errorCode] in the callback to determine whether the login is successful.
Notification timing: When the developer calls the [login] interface, the callback will be triggered.
ZIMLogUploadedCallback
void(^ZIMLogUploadedCallback)((ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError |
- Use cases: Developers can use the [errorCode] in the callback to determine whether the upload is successful.
Notification timing: When the developer calls the [uploadLog] interface, the callback will be triggered.
Related interface: call log upload via [uploadLog], success or failure will be notified through this callback.
ZIMSelfUserInfoQueriedCallback
void(^ZIMSelfUserInfoQueriedCallback)((ZIMSelfUserInfo) selfUserInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| selfUserInfo | ZIMSelfUserInfo | Own user information, rule data class. |
| errorInfo | ZIMError | Contains error codes and error messages. |
Details
Callback result of querying personal user information and rules.
ZIMUserOfflinePushRuleUpdatedCallback
void(^ZIMUserOfflinePushRuleUpdatedCallback)((ZIMUserOfflinePushRule) offlinePushRule, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| offlinePushRule | ZIMUserOfflinePushRule | Updated offline push rules. |
| errorInfo | ZIMError | Contains error codes and details. |
Details
Update the result callback of the user offline push rule.
ZIMCallInvitationListQueriedCallback
void(^ZIMCallInvitationListQueriedCallback)((NSArray<ZIMCallInfo *> *) callList, (long long ) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callList | NSArray<ZIMCallInfo *> * | Query the list of returned call information |
| nextFlag | long long | An anchor returned by a paging query that is passed in the next query to continue the query based on the last query. |
| errorInfo | ZIMError * | Error information returned from the query. |
Details
Result Callback of querying the call list.
ZIMCallingInvitationSentCallback
void(^ZIMCallingInvitationSentCallback)((NSString *) callID, (ZIMCallingInvitationSentInfo *) info, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callID | NSString * | callID of the current call invitation. |
| info | ZIMCallingInvitationSentInfo * | Information about callingInvite. |
| errorInfo | ZIMError * | Error information. For details, see the Common error code documentation. |
Details
Callback result of inviting the current call.
ZIMCallQuitSentCallback
void(^ZIMCallQuitSentCallback)((NSString *) callID, (ZIMCallQuitSentInfo *) info, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callID | NSString * | Quit callID. |
| info | ZIMCallQuitSentInfo * | Information about quit. |
| errorInfo | ZIMError * | Error information, |
Details
Quit the callback closure of the call invitation operation.
ZIMCallEndSentCallback
void(^ZIMCallEndSentCallback)((NSString *) callID, (ZIMCallInvitationEndedInfo *) info, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callID | NSString * | callID. |
| info | ZIMCallInvitationEndedInfo * | End call invitation return information. |
| errorInfo | ZIMError * | End call invitation return error information. |
Details
Result callback of ending the call invitation.
ZIMCallJoinSentCallback
void(^ZIMCallJoinSentCallback)((NSString *) callID, (ZIMCallJoinSentInfo *) info, (ZIMError *) errorInfo);| Name | Type | Description |
|---|---|---|
| callID | NSString * | callID. |
| info | ZIMCallJoinSentInfo * | Join call invitation return information. |
| errorInfo | ZIMError * | Join call invitation return error information. |
ZIMCallInvitationSentCallback
void(^ZIMCallInvitationSentCallback)((NSString *) callID, (ZIMCallInvitationSentInfo *) info, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callID | NSString * | The created call invitation ID. |
| info | ZIMCallInvitationSentInfo * | Send a call invitation message. |
| errorInfo | ZIMError * | Error code for sending call invitation. 0 means sending the call invitation successfully, non-0 means sending the call invitation failed. If there is a failure to send a call invitation, the developer should check the official website error code documentation for solutions. |
- Related APIs: [callInvite], send a call invitation.
ZIMCallCancelSentCallback
void(^ZIMCallCancelSentCallback)((NSString *) callID, (NSArray<NSString *>) errorInvitees, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callID | NSString * | Call ID |
| errorInvitees | NSArray<NSString *> | The user who failed to cancel the call invitation. |
| errorInfo | ZIMError | Error code to cancel the call invitation. 0 means canceling the call invitation successfully, non-0 means canceling the call invitation failed. If there is a failure to cancel the call invitation, the developer should check the official website error code document to query the solution. |
- Related APIs: [callCancel], cancel the call invitation.
ZIMCallAcceptanceSentCallback
void(^ZIMCallAcceptanceSentCallback)((NSString *) callID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callID | NSString * | Call ID |
| errorInfo | ZIMError | Error code to accept call invitation. 0 means accepting the call invitation successfully, non-0 means accepting the call invitation failed. If there is a failure to accept the call invitation, the developer should check the official website error code documentation for solutions. |
- Related APIs: [callAccept], accept the call invitation.
ZIMCallRejectionSentCallback
void(^ZIMCallRejectionSentCallback)((NSString *) callID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| callID | NSString * | Call ID |
| errorInfo | ZIMError | Error code to reject call invitation. 0 means rejecting the call invitation successfully, non-0 means failing to reject the call invitation. If there is a failure to reject the call invitation, the developer should check the official website error code documentation for solutions. |
- Related APIs: [callReject], rejects the call invitation.
ZIMGroupCreatedCallback
void(^ZIMGroupCreatedCallback)((ZIMGroupFullInfo *) groupInfo, (NSArray<ZIMGroupMemberInfo *>) userList, (NSArray<ZIMErrorUserInfo *>) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupInfo | ZIMGroupFullInfo * | groupInfo. |
| userList | NSArray<ZIMGroupMemberInfo *> | user list. |
| errorUserList | NSArray<ZIMErrorUserInfo *> | errorUserList. |
| errorInfo | ZIMError * | Error code for group creation. 0 means the group creation is successful, non-0 means the group creation fails. If there is a failure to create a group, the developer should check the official website error code document to query the solution. |
Details
Returns the result of the group creation operation.
- Use cases: After a group creation operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The result is returned after the group creation operation is complete.
Related API: [createGroup] : creates a group.
ZIMGroupsSearchedCallback
void(^ZIMGroupsSearchedCallback)((NSArray<ZIMGroupSearchInfo *>) groupSearchInfoList, (unsigned int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupSearchInfoList | NSArray<ZIMGroupSearchInfo *> | groupInfo. |
| nextFlag | unsigned int | Pagination retrieval flag, anchor for searching the next page. |
| errorInfo | ZIMError * | Error codes for group search. 0 represents a successful group search, and non-zero indicates a failed group search. If a group search fails, developers should refer to the official website's error code documentation for solutions. |
Details
Returns the result of a group search operation.
- Use cases: After performing a group search operation, whether it is successful or not can be known through this callback.
Related API: [searchLocalGroupsWithConfig], search for groups.
ZIMGroupMembersSearchedCallback
void(^ZIMGroupMembersSearchedCallback)((NSString *) groupID, ( NSArray<ZIMGroupMemberInfo *> ) userList, (unsigned int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| userList | NSArray<ZIMGroupMemberInfo *> | The search result list of group members. |
| nextFlag | unsigned int | Pagination retrieval flag, anchor for searching the next page. |
| errorInfo | ZIMError * | Error codes for searching group members. 0 represents a successful search for group members, and non-zero indicates a failed search for group members. If a search for group members fails, developers should refer to the official website's error code documentation for solutions. |
Details
Returns the result of a group member search operation.
- Use cases: After performing a group member search operation, whether it is successful or not can be known through this callback.
Related API: [searchLocalGroupMembersByGroupID], search for groups.
ZIMGroupJoinedCallback
void(^ZIMGroupJoinedCallback)((ZIMGroupFullInfo) groupInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupInfo | ZIMGroupFullInfo | groupInfo. |
| errorInfo | ZIMError | Error code to join the group. 0 means joining the group successfully, non-0 means joining the group failed. If there is a failure to join the group, the developer should check the official website error code document to query the solution. |
Details
Returns the result of the group join operation.
- Use cases: After a group join operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The result of the group join operation is returned.
Related API:[joinGroup] : joins a group. [leaveGroup], leave the group.
ZIMGroupLeftCallback
void(^ZIMGroupLeftCallback)((NSString *) groupID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| errorInfo | ZIMError | Error code for leaving the group. 0 means leaving the group successfully, non-0 means leaving the group failed. If there is a failure to leave the group, the developer should check the official website error code document to query the solution. |
Details
Returns the result of the group departure operation.
- Use cases: After a group exit operation is performed, the success or failure can be determined by the callback.
- When to call /Trigger: The result of the group departure operation is returned.
Related API:[leaveGroup], leave the group. [joinGroup], enter the group.
ZIMGroupDismissedCallback
void(^ZIMGroupDismissedCallback)((NSString *) groupID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| errorInfo | ZIMError | The error code for disbanding the group. 0 means that the group is successfully disbanded, and non-0 means that the group failed to be disbanded. If there is a failure to dissolve the group, the developer should check the official website error code document to find the solution. |
Details
Returns the result of the group dismiss operation.
- Use cases: After a group disband operation is performed, the success of the operation can be determined by the callback.
- When to call /Trigger: The result of the group disband operation is returned.
Related API: [createGroup],creates a group. [dismissGroup],dismissGroup.
ZIMGroupUsersInvitedCallback
void(^ZIMGroupUsersInvitedCallback)((NSString *) groupID, (NSArray<ZIMGroupMemberInfo *>) userList, (NSArray<ZIMErrorUserInfo *>) errorUserList, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| userList | NSArray<ZIMGroupMemberInfo *> | user list. |
| errorUserList | NSArray<ZIMErrorUserInfo *> | List of users who failed to invite. |
| errorInfo | ZIMError | Error code for inviting users to join the group. 0 means to invite the user to join the group, non-0 means that the invitation to join the group fails. If there is a failure to invite users to join the group, the developer should check the official website error code document to query the solution. |
Details
Returns the result of inviting the user to join the group.
- Use cases: After a user is invited to a group, the success or failure can be determined by the callback.
- When to call /Trigger: Results are returned after the user is invited to the group.
Related API:[inviteUsersIntoGroup] invites users to join the group.
ZIMGroupMemberKickedCallback
void(^ZIMGroupMemberKickedCallback)((NSArray<NSString *>) kickedUserIDList, (NSArray<ZIMErrorUserInfo *>) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| kickedUserIDList | NSArray<NSString *> | List of kicked members. |
| errorUserList | NSArray<ZIMErrorUserInfo *> | Bad user list. |
| errorInfo | ZIMError * | Error code for kicking out a group member. 0 means that the group member was successfully kicked out, and non-0 means that the group member failed to be kicked out. If a group member is kicked out, the developer should check the official website error code document to query the solution. |
Details
Returns the result of the kick out group member operation.
- Use cases: After a group member is kicked out, the success or failure can be determined by the callback.
- When to call /Trigger: The result is returned after the group member is kicked out.
Related API:[kickGroupMembers] Kick out group members.
ZIMGroupOwnerTransferredCallback
void(^ZIMGroupOwnerTransferredCallback)((NSString *) groupID, (NSString *) toUserID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | groupID. |
| toUserID | NSString * | userID. |
| errorInfo | ZIMError | The error code of the transfer group owner. 0 means the transfer of the group owner is successful, non-0 means the transfer of the group owner failed. If the transfer of the group owner fails, the developer should check the official website error code document to query the solution. |
Details
Returns the result of the group master transfer operation.
- Use cases: After a group master transfer operation is performed, the success of the operation can be determined by this callback.
- When to call /Trigger: The result of the group master transfer operation is returned.
Related API:[transferGroupOwner], group master transfer.
ZIMGroupAliasUpdatedCallback
void(^ZIMGroupAliasUpdatedCallback)((NSString *) groupID, (NSString *) groupAlias, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | ID of the group. |
| groupAlias | NSString * | Alias of the group. |
| errorInfo | ZIMError | Update the error code of the group alias. 0 means the update succeeds, non-0 means the update fails. If there is a failure to update, please check the official error code document for the solution. |
Details
Return result of group alias update operation.
- Use cases: After a group alias update operation is performed, the success or failure can be determined by this callback.
When to
- Trigger: The result of the group alias update operation is returned.
- Related APIs: [updateGroupAlias], the group alias is updated.
ZIMGroupNameUpdatedCallback
void(^ZIMGroupNameUpdatedCallback)((NSString *) groupID, (NSString *) groupName, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | groupID. |
| groupName | NSString * | groupName. |
| errorInfo | ZIMError | Update the error code of the group name. 0 means the update of the group name succeeds, non-0 means the update of the group name fails. If there is a failure to update the group name, the developer should check the official website error code document to query the solution. |
Details
Return result of group name update operation.
- Use cases: After a group name update operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The result of the group name update operation is returned.
- Related APIs: [updateGroupName], the group name is updated.
ZIMGroupMutedCallback
void(^ZIMGroupMutedCallback)((NSString *) groupID, (BOOL) isMute, (ZIMGroupMuteInfo) mutedInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | groupID. |
| isMute | BOOL | Group mute or lift group mute. |
| mutedInfo | ZIMGroupMuteInfo | Group mute info. |
| errorInfo | ZIMError | Update the error code of the group mute info. 0 means the update of the group mute info succeeds, non-0 means the update of the group mute info fails. If there is a failure to update the group mute info, the developer should check the official website error code document to query the solution. |
Details
Return result of group mute info update operation.
- Use cases: After a group mute info update operation is performed, the success or failure can be determined by this callback.
When to
- Trigger: The result of the group mute info update operation is returned.
- Related APIs: [muteGroup], the group mute info is updated.
ZIMGroupMembersMutedCallback
void(^ZIMGroupMembersMutedCallback)((NSString *) groupID, (BOOL) isMute, (int) duration, (NSArray<NSString *> *) mutedUserIDs, (NSArray<ZIMErrorUserInfo *> *) errorUserList, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | groupID. |
| isMute | BOOL | Group members mute or lift group members mute. |
| duration | int | Duration of group member mute, in seconds. |
| mutedUserIDs | NSArray<NSString *> * | List of group member IDs successfully modified to mute status. |
| errorUserList | NSArray<ZIMErrorUserInfo *> * | List of group members failed to modify to mute status. |
| errorInfo | ZIMError | Update the error code of the group members mute info. 0 means the update of the group members mute info succeeds, non-0 means the update of the group members mute info fails. If there is a failure to update the group members mute info, the developer should check the official website error code document to query the solution. |
Details
Return result of group members mute info update operation.
- Use cases: After a group members mute info update operation is performed, the success or failure can be determined by this callback.
When to
- Trigger: The result of the group members mute info update operation is returned.
- Related APIs: [muteGroupMembers], the group members mute info is updated.
ZIMGroupAvatarUrlUpdatedCallback
void(^ZIMGroupAvatarUrlUpdatedCallback)((NSString *) groupID, (NSString *) groupAvatarUrl, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| groupAvatarUrl | NSString * | Group avatar URL. |
| errorInfo | ZIMError | Update the error code of the group avatar url. 0 means the update succeeds, non-0 means the update of the group name fails. If there is a failure, the developer should check the official website error code document to query the solution. |
- When to call /Trigger: The result will be returned after the group avatar URL update operation is complete.
- Related APIs: [updateGroupAvatarUrl].
ZIMGroupNoticeUpdatedCallback
void(^ZIMGroupNoticeUpdatedCallback)((const :string &) groupNotice, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupNotice | const std::string & | Group announcement. |
| errorInfo | ZIMError | Update the error code of the group announcement. 0 means the update group announcement is successful, non-0 means the update group announcement fails. If the update group announcement fails, the developer should check the official website error code document to query the solution. |
Details
Group announcement returns the result of the update operation.
- Use cases: After a group bulletin update operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The group bulletin is returned after the update operation is complete.
- Related APIs: [updateGroupNotice], the group notice is updated.
ZIMGroupJoinModeUpdatedCallback
void(^ZIMGroupJoinModeUpdatedCallback)((NSString *) groupID, (ZIMGroupJoinMode) mode, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| mode | ZIMGroupJoinMode | Group verification mode. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Group verification mode returns the result of the update operation.
- Use cases: After a group verification mode update operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The group verification mode is returned after the update operation is complete.
- Related APIs: [updateGroupJoinMode], the group verification mode is updated.
ZIMGroupInviteModeUpdatedCallback
void(^ZIMGroupInviteModeUpdatedCallback)((NSString *) groupID, (ZIMGroupInviteMode) mode, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| mode | ZIMGroupInviteMode | Group verification mode. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Group verification mode returns the result of the update operation.
- Use cases: After a group verification mode update operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The group verification mode is returned after the update operation is complete.
- Related APIs: [updateGroupInviteMode], the group verification mode is updated.
ZIMGroupBeInviteModeUpdatedCallback
void(^ZIMGroupBeInviteModeUpdatedCallback)((NSString *) groupID, (ZIMGroupBeInviteMode) mode, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| mode | ZIMGroupBeInviteMode | Group verification mode. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Group verification mode returns the result of the update operation.
- Use cases: After a group verification mode update operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The group verification mode is returned after the update operation is complete.
- Related APIs: [updateGroupBeInviteMode], the group verification mode is updated.
ZIMGroupJoinApplicationSentCallback
void(^ZIMGroupJoinApplicationSentCallback)((NSString *) groupID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Return the operation result of sent the group join application.
- Use cases: After sent the application to join the group, the success or failure can be determined by this callback.
- Related APIs: [sendGroupJoinApplication], the group join application sent.
ZIMGroupJoinApplicationAcceptedCallback
void(^ZIMGroupJoinApplicationAcceptedCallback)((NSString *) groupID, (NSString *) userID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| userID | NSString * | Applicant user ID. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Return the operation result of accept the group join application.
- Use cases: After accept the application to join the group, the success or failure can be determined by this callback.
- Related APIs: [acceptGroupJoinApplication], the group join application accept.
ZIMGroupJoinApplicationRejectedCallback
void(^ZIMGroupJoinApplicationRejectedCallback)((NSString *) groupID, (NSString *) userID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| userID | NSString * | Applicant user ID. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Return the operation result of reject the group join application.
- Use cases: After reject the application to join the group, the success or failure can be determined by this callback.
- Related APIs: [rejectGroupJoinApplication], the group join application reject.
ZIMGroupInviteApplicationsSentCallback
void(^ZIMGroupInviteApplicationsSentCallback)((NSString *) groupID, (NSArray<ZIMErrorUserInfo> *) errorUserList, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| errorUserList | NSArray<ZIMErrorUserInfo> * | List of users whose invitation failed. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Return the operation result of sent the group invite application.
- Use cases: After sent the invite application to the group, the success or failure can be determined by this callback.
- Related APIs: [sendGroupInviteApplications], the group invite application sent.
ZIMGroupInviteApplicationAcceptedCallback
void(^ZIMGroupInviteApplicationAcceptedCallback)((NSString *) groupID, (NSString *) inviterUserID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| inviterUserID | NSString * | Inviter user ID. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Return the operation result of accept the group invite application.
- Use cases: After accept the invite application to the group, the success or failure can be determined by this callback.
- Related APIs: [acceptGroupInviteApplication], the group invite application accept.
ZIMGroupApplicationListQueriedCallback
void(^ZIMGroupApplicationListQueriedCallback)((NSArray<ZIMGroupApplicationInfo> *) applicationList, (unsigned int) nextFlag, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| applicationList | NSArray<ZIMGroupApplicationInfo> * | Group application list. |
| nextFlag | unsigned int | The next flag. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Return of group application list query results..
- Use cases: After querying the group application list, the success or failure can be determined by this callback.
- Related APIs: [queryGroupApplicationList], query group application list.
ZIMGroupInviteApplicationRejectedCallback
void(^ZIMGroupInviteApplicationRejectedCallback)((NSString *) groupID, (NSString *) inviterUserID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| inviterUserID | NSString * | Inviter user ID. |
| errorInfo | ZIMError | Error code for update operation. 0 means the update is successful, non-0 means the update fails. |
Details
Return the operation result of reject the group invite application.
- Use cases: After reject the invite application to the group, the success or failure can be determined by this callback.
- Related APIs: [rejectGroupInviteApplication], the group invite application reject.
ZIMGroupInfoQueriedCallback
void(^ZIMGroupInfoQueriedCallback)((ZIMGroupFullInfo) groupInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupInfo | ZIMGroupFullInfo | groupInfo. |
| errorInfo | ZIMError | Error code for querying group information. 0 means the query group information is successful, non-0 means the query group information fails. If there is a failure to query group information, the developer should check the official website for the error code document query solution. |
Details
Returns the result of the group dismiss operation.
- Use cases: After a group disband operation is performed, the success of the operation can be determined by the callback.
- When to call /Trigger: The result of the group disband operation is returned.
- Related APIs: [createGroup],creates a group. [dismissGroup],dismissGroup.
ZIMGroupListQueriedCallback
void(^ZIMGroupListQueriedCallback)((NSArray<ZIMGroupInfo *>) groupList, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupList | NSArray<ZIMGroupInfo *> | groupList. |
| errorInfo | ZIMError | Query the error code of the group list. 0 means the query group list succeeds, non-0 means the query group list fails. If there is a failure to query the group list, the developer should check the official website for the error code document query solution. |
Details
Returns the group list query result.
- Use cases: The success of a group list query can be determined by this callback.
- When to call /Trigger: The result of the group list query is returned.
- Related APIs: [queryGroupList] to query the group list.
ZIMGroupAttributesOperatedCallback
void(^ZIMGroupAttributesOperatedCallback)((NSString *) groupID, (NSArray<String *>) errorKeys, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | groupID. |
| errorKeys | NSArray<String *> | errorKeys. |
| errorInfo | ZIMError | Set the error code of the group attribute. 0 means the group attribute setting is successful, non-0 means the group attribute setting fails. If there is a failure to set the group properties, the developer should check the official website error code documentation for solutions. |
Details
Returns the result of the group property operation.
- Use cases: This callback tells you whether a custom property operation is successful.
- When to call /Trigger: The result of the group property operation is returned.
- Related APIs: [setGroupAttributes], set the room properties. [deleteGroupAttributes], delete the room attribute.
ZIMGroupAttributesQueriedCallback
void(^ZIMGroupAttributesQueriedCallback)((NSString *) groupID, (NSDictionary<NSString*,NSString*>) groupAttributes, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| groupAttributes | NSDictionary<NSString*,NSString*> | groupAttributes. |
| errorInfo | ZIMError * | Error code for querying group attributes. 0 means the query group attribute succeeds, non-0 means the query group attribute fails. If there is a failure to query group properties, the developer should check the official website for the error code document query solution. |
Details
Returns the result of group attribute query.
- Use cases: This callback is used to determine the success of a custom property query.
- When to call /Trigger: Group attribute query results are returned.
- Related APIs: [queryGroupAttributes], query room attributes.
ZIMGroupMemberRoleUpdatedCallback
void(^ZIMGroupMemberRoleUpdatedCallback)((NSString *) groupID, (const :string) forUserID, (int) role, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| forUserID | const std::string | userID. |
| role | int | role. |
| errorInfo | ZIMError | Error code for group member role update. 0 means the group member role update is successful, non-0 means the group member role update fails. If the group member role update fails, the developer should check the official website error code document to query the solution. |
Details
Return of the result of the member role update operation.
- Use cases: After a member role update operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The result of the member role update operation is returned.
- Related APIs: [setGroupMemberRole], the member role is updated.
ZIMGroupMemberNicknameUpdatedCallback
void(^ZIMGroupMemberNicknameUpdatedCallback)((NSString *) groupID, (NSString *) forUserID, (NSString *) nickname, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| forUserID | NSString * | userID. |
| nickname | NSString * | userNickname. |
| errorInfo | ZIMError * | Set the error code of the group member's nickname. 0 means setting the group member's nickname successfully, non-0 means setting the group member's nickname failed. If there is a failure to set the group member's nickname, the developer should check the official website error code document to query the solution. |
Details
Return result of group member nickname update operation.
- Use cases: After a group member nickname update operation is performed, the success or failure can be determined by this callback.
- When to call /Trigger: The result of the group member nickname update operation is returned.
- Related APIs: [setGroupMemberNickname], the nickname of the group member is updated.
ZIMGroupMemberInfoQueriedCallback
void(^ZIMGroupMemberInfoQueriedCallback)((NSString *) groupID, (ZIMGroupMemberInfo) userInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| userInfo | ZIMGroupMemberInfo | Group member information. |
| errorInfo | ZIMError | Query the error code of group members. 0 means querying group members successfully, non-0 means querying group members failed. If there is a failure to query group members, the developer should check the official website for the error code document query solution. |
Details
Return of group member query results.
- Use cases: After a group member query is performed, the success or failure can be determined by this callback.
- When to call /Trigger: Group member query results are returned.
- Related APIs: [queryGroupMemberInfo], queryGroupMemberInfo.
ZIMGroupMemberListQueriedCallback
void(^ZIMGroupMemberListQueriedCallback)((NSArray<ZIMGroupMemberInfo *>) userList, (int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| userList | NSArray<ZIMGroupMemberInfo *> | user list. |
| nextFlag | int | nextFlag. |
| errorInfo | ZIMError * | Error code for querying the group member list. 0 means that the query of the group member list succeeds, and non-0 means that the query of the group member list fails. If there is a failure to query the group member list, the developer should check the official website for the error code document query solution. |
Details
Returns the result of querying the group member list.
- Use cases: After querying the group member list, you can use the callback to determine whether the query is successful.
- When to call /Trigger: The result is displayed after the group member list is queried.
- Related APIs: [queryGroupMemberList], query the group member list.
ZIMGroupMemberMutedListQueriedCallback
void(^ZIMGroupMemberMutedListQueriedCallback)((NSString *) groupID, (unsigned long long) nextFlag, (NSArray<ZIMGroupMemberInfo *>) userList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID for modifying the mute status of group members. |
| nextFlag | unsigned long long | nextFlag. |
| userList | NSArray<ZIMGroupMemberInfo *> | user list. |
| errorInfo | ZIMError * | Error code for querying the group muted member list. 0 means that the query of the group muted member list succeeds, and non-0 means that the query of the group muted member list fails. If there is a failure to query the group muted member list, the developer should check the official website for the error code document query solution. |
Details
Returns the result of querying the group muted member list.
- Use cases: After querying the group muted member list, you can use the callback to determine whether the query is successful.
When to trigger: The result is displayed after the group muted member list is queried.
- Related APIs: [queryGroupMemberMutedListByGroupID], query the group muted member list.
ZIMGroupMemberCountQueriedCallback
void(^ZIMGroupMemberCountQueriedCallback)((NSString *) groupID, (int) count, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | user count. |
| count | int | nextFlag. |
| errorInfo | ZIMError | Error code for querying the group member count. 0 means that the query of the group member count succeeds, and non-0 means that the query of the group member count fails. If there is a failure to query the group member count, the developer should check the official website for the error code document query solution. |
Details
Returns the result of querying the group member count.
- Use cases: After querying the group member count, you can use the callback to determine whether the query is successful.
- When to call /Trigger: The result is displayed after the group member count is queried.
Related API:[queryGroupMemberCount], query the group member count.
ZIMConversationPinnedListQueriedCallback
void(^ZIMConversationPinnedListQueriedCallback)((NSArray<ZIMConversation *> *) conversationList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationList | NSArray<ZIMConversation *> * | Conversation pinned list. |
| errorInfo | ZIMError * | Error info for querying the conversation pinned list. 0 means querying the session list succeeds, non-0 means querying the session list fails. If there is a failure to query the call list, the developer should check the official website error code document to query the solution. |
Details
After the conversation pinned list is queried, the callback is used to return the query result.
- Use cases: The logic after the pinned conversation list query can be done in this callback.
- When to call /Trigger: Triggered when the conversation pinned list is queried.
- Available since: 2.8.0 and above.
ZIMConversationPinnedStateUpdatedCallback
void(^ZIMConversationPinnedStateUpdatedCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | Conversation ID. |
| conversationType | ZIMConversationType | Conversation type. |
| errorInfo | ZIMError * | Error code for updating session pin status. 0 means updating the top status of the session was successful, and non-zero means updating the top status of the session failed. If there is a failure to update the top status of the session, the developer should check the error code document on the official website to find the solution. |
Details
After updating the pinned status of the conversation, the query result is returned through this callback.
- Use cases: The logic after updating the pinned status of the conversation can be done in this callback.
- When to call /Trigger: Triggered after updating the pinned status of the conversation.
- Available since: 2.8.0 and above.
ZIMConversationQueriedCallback
void(^ZIMConversationQueriedCallback)((ZIMConversation *) conversation, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversation | ZIMConversation * | Conversation object. |
| errorInfo | ZIMError * | The error info of the conversation query. 0 indicates that the query conversation is successful, and non-zero indicates that the query conversation fails. If the query conversation fails, the developer should check the official website error code document query solution. |
Details
After the conversation is queried, the callback is used to return the query result.
- Use cases: The logic after the conversation query can be done in this callback.
- When to call /Trigger: Triggered when the conversation is queried.
- Available since: 2.8.0 and above.
ZIMConversationListQueriedCallback
void(^ZIMConversationListQueriedCallback)((ArrayList<ZIMConversation>) conversationList, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationList | ArrayList<ZIMConversation> | Session list. |
| errorInfo | ZIMError | Error code for querying the conversation list. 0 means querying the session list succeeds, non-0 means querying the session list fails. If there is a failure to query the call list, the developer should check the official website error code document to query the solution. |
Details
After the session list is queried, the callback is used to return the query result.
- Use cases: The logic after the session list query can be done in this callback.
- When to call /Trigger: Description Triggered when the session list is queried.
- Related APIs: [queryConversationList].
- Available since: 2.0.0 and above.
ZIMConversationDeletedCallback
void(^ZIMConversationDeletedCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | Conversation ID. |
| conversationType | ZIMConversationType | Conversation type. |
| errorInfo | ZIMError | Delete the error code of the call. 0 means that the session was deleted successfully, non-0 means that the session was deleted failed. If the deletion of the call fails, the developer should check the official website error code document to query the solution. |
Details
After a session is deleted, the deletion result is returned using this callback.
- Use cases: You can do the deleted session logic in this callback.
- When to call /Trigger: Description Triggered after the session was deleted.
- Related APIs: [deleteConversation].
- Available since: 2.0.0 and above.
ZIMConversationDraftSetCallback
void(^ZIMConversationDraftSetCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | Conversation ID. |
| conversationType | ZIMConversationType | Conversation type. |
| errorInfo | ZIMError * | The error code for the set session draft. 0 indicates that the session draft is set successfully, and non-0 indicates that the session draft fails to be set. If the setup session draft fails, the developer should check the error code documentation on the official website for a solution. |
Details
After setting the session draft, the result is returned through this callback.
- Use cases: The logic after the session draft can be set up in this callback.
- When to call /Trigger: Triggers after setting session draft.
- Related APIs: [setConversationDraft].
- Available since: 2.14.0 and above.
ZIMConversationTotalUnreadMessageCountQueriedCallback
void(^ZIMConversationTotalUnreadMessageCountQueriedCallback)((unsigned int) unreadMessageCount, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| unreadMessageCount | unsigned int | Conversations unread message total count. |
| errorInfo | ZIMError * | The error code for the query operation. |
- Trigger: Triggers after queried conversation total unread message count.
- Available since: 2.17.0 and above.
When to
ZIMConversationsAllDeletedCallback
void(^ZIMConversationsAllDeletedCallback)((ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError | Example Delete error codes for all sessions. 0 indicates that all sessions are deleted successfully. If the value is not 0, all sessions fail to be deleted. If all sessions fail to be deleted, the developer should check the error code documentation on the official website for a solution. |
Details
After all sessions are deleted, the callback returns the deletion result.
- Use cases: Logic after all sessions are deleted can be performed in the callback.
- When to call /Trigger: Triggered after all sessions are deleted.
- Related APIs: [deleteAllConversations].
- Available since: 2.12.0 and above.
ZIMConversationTotalUnreadMessageCountClearedCallback
void(^ZIMConversationTotalUnreadMessageCountClearedCallback)((ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError | Clear error codes for all unread sessions. 0 indicates that the number of unread sessions is successfully cleared. If the number is not 0, the number of unread sessions fails to be cleared. If you fail to clear the total number of unread sessions, the developer should check the error code documentation on the official website for a solution. |
Details
This callback returns the result of clearing all sessions if the session is not read.
- Use cases: You can do clear all unread logic in this callback.
- When to call /Trigger: Triggered after clearing all sessions unread.
- Related APIs: [clearConversationTotalUnreadMessageCount].
- Available since: 2.12.0 and above.
ZIMConversationUnreadMessageCountClearedCallback
void(^ZIMConversationUnreadMessageCountClearedCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | Conversation ID. |
| conversationType | ZIMConversationType | Conversation type. |
| errorInfo | ZIMError | Clears the error code for the number of unread calls. 0 means clearing the unread number of the session successfully, non-0 means the clearing the unread number of the session failed. If there is a failure to clear the number of unread calls, the developer should check the official website error code document to query the solution. |
Details
This callback returns the result of clearing a session if the session is not read.
- Use cases: You can do clear unread logic in this callback.
- When to call /Trigger: Triggered after clearing session unread.
- Related APIs: [clearConversationUnreadMessageCount].
- Available since: 2.0.0 and above.
ZIMConversationMarkSetCallback
void(^ZIMConversationMarkSetCallback)((NSArray<ZIMConversationBaseInfo *> *) failedConversationInfos, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| failedConversationInfos | NSArray<ZIMConversationBaseInfo *> * | Setting failed conversation brief information. |
| errorInfo | ZIMError | Conversation mark operation error codes. 0 represents a successful conversation mark operation, while non-zero values indicate a failed conversation mark operation. If a conversation mark operation fails, developers should refer to the official error code documentation for solution. |
Details
The result of setting conversation marks.
When to
- Trigger: Triggered after setting conversation marks.
- Related APIs: [setConversationMark].
- Available since: 2.17.0 and above.
ZIMConversationNotificationStatusSetCallback
void(^ZIMConversationNotificationStatusSetCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | conversationID. |
| conversationType | ZIMConversationType | Conversation type. |
| errorInfo | ZIMError | Set the error code for the callback notification state. 0 means setting the call back notification state successfully, non-0 means setting the call back notification state fails. If there is a failure to set the callback notification status, the developer should check the official website error code document to query the solution. |
Details
This callback returns the result of group notification after the group notification status is set.
- Use cases: You can do the logic after setting the group notification status in this callback.
- When to call /Trigger: Triggered when the group notification status is set.
- Related APIs: [setConversationNotificationStatus].
- Available since: 2.0.0 and above.
ZIMMessageInsertedCallback
void(^ZIMMessageInsertedCallback)((ZIMMessage) message, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage | Message object. |
| errorInfo | ZIMError | Insert the error code for the local message. 0 means inserting the message successfully, non-0 means inserting the message failed. If there is a failure to insert the message, the developer should check the https://doc-zh.zego.im/article/11606 to query the solution. |
- Related APIs: Insert local messages through [insertMessageToLocalDB], and the success or failure will be notified through this callback.
ZIMMessageImportedCallback
void(^ZIMMessageImportedCallback)((ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError | The error code for importing the message. 0 indicates that the message is successfully imported. If the message is not 0, the message fails to be imported. |
- Related APIs: Import messages by [importLocalMessages], success or failure is notified by this callback.
ZIMMessageExportedCallback
void(^ZIMMessageExportedCallback)((ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError | The error code for exporting the message. 0 indicates that the message is successfully exported. If the message is not 0, the message fails to be exported. |
- Related APIs: Export messages by [exportLocalMessages], success or failure is notified by this callback.
ZIMFileCacheClearedCallback
void(^ZIMFileCacheClearedCallback)((ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError | Clear cached error codes. 0 indicates that the cache is successfully cleared. If the value is not 0, the cache fails to be cleared. |
- Related APIs: Run the [clearLocalFileCache] command to insert a local message. Whether the message is inserted successfully or not is notified by this callback.
ZIMFileCacheQueriedCallback
void(^ZIMFileCacheQueriedCallback)((ZIMFileCacheInfo) fileCacheInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| fileCacheInfo | ZIMFileCacheInfo | Cache information. |
| errorInfo | ZIMError | Example Query the cache error code. 0 indicates that the cache is successfully queried. If the value is not 0, the cache fails to be queried. |
- Related APIs: The local cache is queried using [queryLocalFileCache]. Success or failure is notified by this callback.
ZIMMessageReactionAddedCallback
void(^ZIMMessageReactionAddedCallback)((ZIMMessageReaction *) reaction, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| reaction | ZIMMessageReaction * | reaction data. |
| errorInfo | ZIMError * | The error code of the message reaction addition. 0 represents the operation success, non-0 represents the operation failure, please refer to the Error codes doc (https://docs.zegocloud.com/article/13791) for solutions. |
- Trigger: After reacting to a message.
Related API: [addMessageReaction]
ZIMMessageReactionDeletedCallback
void(^ZIMMessageReactionDeletedCallback)((ZIMMessageReaction *) reaction, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| reaction | ZIMMessageReaction * | reaction data. |
| errorInfo | ZIMError * | The error code of the message reaction addition. 0 represents the operation success, non-0 represents the operation failure, please refer to the Error codes doc (https://docs.zegocloud.com/article/13791) for solutions. |
- Trigger: After deleting a message reaction.
Related API: [deleteMessageReaction]
ZIMMessageReactionUserListQueriedCallback
void(^ZIMMessageReactionUserListQueriedCallback)((ZIMMessage *) message, (NSArray<ZIMMessageReactionUserInfo> *) userList, (NSString *) reactionType, (long long) nextFlag, (int) totalCount, (ZIMError *) error);Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage * | message. |
| userList | NSArray<ZIMMessageReactionUserInfo> * | Query the detailed list of users' reactions. |
| reactionType | NSString * | Types of reaction. |
| nextFlag | long long | Query anchor, used for the next page to be passed to [ZIMMessageReactionUserQueryConfig] for querying. |
| totalCount | int | The total number of users who reaction. |
| error | ZIMError * | 错误信息 |
- Trigger: After querying the user info related to a message reaction.
Related API: [queryMessageReactionUserListByMessage]
ZIMMessageRepliedListQueriedCallback
void(^ZIMMessageRepliedListQueriedCallback)((NSArray<ZIMMessage> *) messageList, (long long) nextFlag, (ZIMMessageRootRepliedInfo) rootRepliedInfo, (ZIMError *) error);| Name | Type | Description |
|---|---|---|
| messageList | NSArray<ZIMMessage> * | List of messages retrieved. |
| nextFlag | long long | Query anchor, used for the next page to be passed to [ZIMMessageRepliedListQueryConfig] for querying. |
| rootRepliedInfo | ZIMMessageRootRepliedInfo | Reply information for the root message. |
| error | ZIMError * | error info. |
ZIMMessageEditedCallback
void(^ZIMMessageEditedCallback)((ZIMMessage) message, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage | The edited message object, from which parameters such as editedTime and editorUserID can be obtained. |
| errorInfo | ZIMError | The error code of the edited message. |
Details
Supported Versions: 2.20.0 and above.
Detail description: The callback for the result of editing the message.
Business scenario: The developer can judge whether the editing is successful through the [errorCode] in the callback.
Notification timing: This callback is triggered when the developer calls the [editMessage] interfaces.
ZIMMessagePinnedCallback
void(^ZIMMessagePinnedCallback)((ZIMError) errorInfo, (zim_sequence) sequence);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError | The error code of the pinned or unpinned message. |
| sequence | zim_sequence | Context that identifies which invocation triggered this callback. |
Details
Supported versions: 2.25.0 and above.
Detailed description: The callback for the result of pinning or unpinning a message.
Business scenario: Developers can determine whether the operation was successful via the [errorCode] in this callback.
Notification timing: This callback is triggered when the developer calls the [pinMessage] interface.
ZIMMessageSentCallback
void(^ZIMMessageSentCallback)((ZIMMessage) message, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage | The sent message object, from which parameters such as messageID can be obtained. If the sending fails, the messageID parameter in the message will be an empty string. |
| errorInfo | ZIMError | The error code of the sent message. 0 means sending the message successfully, non-0 means sending the message failed. If there is a failure to send a message, the developer should check the official website error code document to query the solution. |
Details
Supported Versions: 1.1.0 and above.
Detail description: The callback for the result of sending the message.
Business scenario: The developer can judge whether the sending is successful through the [errorCode] in the callback.
Notification timing: This callback is triggered when the developer calls the [sendPeerMessage] and [sendRoomMessage] interfaces.
Related interfaces: Send messages through [sendPeerMessage] and [sendRoomMessage], and the success of sending messages will be notified through this callback.
ZIMSendingMessageCancelledCallback
void(^ZIMSendingMessageCancelledCallback)();Supported Versions: 2.22.0 and above.
Detail description: The callback for the result of cancel sending the message.
Business scenario: The developer can judge whether the cancel sending is successful through the [errorCode] in the callback.
Notification timing: This callback is triggered when the developer calls the [cancelSendingMessage] interfaces.
ZIMConversationMessageReceiptReadSentCallback
void(^ZIMConversationMessageReceiptReadSentCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | ConversationID. |
| conversationType | ZIMConversationType | Conversation Type. |
| errorInfo | ZIMError | Set the error code of the receipt conversation read. 0 indicates that the setting is successful, and non-zero indicates that the setting fails. If the setting fails, the developer should check the official website error code document for solutions. |
Details
Set the callback interface for the read receipt conversation.
- Use cases: Developers can judge whether the sending is successful through [errorCode] in the callback.
Notification timing: When the developer calls the [sendConversationMessageReceiptRead] interface, this callback will be triggered.
- Related APIs: The success or failure of the conversation read result set by [sendConversationMessageReceiptRead] will be notified through this callback.
- Available since: 2.5.0 and above.
ZIMMessageReceiptsReadSentCallback
void(^ZIMMessageReceiptsReadSentCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (NSArray<NSNumber *> *) errorMessageIDs, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | ConversationID. |
| conversationType | ZIMConversationType | Conversation Type. |
| errorMessageIDs | NSArray<NSNumber *> * | Set the message ID corresponding to the message receipt failure. |
| errorInfo | ZIMError | Set the error code of the receipt message read. 0 indicates that the setting is successful, and non-zero indicates that the setting fails. If the setting fails, the developer should check the official website error code document for solutions. |
Details
Set the callback interface for the read receipt message.
- Use cases: Developers can judge whether the setting is successful through [errorCode] in the callback.
Notification timing: When the developer calls the [sendMessageReceiptsRead] interface, this callback will be triggered.
- Related APIs: The success or failure of the message read result set by [sendMessageReceiptsRead] will be notified through this callback.
- Available since: 2.5.0 and above.
ZIMMessageReceiptsInfoQueriedCallback
void(^ZIMMessageReceiptsInfoQueriedCallback)((NSArray<ZIMMessageReceiptInfo *> *) infos, (NSArray<NSString *> *) errorMessageIDs, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| infos | NSArray<ZIMMessageReceiptInfo *> * | Query receipt information. |
| errorMessageIDs | NSArray<NSString *> * | Query the wrong message ID of the message receipt information. |
| errorInfo | ZIMError | Query the error code of the message receipt. 0 means the query is successful, and non-zero means the query failed. If the query fails, the developer should check the official website error code document for solutions. |
Details
Callback interface for querying receipt message information.
- Use cases: Developers can judge whether the sending is successful through [errorCode] in the callback.
Notification timing: When the developer calls the [queryMessageReceiptsInfo] interface, this callback will be triggered.
- Related APIs: through [queryMessageReceiptsInfo], whether the result of querying the receipt information is successful or not will be notified through this callback.
- Available since: 2.5.0 and above.
ZIMGroupMessageReceiptMemberListQueriedCallback
void(^ZIMGroupMessageReceiptMemberListQueriedCallback)((NSString *) groupID, (NSArray<ZIMGroupMemberInfo *>) userList, (unsigned int) nextFlag, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| groupID | NSString * | Group ID. |
| userList | NSArray<ZIMGroupMemberInfo *> | Query the list of successful group users. |
| nextFlag | unsigned int | Query the flag corresponding to the next page, which is used for the next flag parameter of [ZIMGroupMessageReceiptMemberQueryConfig]. |
| errorInfo | ZIMError | Set the error code returned by querying the group member list. 0 means the query is successful, and non-zero means the query failed. If the query fails, the developer should check the official website error code document for solutions. |
Details
The callback interface for querying the specific read/unread member list of the group receipt message.
- Use cases: Developers can judge whether the sending is successful through [errorCode] in the callback.
Notification timing: When the developer calls the [queryGroupMessageReceiptReadMemberList] / [queryGroupMessageReceiptUnreadMemberList] interface, this callback will be triggered.
- Available since: 2.5.0 and above.
ZIMMessageRevokedCallback
void(^ZIMMessageRevokedCallback)((ZIMMessage) message, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage | Message object. |
| errorInfo | ZIMError | Retraction notice. 0 representative withdraw successfully, non 0 withdraw unsuccessful. When the withdrawal fails, the developer responds to the official website Review the solution. |
- Use cases: Developer allowed through this process during response [errorCode] Successful delivery.
- Trigger: For our developers [revokeMessage] When contacting, this revoke will be sent.
- Related APIs: If the revoked message is the latest message of the session, the [conversationChanged] callback will be triggered, and if the message is unread, the [conversationTotalUnreadMessageCountUpdated] callback will be triggered.
ZIMMessageQueriedCallback
void(^ZIMMessageQueriedCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (null) messageList, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | ConversationID. |
| conversationType | ZIMConversationType | Conversation Type. |
| messageList | null | The message list of the query result. |
| errorInfo | ZIMError | The error code of the query message. 0 means the query message is successful, non-0 means the query message fails. If the query message fails, the developer should check the official website error code document to query the solution. |
Details
Callback result of query message list.
- Use cases: Through this callback, developers can obtain the list of queried messages and display historical messages.
Notification timing: After calling queryHistoryMessage, the list of queried messages is notified through this callback.
- Related APIs: Use [queryPeerMessage] to query historical messages. The queried message list is notified through this callback.
- Available since: 2.0.0 or later.
ZIMPinnedMessageListQueriedCallback
void(^ZIMPinnedMessageListQueriedCallback)((NSArray<ZIMMessage *> *) messageList, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| messageList | NSArray<ZIMMessage *> * | The message list of the query result. |
| errorInfo | ZIMError | The error code of the query message. 0 means the query message is successful, non-0 means the query message fails. If the query message fails, the developer should check the official website error code document to query the solution. |
- Related APIs: The [queryPinnedMessageList] interface is used to query the list of pinned messages. The queried message list is notified through this callback.
ZIMConversationMessagesAllDeletedCallback
void(^ZIMConversationMessagesAllDeletedCallback)((ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| errorInfo | ZIMError * | Delete the error code of the message. 0 means the deletion of the message succeeded, non-0 means the deletion of the message failed. If the deletion message fails, the developer should check the official website error code document to query the solution. |
Details
Supported versions: 2.14.0 and above.
Detail description: After all messages of all sessions are deleted, the callback returns the message deletion result.
Business scenario: The developer can judge whether the deletion is successful through the [errorCode] in the callback.
Notification timing: Triggered after calling the delete message interface [deleteAllConversationMessages].
Related interface: [deleteAllConversationMessages].
ZIMMessageDeletedCallback
void(^ZIMMessageDeletedCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | Conversation ID |
| conversationType | ZIMConversationType | Conversation Type |
| errorInfo | ZIMError | Delete the error code of the message. 0 means the deletion of the message succeeded, non-0 means the deletion of the message failed. If the deletion message fails, the developer should check the official website error code document to query the solution. |
Details
Supported versions: 2.0.0 and above.
Detail description: After the message is deleted, the result of message deletion is returned through this callback.
Business scenario: The developer can judge whether the deletion is successful through the [errorCode] in the callback.
Notification timing: Triggered after calling the delete message interface [deleteMessage].
Related interface: [deleteMessage].
ZIMMediaDownloadedCallback
void(^ZIMMediaDownloadedCallback)((ZIMMessage) message, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage | The sent message object, from which parameters such as messageID can be obtained. If the sending fails, the messageID parameter in the message will be an empty string. |
| errorInfo | ZIMError | The error code of the sent message. 0 means sending the message successfully, non-0 means sending the message failed. If there is a failure to send a message, the developer should check the official website error code document to query the solution. |
- Related APIs: Download media messages through [downloadMediaFile], and it will be notified through this callback whether it is successful or not.
ZIMMediaUploadingProgress:message:currentFileSize:totalFileSize:
- (void)ZIMMediaUploadingProgress:(ZIMMediaMessage *) message currentFileSize:(unsigned long long) currentFileSize totalFileSize:(unsigned long long) totalFileSize;Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMediaMessage * | The message object for the current file upload. |
| currentFileSize | unsigned long long | The current progress, that is, the real-time size of the current file upload. |
| totalFileSize | unsigned long long | Total progress, which is the total size of the current file. |
Details
Supported versions: 2.1.0 and above.
Detail description: The progress callback for sending media messages.
Business scenario: The developer can obtain the sending progress of the media message through this callback.
Notification timing: When the developer calls the [sendMediaMessage] interface, the callback will be triggered, and will be triggered multiple times during the sending process.
Related interface: Through [sendMediaMessage], the sending progress will be notified through this callback.
ZIMMessageExportingProgress:exportedMessageCount:totalMessageCount:
- (void)ZIMMessageExportingProgress:(unsigned long long) exportedMessageCount totalMessageCount:(unsigned long long) totalMessageCount;Parameters
| Name | Type | Description |
|---|---|---|
| exportedMessageCount | unsigned long long | Current progress, that is, the number of exported messages. |
| totalMessageCount | unsigned long long | Total progress: The total number of exported messages. |
- Related APIs: With [exportLocalMessages], the exported progress is notified by this callback.
ZIMMessageImportingProgress:importedMessageCount:totalMessageCount:
- (void)ZIMMessageImportingProgress:(unsigned long long) importedMessageCount totalMessageCount:(unsigned long long) totalMessageCount;Parameters
| Name | Type | Description |
|---|---|---|
| importedMessageCount | unsigned long long | Current progress, that is, the number of imported messages. |
| totalMessageCount | unsigned long long | Total progress: The total number of imported messages. |
- Related APIs: With [importLocalMessages], the imported progress is notified by this callback.
ZIMMediaDownloadingProgress:message:currentFileSize:totalFileSize:
- (void)ZIMMediaDownloadingProgress:(ZIMMessage *) message currentFileSize:(unsigned long long) currentFileSize totalFileSize:(unsigned long long) totalFileSize;Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage * | The message object for the current file download. |
| currentFileSize | unsigned long long | The current progress, that is, the real-time size of the current file download. |
| totalFileSize | unsigned long long | Total progress, which is the total size of the current file. |
- Related APIs: Through [downloadMediaFile], the download progress will be notified through this callback.
ZIMMessageLocalExtendedDataUpdatedCallback
void(^ZIMMessageLocalExtendedDataUpdatedCallback)((ZIMMessage *) message, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| message | ZIMMessage * | Updated of the message. |
| errorInfo | ZIMError * | Error code. |
- Use cases: Developers can determine whether the operation is successful through the [errorCode] in this callback.
Notification timing: This callback is triggered when developers call the [updateMessageLocalExtendedData] interface.
ZIMMessagesSearchedCallback
void(^ZIMMessagesSearchedCallback)((NSString *) conversationID, (ZIMConversationType) conversationType, ( NSArray<ZIMMessage *> ) messageList, (ZIMMessage *_Nullable) nextMessage, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationID | NSString * | Conversation ID, in the case of one-on-one chat, the conversationID is the userID of the other party. In the case of a group chat, the conversationID is the groupID of the group. |
| conversationType | ZIMConversationType | Conversation types. 0: One-on-one chat, 1: Room, 2: Group. Note: In the "Room" scenario, caching and searching for offline messages are not supported by default. |
| messageList | NSArray<ZIMMessage *> | List of searched messages. |
| nextMessage | ZIMMessage *_Nullable | Pagination retrieval flag, message anchor for searching the next page. |
| errorInfo | ZIMError * | Search local message error codes. 0 represents a successful search for local messages, and non-zero values indicate a failure to search for local messages. If a failure to search for local messages occurs, developers should refer to the official website's error code documentation for solutions. |
Details
Detailed description: Return of search results for local messages.
- Use cases: After performing a local message search operation, the success or failure can be determined through this callback.
Related API: [searchLocalMessagesByConversationID], search for local messages.
ZIMMessagesGlobalSearchedCallback
void(^ZIMMessagesGlobalSearchedCallback)((NSArray<ZIMMessage *> *) messageList, (NSArray<ZIMMessage *> *) nextMessage, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| messageList | NSArray<ZIMMessage *> * | List of searched messages. |
| nextMessage | NSArray<ZIMMessage *> * | Pagination retrieval flag, message anchor for searching the next page. |
| errorInfo | ZIMError * | Error codes for global search of local messages. 0 represents a successful global search of local messages, while non-zero indicates a failed global search of local messages. If a failure occurs during the global search of local messages, developers should refer to the official error code documentation for solutions. |
Details
Detailed description: Return of search results for local messages.
- Use cases: After performing a local message search operation, the success or failure can be determined through this callback.
Related API: [searchGlobalLocalMessagesWithConfig], search for local messages.
ZIMConversationsSearchedCallback
void(^ZIMConversationsSearchedCallback)((NSArray<ZIMConversationSearchInfo> *) conversationSearchInfoList, (unsigned int) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| conversationSearchInfoList | NSArray<ZIMConversationSearchInfo> * | List of searched conversation messages. |
| nextFlag | unsigned int | Pagination retrieval flag, anchor for searching the next page. |
| errorInfo | ZIMError * | The error code of the search result. 0 means the search is successful, non-zero means the search failed. If the search fails, the developer should check the error code documentation on the official website for solutions. |
Details
Search the results of local conversations based on local messages.
- Use cases: After performing a local session message search operation, the success or failure can be known through this callback.
Related API: [searchLocalConversations], search for local conversations based on local messages.
ZIMRoomMembersQueriedCallback
void(^ZIMRoomMembersQueriedCallback)((NSString *) roomID, (NSArray<ZIMRoomMemberInfo *> *) memberList, (NSArray<ZIMErrorUserInfo *> *) errorUserList, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID. |
| memberList | NSArray<ZIMRoomMemberInfo *> * | List of user information. |
| errorUserList | NSArray<ZIMErrorUserInfo *> * | List of users whose query failed. |
| errorInfo | ZIMError * | error info. |
Details
After querying room user information, the query result is returned through this callback.
- Use cases: The logic after querying room user information can be done in this callback.
- When to call /Trigger: Triggered after querying room user information.
- Available since: 2.8.0 and above.
ZIMRoomMembersAttributesQueriedCallback
void(^ZIMRoomMembersAttributesQueriedCallback)((NSString *) roomID, (NSArray<ZIMRoomMemberAttributesInfo *> *) infos, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID. |
| infos | NSArray<ZIMRoomMemberAttributesInfo *> * | List of room user attributes. |
| errorInfo | ZIMError * | Error code for querying room user attributes. 0 means the query of room user attributes is successful, non-0 means the query of room user attributes fails. If there is a failure to query the room user attributes, the developer should check the https://doc-zh.zego.im/article/11606 query solution. |
Details
Supported version: 2.4.0 and later.
Detailed description: According to the UserID list, batch query results of room user attributes are returned.
Business scenario: After querying room user attributes, the success or failure and query results can be known through this callback.
Notification timing: The result will be returned after the room user attribute query is completed.
Related interface: [queryRoomMembersAttributes], query room user attributes.
ZIMRoomMemberAttributesListQueriedCallback
void(^ZIMRoomMemberAttributesListQueriedCallback)((NSString *) roomID, (NSArray<ZIMRoomMemberAttributesInfo *> *) infos, (NSString *) nextFlag, (ZIMError *) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID. |
| infos | NSArray<ZIMRoomMemberAttributesInfo *> * | List of room user attributes. |
| nextFlag | NSString * | The anchor of the next paging query. If it is empty, it means that the query has been completed. |
| errorInfo | ZIMError * | Error code for querying room user attributes. 0 means the query of room user attributes is successful, non-0 means the query of room user attributes fails. If there is a failure to query the room user attributes, the developer should check the https://doc-zh.zego.im/article/11606 query solution. |
Details
Supported version: 2.4.0 and later.
Detail description: Returns the result of paging query of all user attribute lists in the room.
Business scenario: After querying room user attributes, the success or failure and query results can be known through this callback.
Notification timing: The result will be returned after the room user attribute query is completed.
Related interface: [queryRoomMemberAttributesList], query room user attributes.
ZIMRoomCreatedCallback
void(^ZIMRoomCreatedCallback)((ZIMRoomFullInfo) roomInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomInfo | ZIMRoomFullInfo | Details of the room created. If the creation fails, the roomID parameter in roomInfo will be an empty string. |
| errorInfo | ZIMError | Error information. |
Details
The callback of the result of creating the room.
- Related APIs: Create a room through [createRoom], and the result of the creation will be notified through this callback.
- Available since: 1.1.0 or above.
ZIMRoomEnteredCallback
void(^ZIMRoomEnteredCallback)((ZIMRoomFullInfo) roomInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomInfo | ZIMRoomFullInfo | Details of the room created. If the creation fails, the roomID parameter in roomInfo will be an empty string. |
| errorInfo | ZIMError | Error information. |
- Related APIs: Create a room through [enterRoom], and the entry result will be notified through this callback.
ZIMRoomSwitchedCallback
void(^ZIMRoomSwitchedCallback)((ZIMRoomFullInfo) roomInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomInfo | ZIMRoomFullInfo | Full info of the room switched. |
| errorInfo | ZIMError | Error information. |
- Related APIs: Switched rooms through [switchRoom], and the result will be notified through this callback.
ZIMRoomJoinedCallback
void(^ZIMRoomJoinedCallback)((ZIMRoomFullInfo) roomInfo, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomInfo | ZIMRoomFullInfo | Details of the room joined. If the join fails, the roomID parameter in roomInfo will be an empty string. |
| errorInfo | ZIMError | Error code to join room. 0 means join the room successfully, non-0 means join the room failed. If there is a failure to join the room, the developer should check the official website error code document to query the solution. |
Details
The callback of the result of joining the room.
- Related APIs: Join the room through [joinRoom], and the result of joining will be notified through this callback.
- Available since: 1.1.0 or above.
ZIMRoomAllLeftCallback
void(^ZIMRoomAllLeftCallback)((NSArray<NSString *> *) roomIDs);Parameters
| Name | Type | Description |
|---|---|---|
| roomIDs | NSArray<NSString *> * | Room IDs. |
- Trigger: When the user calls [leaveAllRoom], the callback will be triggered to return the result.
- Available since: 1.15 or above.
ZIMRoomLeftCallback
void(^ZIMRoomLeftCallback)((NSString *) roomID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID |
| errorInfo | ZIMError | Error code to leave the room. 0 means leaving the room successfully, non-0 means leaving the room failed. If there is a failure to leave the room, the developer should check the official website error code document to query the solution. |
Details
The callback of the result of leaving the room.
- Related APIs: Leave the room through [leaveRoom], and the result of leaving will be notified through this callback.
- Available since: 1.1.0 or above.
ZIMRoomMemberQueriedCallback
void(^ZIMRoomMemberQueriedCallback)((NSString *) roomID, (NSArray<ZIMUserInfo *>) memberList, (NSString *) nextFlag, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID |
| memberList | NSArray<ZIMUserInfo *> | List of members in the room. |
| nextFlag | NSString * | The flag of the paging query. If this field is an empty string, the query has been completed. Otherwise, you need to set this value to the "nextFlag" field of ZIMQueryMemberConfig for the next page query. |
| errorInfo | ZIMError | Query the error code of room members. 0 means querying room members successfully, non-0 means querying room members failed. If there is a failure to query room members, the developer should check the official website for the error code document query solution. |
Details
Callback for the result of querying the room member list.
- Related APIs: Query the list of room members through [queryRoomMember], and the query result will be notified through this callback.
- Available since: 1.1.0 or above.
ZIMRoomOnlineMemberCountQueriedCallback
void(^ZIMRoomOnlineMemberCountQueriedCallback)((NSString *) roomID, (unsigned int) count, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID |
| count | unsigned int | The number of online members of the room. |
| errorInfo | ZIMError | Query the error code of the online member of the room. 0 means the query of online members of the room is successful, and non-0 means the query of online members of the room fails. If there is a failure to query the online members of the room, the developer should check the official website for the error code document query solution. |
Details
Callback of the result of querying the online members count in the room.
- Related APIs: You can check the online number of people in the room through [queryRoomOnlineMemberCount].
- Available since: 1.1.0 or above.
ZIMRoomAttributesQueriedCallback
void(^ZIMRoomAttributesQueriedCallback)((NSString *) roomID, (NSDictionary<NSString*,NSString *> *) roomAttributes, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID |
| roomAttributes | NSDictionary<NSString*,NSString *> * | Room attributes in the room. |
| errorInfo | ZIMError | Error code for querying all properties of the room. 0 means that the query of all properties of the room is successful, and non-0 means that the query of all the properties of the room fails. If the query of all the properties of the room fails, the developer should check the official website for the error code document query solution. |
Details
Return of room attribute query results.
- Available since: 1.3.0.
ZIMRoomAttributesOperatedCallback
void(^ZIMRoomAttributesOperatedCallback)((NSString *) roomID, (NSArray<NSString *>) errorKeys, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID. |
| errorKeys | NSArray<NSString *> | Keys for failed operation. |
| errorInfo | ZIMError | Error code for room attribute operation. 0 means the room property operation is successful, non-0 means the room property operation fails. If the room attribute operation fails, the developer should check the official website error code document to query the solution. |
Details
The return of the operation result of the room attribute.
- Available since: 1.3.0.
ZIMRoomAttributesBatchOperatedCallback
void(^ZIMRoomAttributesBatchOperatedCallback)((NSString *) roomID, (ZIMError) errorInfo);Parameters
| Name | Type | Description |
|---|---|---|
| roomID | NSString * | Room ID |
| errorInfo | ZIMError | Error code for room property batch operations. 0 means the room attribute batch operation is successful, non-0 means the room attribute batch operation fails. If the room attribute batch operation fails, the developer should check the official website error code document to query the solution. |
Details
The return of the result of the room attribute combination operation.
- Available since: 1.3.0.
ZIMError
Error infomation
Details
Error infomation.
Declared in ZIMDefines.h
Properties
code
public ZIMErrorCode codeThe storage path of the log files. Refer to the official website document for the default path.
message
public NSString * messageError infomation description.
ZIMErrorUserInfo
Error user information class.
Details
Used to show the failed user and the reason for the failure.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDUser ID, a string with a maximum length of 32 bytes or less. It is customized by the developer. Only support numbers, English characters and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'.
reason
public unsigned int reasonDescription Reason for the query failure.
ZIMFileCacheClearConfig
Clear cache configuration.
Details
Clear cache configuration.
Declared in ZIMDefines.h
Properties
endTime
public unsigned long long endTimeExpiration stamp of cache cleanup.
- Required: Not required.
ZIMFileCacheInfo
File cache information.
Details
Detailed description: File cache information.
Declared in ZIMDefines.h
Properties
totalFileSize
public unsigned long long totalFileSizeTotal file size in bytes (B).
ZIMFileCacheQueryConfig
Query cache configuration.
Details
Query cache configuration.
Declared in ZIMDefines.h
Properties
endTime
public unsigned long long endTimeExample Query the expiration timestamp of the cache.
- Required: Not required.
ZIMFileMessage
File message object.
Details
Identifies the basic parameters of a message.
- Caution: If the Type parameter of the base class is File during callback, you can force the base class message object to be of this type.
Declared in ZIMDefines.h
Properties
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileUID
public NSString * fileUIDDetail description: The unique ID of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMFileMessageLiteInfo
File message lite info object.
Details
Identifies the basic parameters of a message.
Declared in ZIMDefines.h
Properties
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
ZIMFriendAddConfig
The behavior property of the Add Friend setting.
Details
The behavior property of the Add Friend setting.
Declared in ZIMDefines.h
Properties
wording
public NSString * wordingAdd a friend postscript.
friendAlias
public NSString * friendAliasAlias of friend.
friendAttributes
public NSDictionary<NSString *, NSString *> * friendAttributesFriend attributes. Up to 5 can be set. The key of the attribute can only be selected from k0 to k4.
ZIMFriendApplicationAcceptConfig
Behavior attributes for accepting friend requests.
Details
Behavior attributes for accepting friend requests.
Declared in ZIMDefines.h
Properties
friendAlias
public NSString * friendAliasfriend alias.
friendAttributes
public NSDictionary<NSString *, NSString *> * friendAttributesfriend attributes.
pushConfig
ZIMFriendApplicationInfo
Friend application information.
Details
Detailed description: Friend application information.
Declared in ZIMDefines.h
Properties
applyUser
public ZIMUserInfo applyUserDetail description: If you are the applicant, here is the respondent information; if you are the respondent, here is the applicant information;
wording
public NSString * wordingThe wording of friend application information.
createTime
public int createTimeFriend add time.
updateTime
public int updateTimeFriend application status update time.
type
state
ZIMFriendApplicationListQueryConfig
Query the configuration of the friend application list.
Details
Query the configuration of the friend application list.
Declared in ZIMDefines.h
Properties
count
public int countTotal number of current queries.
nextFlag
public int nextFlagThe index of the current query anchor point.
ZIMFriendApplicationRejectConfig
Behavior attributes for rejecting friend application.
Details
Behavior attributes for rejecting friend application.
Declared in ZIMDefines.h
Properties
pushConfig
ZIMFriendApplicationSendConfig
The behavior property of the Send Friend Application setting.
Details
The behavior property of the Send Friend Application setting.
Declared in ZIMDefines.h
Properties
wording
public NSString * wordingAdd a friend postscript.
friendAlias
public NSString * friendAliasAlias of friend.
friendAttributes
public NSDictionary<NSString *, NSString *> * friendAttributesFriend attributes. Up to 5 can be set. The key of the attribute can only be selected from k0 to k4.
pushConfig
ZIMFriendDeleteConfig
The behavior property of the Delete Friend setting.
Details
The behavior property of the Delete Friend setting.
Declared in ZIMDefines.h
Properties
type
ZIMFriendInfo
Friend information.
Details
Detailed description: Friend information.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDDetail description: UserID of the operator.
friendAlias
public NSString * friendAliasThe alias of friend.
friendAttributes
public NSDictionary<NSString *, NSString *> * friendAttributesFriend attributes. Up to 5 can be set. The key of the attribute can only be selected from k0 to k4.
createTime
public int createTimeFriend add time.
userName
public NSString * userNameUser name, defined by you. For version 2.0.0 and onwards, the string has a maximum length of 256 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
userAvatarUrl
public NSString * userAvatarUrlThe user avatar, which is custom generated by the developer, is not restricted by special characters and has a maximum length of 500 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
- Available since: 2.13.0 and above.
userExtendedData
public NSString * userExtendedDataExtended field information of the user.
- Caution: This property has a value only for room users.
ZIMFriendListQueryConfig
Query the configuration of the friend list.
Details
Query the configuration of the friend list.
Declared in ZIMDefines.h
Properties
count
public int countTotal number of current queries.
nextFlag
public int nextFlagThe index of the current query anchor point.
ZIMFriendRelationCheckConfig
Check the behavior properties of friend relationships.
Details
Check the behavior properties of friend relationships.
Declared in ZIMDefines.h
Properties
type
ZIMFriendRelationInfo
Friend relationship information.
Details
Detailed description: Friend relationship information.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDuser ID.
type
ZIMFriendsSearchConfig
Search local friend configuration.
Details
Search local friend configuration.
Declared in ZIMDefines.h
Properties
keywords
public NSArray<NSString *> * keywordsSearch keyword list.
isAlsoMatchFriendAlias
public BOOL isAlsoMatchFriendAliasWhether to match friend aliases.
count
public int countCurrent total number of searches.
nextFlag
public int nextFlagThe starting and ending index of the current search.
ZIMGroup
complete group information for group list.
Details
complete group information for group list.
Declared in ZIMDefines.h
Properties
baseInfo
notificationStatus
public ZIMGroupMessageNotificationStatus notificationStatusgroup message notification status.
groupAlias
public NSString * groupAliasthe group alias defined by user, which is visible only to that user.
ZIMGroupAdvancedConfig
Group advanced configuration.
Details
Group advanced configuration.
- Required: required.
Declared in ZIMDefines.h
Properties
groupAttributes
public HashMap<String, String> groupAttributesGroup properties, up to 10 can be configured..
- Required: Optional.
groupNotice
public NSString * groupNoticegroup notice.
- Required: Optional.
maxMemberCount
public unsigned int maxMemberCountThe maximum number of group members.
- Use cases: When you need to limit the number of group members.
- Required: Optional.
- Default value: 0.
- Value range: [0, The default maximum number of group members for the business package].
- Caution: Supports version 2.15 and above.
joinMode
public ZIMGroupJoinMode joinModeVerification mode for joining the group.
- Required: Optional.
- Caution: Supports version 2.15 and above.
inviteMode
public ZIMGroupInviteMode inviteModeVerification mode for invite to the group.
- Required: Optional.
- Caution: Supports version 2.15 and above.
beInviteMode
public ZIMGroupBeInviteMode beInviteModeVerification mode for being invited to the group.
- Required: Optional.
- Caution: Supports version 2.15 and above.
ZIMGroupApplicationInfo
Group application information.
Declared in ZIMDefines.h
Properties
applyUser
public ZIMUserInfo applyUserDetail description: The applicant is the applicant when applying to join, the invitee when applying to invite, and the inviter when applying by invitation.
wording
public NSString * wordingThe wording of group application information.
createTime
public unsigned long long createTimeGroup application create time.
updateTime
public unsigned long long updateTimeGroup application status update time.
type
state
groupInfo
operatedUser
public ZIMGroupMemberSimpleInfo operatedUserThe operator who agrees to join the group application.
ZIMGroupApplicationListQueryConfig
Query the group application configuration.
Details
Through this configuration, you can set the total number of queries and the pagination query.
Declared in ZIMDefines.h
Properties
count
public unsigned int countcount. It is advised to be no more than 30.
- Required: Yes.
nextFlag
public unsigned int nextFlagnextFlag.
- Required: Not required, it is 0 by default for the first time, which means to start the query from the beginning.
ZIMGroupAttributesUpdateInfo
Group attribute update information.
Details
Group attribute update information.
Declared in ZIMDefines.h
Properties
action
groupAttributes
public HashMap<String, String> groupAttributesgroup properties.
ZIMGroupConversation
Group session object, extend from ZIMGroupConversation.
Details
Group session object, extend from ZIMGroupConversation.
Declared in ZIMDefines.h
Properties
mutedExpiredTime
public long long mutedExpiredTimeThe expiration date of the group gag.
isDisabled
public BOOL isDisabledWhether the group session is unavailable.
conversationID
public NSString * conversationIDconversationID.
conversationName
public NSString * conversationNameconversationName is the same as the groupName/userName value corresponding to the session.
type
unreadMessageCount
public int unreadMessageCountSession unread.
lastMessage
orderKey
public long orderKeyOrderKey is used to describe the order of messages in the session. The larger orderKey is, the newer it is.
notificationStatus
public ZIMConversationNotificationStatus notificationStatussession notification status.
conversationAvatarUrl
public NSString * conversationAvatarUrlDetail description: Conversation avatar URL. The peer to peer chat conversation avatar URL is the same as the user avatar URL, and the group chat conversation avatar URL is the same as the group avatar URL.
Use Limit: the maximum number of characters is 500 bytes. There is no limit on special characters.
isPinned
public BOOL isPinnedWhether the conversation is pinned.
mentionedInfoList
public NSArray<ZIMMessageMentionedInfo *>* mentionedInfoListWhen reminded in a message or reminded to everyone in a conversation, this array will record the reminders.
- Use cases: For example, you can display the number of reminders in the conversation list based on this array, and also display which user's reminder it is.
conversationAlias
public NSString * conversationAliasAfter the friend remarks are set through [updateFriendAlias], this parameter is changed for each chat conversation. After setting a group alias by [updateGroupAlias], the corresponding group chat conversation's parameter will be modified synchronously.
- Use cases: After update alias for friends or groups, the corresponding conversation chooses to display the alias over the conversation name when rendering the conversation page.
marks
public NSArray<NSNumber *> * marksDescribes all the existing marks for the conversation.
- Use cases: The business layer can group logic, etc., according to different conversations with different marks.
draft
public NSString * draftConversation draft, when draft set conversation will carry this parameter.
ZIMGroupEnterInfo
Information about group members when they join the group.
Declared in ZIMDefines.h
Properties
enterType
enterTime
public unsigned long long enterTimeThe timestamp of the server when joining the group.
operatedUser
public ZIMGroupMemberSimpleInfo operatedUserThe operator who agrees to the application to join the group or the inviter who invites the application to join the group.
ZIMGroupFullInfo
complete group information.
Details
complete group information.
Declared in ZIMDefines.h
Properties
baseInfo
groupAttributes
public HashMap<String, String> groupAttributesgroup properties.
groupNotice
public NSString* groupNoticeGroup of announcement.
notificationStatus
public ZIMGroupMessageNotificationStatus notificationStatusgroup message notification status.
mutedInfo
createTime
public unsigned long long createTimeThe timestamp of the server when the group was created.
- Caution: Supports version 2.15 and above.
maxMemberCount
public unsigned int maxMemberCountThe maximum number of group members.
- Caution: Supports version 2.15 and above.
verifyInfo
public ZIMGroupVerifyInfo verifyInfoVerification mode for joining the group.
- Caution: Supports version 2.15 and above.
groupAlias
public NSString * groupAliasthe group alias defined by user, which is visible only to that user.
ZIMGroupInfo
group information.
Details
group information.
Declared in ZIMDefines.h
Properties
groupID
public NSString * groupIDgroupID.
Required or not: Mandatory, it will be automatically generated in the background.
Value: Supports only digits, English characters, and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~' and not by '#' at the beginning.
groupName
public NSString * groupNameGroup name.
- Required: Optional.
Value: A string of up to 50 bytes.
groupAvatarUrl
public NSString * groupAvatarUrl- Required: not required.
Use Limit: the maximum number of characters is 500 bytes. There is no limit on special characters.
ZIMGroupInviteApplicationAcceptConfig
The behavior property of the accept group invite application setting.
Declared in ZIMDefines.h
Properties
pushConfig
ZIMGroupInviteApplicationRejectConfig
The behavior property of the reject group invite application setting.
Declared in ZIMDefines.h
Properties
pushConfig
ZIMGroupInviteApplicationSendConfig
The behavior property of the send group invite application setting.
Declared in ZIMDefines.h
Properties
wording
public NSString * wordingPostscript to the application operation.
pushConfig
ZIMGroupJoinApplicationAcceptConfig
The behavior property of the accept group join application setting.
Declared in ZIMDefines.h
Properties
pushConfig
ZIMGroupJoinApplicationRejectConfig
The behavior property of the reject group join application setting.
Declared in ZIMDefines.h
Properties
pushConfig
ZIMGroupJoinApplicationSendConfig
The behavior property of the send group join application setting.
Declared in ZIMDefines.h
Properties
wording
public NSString * wordingPostscript to the application operation.
pushConfig
ZIMGroupMemberInfo
Group member information.
Details
Group member information.
Declared in ZIMDefines.h
Properties
memberNickname
public NSString * memberNicknameGroup member nickname.
memberRole
public int memberRolegroup role.
memberAvatarUrl
public NSString * memberAvatarUrlDetailed description: group member avatar URL.
User Limit: the maximum number of characters is 500 bytes. There is no limit on special characters.
muteExpiredTime
public unsigned long long muteExpiredTimeGroup member's mute expiration time. When it's 0, it means no mute; when it's -1, it means permanent mute.
groupEnterInfo
public ZIMGroupEnterInfo groupEnterInfoInformation about group members when they join the group.
- Caution: Supports version 2.15 and above.
userID
public NSString * userIDUser ID, a string with a maximum length of 32 bytes or less. It is customized by the developer. Only support numbers, English characters and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'.
userName
public NSString * userNameUser name, defined by you. For version 2.0.0 and onwards, the string has a maximum length of 256 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
userAvatarUrl
public NSString * userAvatarUrlThe user avatar, which is custom generated by the developer, is not restricted by special characters and has a maximum length of 500 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
- Available since: 2.13.0 and above.
userExtendedData
public NSString * userExtendedDataExtended field information of the user.
- Caution: This property has a value only for room users.
ZIMGroupMemberMuteConfig
Group members mute configuration.
Details
Group members mute configuration.
- Required: required.
Declared in ZIMDefines.h
Properties
duration
public int durationGroup members mute duration, the unit is seconds. The value is -1, which means permanent mute. If you need to implement non-permanent mute, the upper limit is 604800 (7 days). If you need to increase it, please contact ZEGO technical support.
- Required: Required.
ZIMGroupMemberMutedListQueryConfig
Group muted member list query configuration.
Details
Group muted member list query configuration.
Declared in ZIMDefines.h
Properties
count
public int countcount.
- Required: Required.
nextFlag
public unsigned long long nextFlagnextFlag.
- Required: Not required, it is empty by default for the first time, which means to start the query from the beginning.
ZIMGroupMemberQueryConfig
group member query configuration.
Details
group member query configuration.
Declared in ZIMDefines.h
Properties
count
public int countcount. Quantity, upper limit is 100, over 100 will be treated as 100.
- Required: Required.
nextFlag
public int nextFlagnextFlag.
- Required: Not required, it is empty by default for the first time, which means to start the query from the beginning.
ZIMGroupMemberSearchConfig
group member search configuration.
Details
group member search configuration.
Declared in ZIMDefines.h
Properties
count
unsigned int countcount.
- Required: Required.
nextFlag
unsigned int nextFlagThe flag for querying, fill in 0 when calling the interface for the first time. When calling the interface again later, fill in the nextFlag returned from the callback to retrieve the remaining data.
- Required: Not required.
keywords
NSArray<NSString *> * keywordsSearch keywords, up to 5 keywords are supported, otherwise an error will be reported. For example: passing in "1" and "2" will make the search results only show group members whose names contain both keywords "1" and "2".
- Required: No
- Caution: Up to 5 keywords can be entered, otherwise an error will be reported.
isAlsoMatchGroupMemberNickname
BOOL isAlsoMatchGroupMemberNicknameWhether the search scope includes group member user nickname. Default is false.
- Required: No.
- Default value: false
ZIMGroupMemberSimpleInfo
Group member simple information.
Declared in ZIMDefines.h
Properties
memberNickname
public NSString * memberNicknameGroup member nickname.
memberRole
public int memberRolegroup role.
userID
public NSString * userIDUser ID, a string with a maximum length of 32 bytes or less. It is customized by the developer. Only support numbers, English characters and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'.
userName
public NSString * userNameUser name, defined by you. For version 2.0.0 and onwards, the string has a maximum length of 256 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
userAvatarUrl
public NSString * userAvatarUrlThe user avatar, which is custom generated by the developer, is not restricted by special characters and has a maximum length of 500 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
- Available since: 2.13.0 and above.
userExtendedData
public NSString * userExtendedDataExtended field information of the user.
- Caution: This property has a value only for room users.
ZIMGroupMessageReceiptMemberQueryConfig
Details
Group message receipt read/unread member query configuration.
Declared in ZIMDefines.h
Properties
count
public int count- Required: Required.
nextFlag
public int nextFlagDetailed description: The next sign. Initially fill in 0, then get the next next flag from the [ZIMGroupMessageReceiptMemberListQueriedCallback] callback.
ZIMGroupMuteConfig
Group mute configuration.
Details
Group mute configuration.
- Required: required.
Declared in ZIMDefines.h
Properties
mode
duration
public int durationGroup mute duration, the unit is seconds. The value is -1, which means permanent mute. If you need to implement non-permanent mute, the upper limit is 604800 (7 days). If you need to increase it, please contact ZEGO technical support.
- Required: Required.
roles
public NSArray<NSNumber *> * rolesGroup role list.
- Required: This field is only meaningful when ZIMGroupMuteMode is set to Custom.
- Caution: When there is a 3 (ordinary user) in the list, other roles must also be present and cannot be 1, 2, or 4. If only muting ordinary users is needed, ZIMGroupMuteMode should be set to Normal.
ZIMGroupMuteInfo
Group mute information.
Details
Group mute information.
Declared in ZIMDefines.h
Properties
mode
expiredTime
public long long expiredTimeGroup mute expiration time, measured in seconds. When it's 0, there is no mute; when it's -1, it means permanent mute.
roles
public NSArray\<NSNumber *> * rolesDetail description: Role list muted in the group.
ZIMGroupOperatedInfo
The group causes the event to change the operator's information.
Details
The group causes the event to change the operator's information.
Declared in ZIMDefines.h
Properties
operatedUserInfo
public ZIMGroupMemberInfo operatedUserInfoGroup member information.
userID
public NSString * userIDThe operator's user ID.
userName
public NSString * userNameThe operator's username.
memberNickname
public NSString * memberNicknameThe operator's group member nickname.
memberRole
public int memberRoleThe operator's group member role.
ZIMGroupSearchConfig
Group search configuration.
Details
Group search configuration.
Declared in ZIMDefines.h
Properties
count
public unsigned int countcount.
- Required: Required.
nextFlag
public unsigned int nextFlagThe flag used to search groups.
- Required: The flag should be 0 when you search groups for the first time. After that, the flag should be the same as the nextFlag from the search result Callback to get the next page data.
keywords
public NSArray<NSString *> * keywordsSearch keywords. For example: passing in "1" and "2" will make the search results only show groups whose group names contain both keywords "1" and "2".
- Required: No
- Caution: Up to 5 keywords can be entered, otherwise an error will be reported.
isAlsoMatchGroupMemberNickname
public BOOL isAlsoMatchGroupMemberNicknameWhether the search scope includes group member user nicknames. Default is false.
- Required: No.
- Default value: false
isAlsoMatchGroupMemberUserName
public BOOL isAlsoMatchGroupMemberUserNameWhether the search scope includes group member user names. Default is false.
- Required: No.
- Default value: false
ZIMGroupSearchInfo
Group search info.
Details
Group search info.
Declared in ZIMDefines.h
Properties
groupInfo
userList
ZIMGroupVerifyInfo
Verification mode for joining the group.
Declared in ZIMDefines.h
Properties
joinMode
inviteMode
beInviteMode
public ZIMGroupBeInviteMode beInviteModeVerification mode for being invited to the group.
ZIMImageMessage
Image message object.
Details
Identifies the basic parameters of a message.
- Caution: If the Type parameter of the base class is Image during callback, you can force the base class message object to be of this type.
Declared in ZIMDefines.h
Properties
thumbnailLocalPath
public NSString * thumbnailLocalPathDetailed description: The thumbnail local path of the image file.
Required or not: The sender does not need to fill in it. After calling [downloadMediaFile] to download, the SDK will generate this value.
thumbnailDownloadUrl
public NSString * thumbnailDownloadUrlDetail description: Thumbnail external download URL of the image file. When developers upload thumbnails to their own servers, the SDK can pass through this field to other users.
Required or not: optional on the sender side, this field will only take effect when fileDownloadUrl is filled in.
largeImageLocalPath
public NSString * largeImageLocalPathDetailed description: The large image local path of the image file.
Required or not: The sender does not need to fill in it. After calling [downloadMediaFile] to download, the SDK will generate this value.
largeImageDownloadUrl
public NSString * largeImageDownloadUrlDetail description: large Image external download URL of the image file. When developers upload large Images to their own servers, the SDK can pass through this field to other users.
Required or not: optional on the sender side, this field will only take effect when fileDownloadUrl is filled in.
originalImageSize
public CGSize originalImageSizeDetailed description: The width and height of the original image.
Business scenario: When the user needs to draw a picture UI, the parameters used to determine the width and height of the original picture.
largeImageSize
public CGSize largeImageSizeDetailed description: The width and height of the large image.
Business scenario: When the user needs to draw a picture UI, the parameters used to determine the width and height of the large picture.
thumbnailSize
public CGSize thumbnailSizeDetailed description: Thumbnail width and height.
Business scenario: When the user needs to draw a picture UI, the parameters used to determine the width and height of the thumbnail.
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileUID
public NSString * fileUIDDetail description: The unique ID of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMImageMessageLiteInfo
Image message lite info object.
Details
Identifies the basic parameters of a image message.
Declared in ZIMDefines.h
Properties
thumbnailLocalPath
public NSString * thumbnailLocalPathDetailed description: The thumbnail local path of the image file.
Required or not: The sender does not need to fill in it. After calling [downloadMediaFile] to download, the SDK will generate this value.
thumbnailDownloadUrl
public NSString * thumbnailDownloadUrlDetail description: Thumbnail external download URL of the image file. When developers upload thumbnails to their own servers, the SDK can pass through this field to other users.
Required or not: optional on the sender side, this field will only take effect when fileDownloadUrl is filled in.
largeImageLocalPath
public NSString * largeImageLocalPathDetailed description: The large image local path of the image file.
Required or not: The sender does not need to fill in it. After calling [downloadMediaFile] to download, the SDK will generate this value.
largeImageDownloadUrl
public NSString * largeImageDownloadUrlDetail description: large Image external download URL of the image file. When developers upload large Images to their own servers, the SDK can pass through this field to other users.
Required or not: optional on the sender side, this field will only take effect when fileDownloadUrl is filled in.
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
ZIMLogConfig
Log configuration
Details
Configure the storage path of log files and the maximum log file size.
Declared in ZIMDefines.h
Properties
logPath
public NSString * logPathThe storage path of the log files. Refer to the official website document for the default path.
logSize
public unsigned long long logSizeThe maximum log file size (Bytes). The default maximum size is 5MB (5 * 1024 * 1024 Bytes)
ZIMLoginConfig
Configuration of login-related parameters.
Details
Login-related parameters.
- Use cases: Used to set different parameters during login.
Declared in ZIMDefines.h
Properties
userName
public NSString * userNameUser name.
- Use cases: Used in the scenario where user nickname is modified during login, leave it blank if no change is needed.
- Required: No.
token
public NSString * tokenToken carried during login.
- Use cases: Only pass this parameter in the scenario where token is used for authentication.
- Required: No.
isOfflineLogin
public BOOL isOfflineLoginWhether it is offline login.
- Use cases: Set this parameter to true when performing offline login.
- Required: No.
- Default value: false.
customStatus
public NSString * customStatusUser-defined status, with a default maximum of 64 bytes and a default expiration time of 1 day. After expiration, it will be reset to an empty string. When logging in, if this field is an empty string (default is an empty string), the current user's custom status will not be modified.
ZIMMediaDownloadConfig
Configuration for downloading media files.
Declared in ZIMDefines.h
Properties
messageInfoIndex
public int messageInfoIndexDetailed description: The index of the array where a file in the download multiple message is located.
- Required: Required when downloading a multiple message file.
ZIMMediaMessage
Base class for media message objects.
Details
Detail description: Identifies a media message.
This base class is the basis of all media messages and contains the properties required by media messages.
Declared in ZIMDefines.h
Properties
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileUID
public NSString * fileUIDDetail description: The unique ID of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMMediaMessageLiteInfo
Base class for media message lite info objects.
Details
Detail description: Identifies a media message lite info.
This base class is the basis of all media messages lite info and contains the properties required by media messages lite info.
Declared in ZIMDefines.h
Properties
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
ZIMMessage
Base class of message object
Details
Identifies the basic parameters of a message.
- Caution: Some of the parameters, such as Message ID, only have values during the callback. Developers do not need to assign values to these parameters when they actively create this object for sending messages.
Declared in ZIMDefines.h
Properties
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMMessageDeleteConfig
Details
Delete configurations related to messages.
Declared in ZIMDefines.h
Properties
isAlsoDeleteServerMessage
public BOOL isAlsoDeleteServerMessageWhether to remove flags for server messages.
- Required: not required.
- Default value: false.
ZIMMessageDeletedInfo
Deleted message information.
Declared in ZIMDefines.h
Properties
conversationID
public NSString * conversationIDConversation ID.
conversationType
messageList
isDeleteConversationAllMessage
public BOOL isDeleteConversationAllMessageWhether to delete all current messages in the conversation.
messageDeleteType
public ZIMMessageDeleteType messageDeleteType[onMessageDeleted] Indicates the cause of being triggered.
ZIMMessageEditConfig
Details
(Empty Class) Configurations related to editing messages.
Declared in ZIMDefines.h
ZIMMessageExportConfig
Details
Export the configuration of the message. The Config is currently a reserved parameter.
Declared in ZIMDefines.h
ZIMMessageImportConfig
Details
Import the configuration of the message. The Config is currently a reserved parameter.
Declared in ZIMDefines.h
ZIMMessageLiteInfo
Base class of message lite info object.
Details
Identifies the basic parameters of a message.
Declared in ZIMDefines.h
Properties
type
ZIMMessageMentionedInfo
message mention information.
Details
message mention information.
Declared in ZIMDefines.h
Properties
messageID
public long messageIDMessage ID, used to match the notification information to which message it belongs to
Required or not: Developers do not need to fill in.'‘’
fromUserID
public NSString * fromUserIDFrom which user.
- Required: Developers do not need to fill in."
type
public ZIMMessageMentionedType typeType of notification, used to distinguish between reminding oneself and reminding everyone.
- Required: Developers do not need to fill in.
messageSeq
public unsigned long long messageSeqmessage seq.
ZIMMessagePinStatusChangeInfo
Notification of the message pinned status changed.
Details
When a message in a conversation is successfully pinned or unpinned and a notification is raised, this structure can be used to obtain the operated message and its current pinned status.
Declared in ZIMDefines.h
Properties
pinStatus
message
ZIMMessageQueryConfig
Example Query message configuration.
Details
Example Query the configurations of messages.
Declared in ZIMDefines.h
Properties
nextMessage
public ZIMMessage nextMessageQuery the anchor point of the message.
- Required: This parameter is not required for the first query but is required for subsequent paging queries.
count
public unsigned int countNumber of query messages.
- Required: Yes.
reverse
public Boolean reverseIndicates whether the query is in reverse order.
- Required: not required.
- Default value: false.
ZIMMessageReaction
message reaction infos
Details
message reaction infos.
Declared in ZIMDefines.h
Properties
conversationID
public NSString * conversationIDconversationID.
conversationType
messageID
public long long messageIDDetail description: reaction message ID.
reactionType
public NSString * reactionTypeType of reaction, defined by you, with a maximum length of 32 bytes.
isSelfIncluded
public BOOL isSelfIncludedThe reaciton users if included myself.
totalCount
public unsigned int totalCountThe reaction users number.
userList
ZIMMessageReactionUserInfo
reaction user information.
Details
Detail description: A class describing reaction user.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDuser ID
ZIMMessageReactionUserQueryConfig
Configuration for querying reaction user list
Details
When querying reaction member, you need to configure this object.
Declared in ZIMDefines.h
Properties
nextFlag
public unsigned long long nextFlagThe flag of the paging query. For the first query, set this field to an empty string. If the "nextFlag" field of the [ZIMMessageReactionUserListQueriedCallback] callback is not an empty string, it needs to be set here to continue the query on the next page.
- Required: Not required.
count
public unsigned int countHow many members are retrieved in one query, 100 at most. Exceeding 100 will result in an error.
- Caution: To obtain members in pages to reduce overhead, it is recommended to obtain within 20 members at a time. If the value is 0, the SDK will query 100 members by default.
- Required: Required.
reactionType
public NSString * reactionTypereaction type, defined by you.
ZIMMessageReceiptInfo
receipt information.
Details
Detailed description: receipt information.
Declared in ZIMDefines.h
Properties
status
messageID
public long long messageIDMessage ID.
Business scenario: Developers can match the loaded message list according to this ID.
Is it required: No, SDK fills in.
conversationID
public NSString * conversationIDSession ID.
Business scenario: Receipt information used to indicate which session this belongs to.
Is it required: No, SDK fills in.
conversationType
public ZIMConversationType conversationTypeSession type.
Business scenario: Indicates the type of the session.
Is it required: If no, the SDK is filled.
readMemberCount
public unsigned int readMemberCountDetailed description: Indicates the number of people who have read the receipt.
Business scenario: When used to query receipt information, it can display how many people have read the message.
Is it required: no.
Default: 0.
This value indicates how many people have read the message, it is only applicable to the message has been read; if the message is not sent by yourself, the value is 0.
unreadMemberCount
public unsigned int unreadMemberCountDetailed description: Indicates the number of unread people of the receipt.
Business scenario: When used to query receipt information, it can display how many people have unread the message.
Is it required: no.
Default: 0.
This value indicates how many people have not read the message, and it is only applicable to the message that has been read; if the message is not sent by yourself, the value is 0.
isSelfOperated
public BOOL isSelfOperatedIn a multi-device login scenario, after device A sets the message receipt as read, other online multi-devices use it to distinguish whether the message receipt set by itself has been read.
readTime
public unsigned long long readTimeServer-side timestamp when the message receipt was read.
- Default value: 0.
- Caution: For the sender, this value is the timestamp when all session members read the message. For the recipient, this value is the timestamp when the message receipt was set.
ZIMMessageReceivedInfo
A structure in which the message receiving event carries relevant information.
Details
A structure in which the message receiving event carries relevant information.
- Available since: Version 2.18.0 or later.
Declared in ZIMDefines.h
Properties
isOfflineMessage
public BOOL isOfflineMessageWhether the message is sent when the current user is offline, temporarily disconnected, or logged out,If yes is true.
ZIMMessageRepliedInfo
The reply message refers to the information of the source message.
Declared in ZIMDefines.h
Properties
state
sentTime
public unsigned long long sentTimeThe send timestamp of the source message (in UTC).
senderUserID
public NSString * senderUserIDThe sender user ID of the source message.
messageSeq
public unsigned long long messageSeqThe seq of the source message.
messageInfo
messageID
public unsigned long long messageIDThe ID of the source message.
ZIMMessageRepliedListQueryConfig
Configuration for querying reply message list.
Declared in ZIMDefines.h
Properties
nextFlag
public unsigned long long nextFlagThe flag of paginated query. When querying for the first time, set this field to 0. If the "nextFlag" field of the [queryMessageRepliedList] callback is not 0, it means that the query has not ended yet. You need to set it here to continue querying the next page.
count
public unsigned int countThe number of queries per query. The upper limit is 100. Exceeding 100 will result in an error.
- Required: Required.
ZIMMessageRevokeConfig
Details
Revoke configurations related to messages.
Declared in ZIMDefines.h
Properties
revokeExtendedData
public NSString * revokeExtendedDatarevoking additional messages.
- Required: Not required.
pushConfig
public ZIMPushConfig pushConfigConfigures the offline push function, If Android or iOS platform is integrated, it is strongly recommended to configure this.
- Required: Not required.
ZIMMessageRootRepliedCountInfo
Information about the number of replies in the reply message tree.
Declared in ZIMDefines.h
Properties
conversationID
public NSString * conversationIDConversation ID.
conversationType
messageID
public unsigned long long messageIDroot message id.
count
public unsigned int countThe number of replies for the reply message tree.
ZIMMessageRootRepliedInfo
Reply to the root message of the message tree.
Declared in ZIMDefines.h
Properties
state
sentTime
public unsigned long long sentTimeThe send timestamp of the root message.
senderUserID
public NSString * senderUserIDThe sender user ID of the root message.
repliedCount
public unsigned int repliedCountThe number of replies for the reply message tree.
message
ZIMMessageSearchConfig
Message search configuration.
Details
Message search configuration.
Declared in ZIMDefines.h
Properties
nextMessage
ZIMMessage * nextMessagePaging fetch flag, which means fetching messages before or after nextMessage, with "before" or "after" determined by the order value. On the first search, nextMessage is null. On subsequent searches, nextMessage needs to pass in the last message in the message list queried last time.
count
unsigned int countcount It is recommended to keep the number of items less than 20 to reduce performance overhead.
- Required: Required.
order
ZIMMessageOrder orderWhen the "order" is "DESCENDING" during message search, it means querying messages with sending time earlier than nextMessage. If it's the first message query (i.e. nextMessage is null), then query from the last message stored locally forward. When "order" is "ASCENDING", it means querying messages with sending time later than nextMessage. If it's the first message query (i.e. nextMessage is null), then query from the first message stored locally backward. The default is "DESCENDING".
keywords
NSArray<NSString *> * keywordsSearch keywords, up to 5 keywords are supported, otherwise an error will be reported. For example: passing in "1" and "2" will make the search results only show messages that contain both keywords "1" and "2".
messageTypes
NSArray<NSNumber *> messageTypesMessage types, can be used to specify message types. Support passing in multiple types.
subMessageTypes
NSArray<NSNumber *> subMessageTypesThe subtypes of custom messages have a value range of [0,200]. Developers can use this range to search for specific custom types.
senderUserIDs
NSArray<NSString *> senderUserIDsThe user ID of the message sender, supporting up to 5 IDs. For example, if "zego2023" is passed in, the search results will only display all the messages sent by the user "zego2023" in that conversation.
startTime
long long startTimeThe starting point of the search, in milliseconds, with a default value of 0. The format is UTC timestamp.
endTime
long long endTimeThe ending point of the search, which must be greater than the startTime, in milliseconds. The default value is 0 and the format is UTC timestamp.
ZIMMessageSendConfig
Details
Configurations related to sending messages.
Declared in ZIMDefines.h
Properties
pushConfig
public ZIMPushConfig pushConfigConfigures the offline push function, If Android or iOS platform is integrated, it is strongly recommended to configure this.
- Required: Not mandatory.
priority
hasReceipt
public BOOL hasReceipt- Required: not required.
- Default value: false.
isNotifyMentionedUsers
public BOOL isNotifyMentionedUsers- Required: not required.
- Default value: true.
isRetrySend
public BOOL isRetrySendWhether to resend the failed message.
- Required: No.
disableUnreadMessageCount
public BOOL disableUnreadMessageCount- Required: No.
- Default value: false.
ZIMMessageSendNotification
The notification callback when the message is sent, you can get the relevant information before the message object is sent through this notification
Details
Detailed description: Through this notification, developers can obtain relevant information before the message object is sent, such as localMessageID, etc.
Business scenario: When developers need to record and cache relevant information before sending a message, they can obtain it by listening to the notification.
If no monitoring is required, it can be passed null.
Declared in ZIMDefines.h
Properties
onMessageAttached
public ZIMMessageAttachedCallback onMessageAttached- Required: not required. If no monitoring is required, it can be passed empty.
Default: empty.
onMediaUploadingProgress
public ZIMMediaUploadingProgress onMediaUploadingProgress- Required: not required. If no monitoring is required, it can be passed empty.
onMultipleMediaUploadingProgress
public ZIMMultipleMediaUploadingProgress onMultipleMediaUploadingProgressThrough this notification, developers can obtain the progress callback of the media file upload in the multiple message.
- Use cases: Developers can use it to display the upload progress of each media file and the total upload progress to improve the UI interaction experience.
- Required: not required.
- Available since: 2.19.0 and above.
ZIMMessageSentStatusChangeInfo
Notice of Room Message Status Change.
Details
Notice of Room Message Status Change.
Declared in ZIMDefines.h
Properties
message
status
reason
public NSString * reasonThis field stores the reason why a message was rejected by ZEGOCLOUD In-app Chat due to interception by the server-side callback on message not sent yer. If you have enabled the ZEGOCLOUD In-app Chat content moderation service and require this field to capture failure reasons caused by failed content moderation, contact ZEGOCLOUD Technical Support for configuration.
ZIMMultipleMessage
Multiple message object.
Details
Detailed description: Identifies a multiple message.
Only supports the multiple of text, image, file, audio, video, and custom messages, and the number of array does not exceed 20.
Declared in ZIMDefines.h
Properties
messageInfoList
public NSArray<ZIMMessageLiteInfo *> * messageInfoListIt can contain text, image, file, audio, video, and custom messages. The array length does not exceed 20.
- Use cases: It can be used to send text and image multiple messages.
- Recommended value: The total number of items does not exceed 20, the maximum number of image is 10, and the maximum number of file, audio, video and custom message is 1 each. The size and format restrictions of image, file, audio, and video are the same as those of the corresponding rich media messages.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMMultipleMessageLiteInfo
Multiple message lite info object.
Details
Identifies the basic parameters of a multiple message.
Declared in ZIMDefines.h
Properties
messageInfoList
public NSArray<ZIMMessageLiteInfo *> * messageInfoListDetail description: A list of elements that compose the message.
type
ZIMOfflinePushPrivateMessageTemplate
Offline push private message template.
Details
According to [OPUSH DMS template check ability to access instructions] (https://open.oppomobile.com/documentation/page/info?id=12391), OPPO in new message classification on the basis of the new push DMS templates, After you have configured the private message template in the OPPO console, if you need to apply the corresponding template during push notifications, you can assign a value to the privateMessageTemplate in ZIMPushConfig.
Declared in ZIM.h
Properties
templateID
public NSString * templateIDThe ID of the private message template pushed by OPPO must be carried when sending the corresponding private message template. If the category of OPPO in the resourceID is set to be classified as Content and Marketing, this field is invalid. Details please see [OPUSH DMS template check ability to access instructions] (https://open.oppomobile.com/documentation/page/info?id=12391
titleParameters
public NSString * titleParametersjson string, OPPO push title template filling parameters. For example, the private message template ID title template is: Welcome to , Welcome you. The content of this parameter is :" {"city":" Beijing}".
contentParameters
public NSString * contentParametersjson string, OPPO push content template filling parameter. Example: The content template corresponding to the private message template ID is: Welcome to . The content of this parameter is :" {"userName":" Tom ", "city":" Shenzhen City "}.
ZIMPushConfig
Description
push configuration.Details
Details: Configuration before sending offline push.
Declared in ZIMDefines.h
Properties
title
public NSString * titleUsed to set the push title.
- Required: Not required.
content
public NSString * contentUsed to set offline push content.
- Required: Not required.
payload
public NSString * payloadThis parameter is used to set the pass-through field of offline push.
- Required: Not required.
resourcesID
public NSString * resourcesIDA string defined by you, no more than 32 characters in length, used to map advanced configurations for offline push from multiple manufacturers, abstracting the push configurations of various manufacturers into a single push strategy that you define yourself. For detailed introduction and configuration steps, please refer to ResourcesID introduction.
- Required: Not required.
enableBadge
public BOOL enableBadgePush whether to carry corner information switch.
badgeIncrement
public int badgeIncrementThe incremental index number carried by the push.
voIPConfig
public ZIMVoIPConfig voIPConfigIf you use Flutter, RN ZPNs, offline push receiving device has iOS and uses VoIP push type, you can customize some VoIP options with this parameter.
privateMessageTemplate
public ZIMOfflinePushPrivateMessageTemplate privateMessageTemplateIf you use OPPO push notifications, you can apply the OPPO Private message template through this structure; otherwise, you can ignore it and it will be left blank by default.
ZIMRevokeMessage
Base class for revoke message objects.
Details
Detail description: Identifies a revoke message.
This base class is the basis of all revoke messages and contains the properties required by revoke messages.
Declared in ZIMDefines.h
Properties
revokeType
revokeStatus
revokeTimestamp
public int revokeTimestampDetail description: revoke timestamp.
operatedUserID
public NSString * operatedUserIDDetail description: operated user ID.
revokeExtendedData
public NSString * revokeExtendedDataDetail description: revoke extended data.
originalMessageType
originalTextMessageContent
public NSString * originalTextMessageContentoriginal text message content
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMRevokeMessageLiteInfo
Base class for revoke message lite info objects.
Declared in ZIMDefines.h
Properties
type
ZIMRoomAdvancedConfig
Room advanced config.
Details
Room‘s advanced config.
Declared in ZIMDefines.h
Properties
roomAttributes
public std::unordered_map<std::string, std::string> & roomAttributesRoom attributes of a room.
roomDestroyDelayTime
public unsigned int roomDestroyDelayTimeRoom destruction time delayed, the unit is seconds. The maximum room destroy delay time is 3 hours.
- Use cases: If the number of rooms is 0, set the room time to ensure that the room exists during this period.
- Required: Not mandatory.
ZIMRoomAttributesBatchOperationConfig
The behavior attribute set by the room attribute.
Details
The behavior attribute set by the room attribute.
Declared in ZIMDefines.h
Properties
isDeleteAfterOwnerLeft
public BOOL isDeleteAfterOwnerLeftRoom attributes are automatically deleted after the owner leaves the room.
- Required: Not required.
isForce
public BOOL isForceWhether the operation is mandatory, that is, the property of the room whose owner is another user can be modified.
- Required: Not required.
isUpdateOwner
public BOOL isUpdateOwnerWhether to update the owner of the room attribute involved.
- Required: Not required.
ZIMRoomAttributesDeleteConfig
The behavior attribute set by the room attribute.
Details
The behavior attribute set by the room attribute.
Declared in ZIMDefines.h
Properties
isForce
public BOOL isForceWhether the operation is mandatory, that is, the property of the room whose owner is another user can be deleted.
- Required: Not required.
ZIMRoomAttributesSetConfig
The behavior attribute set by the room attribute.
Details
The behavior attribute set by the room attribute.
Declared in ZIMDefines.h
Properties
isDeleteAfterOwnerLeft
public BOOL isDeleteAfterOwnerLeftRoom attributes are automatically deleted after the owner leaves the room.
- Required: Not required.
isForce
public BOOL isForceWhether the operation is mandatory, that is, the property of the room whose owner is another user can be modified.
- Required: Not required.
isUpdateOwner
public BOOL isUpdateOwnerWhether to update the owner of the room attribute involved.
- Required: Not required.
ZIMRoomAttributesUpdateInfo
Notice of Room Attribute Change.
Details
Notice of Room Attribute Change.
Declared in ZIMDefines.h
Properties
action
public ZIMRoomAttributesUpdateAction actionBehavioral information of room attribute change notification.
roomAttributes
public std::unordered_map<std::string, std::string> roomAttributesRoom attributes.
ZIMRoomFullInfo
The room details object.
Details
Identifies the basic parameters of a message.
- Caution: Identifies the detailed information of a room.
Declared in ZIMDefines.h
Properties
baseInfo
ZIMRoomInfo
Room information object.
Details
Identifies a unique room.
Declared in ZIMDefines.h
Properties
roomID
public NSString * roomIDRoom ID. a string with a maximum length of 128 bytes. It is customized by the developer and supports only digits, English characters, , and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', ''.
roomName
public NSString * roomNameRoom name, It is customized by the developer .a string with a maximum length of 64 bytes or less
ZIMRoomMemberAttributesInfo
Room user attribute information.
Details
Detail description: A class describing room user attributes, including UserID and its corresponding attributes.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDDetail description: User ID.
attributes
public NSDictionary<NSString *,NSString *> * attributesDetailed description: room user attributes.
ZIMRoomMemberAttributesOperatedInfo
Room user attribute operation information.
Details
Detail description: room user attribute operation information, including attributes of successful operation and keys of failure.
Declared in ZIMDefines.h
Properties
attributesInfo
public ZIMRoomMemberAttributesInfo attributesInfoDetailed description: room user attribute information.
errorKeys
public NSArray<NSString *> * errorKeysDetail description: The key of the room user attribute operation failure.
ZIMRoomMemberAttributesQueryConfig
Room user attribute query configuration.
Details
Detailed description: room user attribute query configuration.
Declared in ZIMDefines.h
Properties
nextFlag
public NSString * nextFlagDetail description: Query anchor for room user properties.
Required or not: not required, it is empty by default for the first time, which means to start the query from the beginning.
count
public unsigned int count- Required: Required.
ZIMRoomMemberAttributesSetConfig
Room user property settings configuration.
Details
Detail description: room user attribute setting configuration, including configurable whether to retain user attributes after the user leaves, etc.
Business scenarios: When setting room user attributes, developers can choose to use them according to their actual application scenarios.
Declared in ZIMDefines.h
Properties
isDeleteAfterOwnerLeft
public BOOL isDeleteAfterOwnerLeft- Required: not required.
Default: true.
ZIMRoomMemberAttributesUpdateInfo
Room user attribute update information.
Details
Detailed description: Room user attribute update information.
Declared in ZIMDefines.h
Properties
attributesInfo
public ZIMRoomMemberAttributesInfo attributesInfoDetailed description: room user attributes.
ZIMRoomMemberInfo
Room user information.
Details
Detail description: A class describing room user.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDUser ID, a string with a maximum length of 32 bytes or less. It is customized by the developer. Only support numbers, English characters and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'.
userName
public NSString * userNameUser name, defined by you. For version 2.0.0 and onwards, the string has a maximum length of 256 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
userAvatarUrl
public NSString * userAvatarUrlThe user avatar, which is custom generated by the developer, is not restricted by special characters and has a maximum length of 500 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
- Available since: 2.13.0 and above.
userExtendedData
public NSString * userExtendedDataExtended field information of the user.
- Caution: This property has a value only for room users.
ZIMRoomMemberQueryConfig
Configuration for querying room member.
Details
When querying member, you need to configure this object.
Declared in ZIMDefines.h
Properties
nextFlag
public NSString * nextFlagThe flag of the paging query. For the first query, set this field to an empty string. If the "nextFlag" field of the callback is not an empty string, it needs to be set here to continue the query on the next page.
- Required: Not required.
count
public unsigned int countHow many messages are retrieved in one query.
- Caution: To obtain messages in pages to reduce overhead, it is recommended to obtain within 100 messages at a time. If the value is 0, the SDK will query 100 room member by default.
- Required: Required.
ZIMRoomOperatedInfo
Room operation information.
Details
Detailed description: Room operation information.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDDetail description: UserID of the operator.
ZIMSelfUserInfo
Carry user information and rules of the current user.
Details
Carry user information and rules of the current user.
Declared in ZIMDefines.h
Properties
userRule
public ZIMUserRule userRuleRules for the current user, setting information.
userFullInfo
ZIMSelfUserRule
User's own rule class.
Declared in ZIMDefines.h
Properties
offlinePushRule
ZIMSendingMessageCancelConfig
Details
(Empty Class) Configurations related to cancel sending messages.
Declared in ZIMDefines.h
ZIMSubscribedUserStatusQueryConfig
QuerySubscribedUserStatusList query subscription list interface configuration items.
Details
QuerySubscribedUserStatusList query subscription list interface configuration items.
Declared in ZIMDefines.h
Properties
userIDs
public NSArray\<NSString *\> * userIDsPass this value if you need to check whether the specified user is in the subscription list of the current user, otherwise all users in the subscription list will be returned.
ZIMTextMessage
Normal text message object.
Details
Identifies the basic parameters of a message.
- Caution: If the Type parameter of the base class is Text during callback, you can force the base class message object to be of this type.
Declared in ZIMDefines.h
Properties
message
public NSString * messageThe content of the text message.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
Methods
ZIMTextMessage
ZIMTextMessageLiteInfo
Normal text message lite info object.
Details
Identifies the basic parameters of a message lite info.
- Caution: If the Type parameter of the base class is Text during callback, you can force the base class message lite info object to be of this type.
Declared in ZIMDefines.h
Properties
message
public NSString * messageThe content of the text message.
type
Methods
ZIMTextMessageLiteInfo
ZIMTipsMessage
Tips message object.
Details
Identifies a tips info message.
- Caution: If the Type parameter of the base class is Tips during callback, you can force the base class message object to be of this type.
Declared in ZIMDefines.h
Properties
event
operatedUser
public ZIMUserInfo * operatedUserThe initiator of the action corresponding to the tips message.
targetUserList
public NSArray<ZIMUserInfo> * targetUserListThe target user list for the operation corresponding to the tips message.
changeInfo
public ZIMTipsMessageChangeInfo * changeInfoAdditional information for the operation corresponding to the tips message.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMTipsMessageChangeInfo
Tips message additional information.
Details
Tips message additional information.
Declared in ZIMDefines.h
Properties
type
ZIMTipsMessageGroupChangeInfo
Tips Additional information about change events related to the message group.
Details
Tips Additional information about change events related to the message group.
Declared in ZIMDefines.h
Properties
groupDataFlag
public unsigned int groupDataFlagIf there are multiple changes in the group name, group avatar, and group announcement, you need to know which ones have changed based on the value of this field. Among them, 0b0001 is the group name, 0b0010 is the group notice, and 0b0100 is the group avatar.
groupName
public NSString * groupNameIf the group name is changed, the changed value will be displayed here.
groupNotice
public NSString * groupNoticeIf the group notice is changed, the changed value will be displayed here.
groupAvatarUrl
public NSString * groupAvatarUrlIf the group avatar url is changed, the changed value will be displayed here.
groupMutedInfo
public ZIMGroupMuteInfo * groupMutedInfoIf the group mute info is changed, the changed value will be displayed here.
type
ZIMTipsMessageGroupMemberChangeInfo
Tips Additional information about change events related to the message group member.
Details
Tips Additional information about change events related to the message group member.
Declared in ZIMDefines.h
Properties
memberRole
public int memberRoleIf a group member's role changes, the changed role will be displayed here.
muteExpiredTime
public unsigned long long muteExpiredTimeIf the group member's muting expired time changes, the new muting expired time will be displayed here.
groupNewOwner
public ZIMGroupMemberSimpleInfo * groupNewOwnerDisplays information about the new group owner when the group owner leaves the group or is kicked from the group by the server.
- Use cases: Used for UI display when the group owner leaves the group or is kicked from the group by the server.
type
ZIMTipsMessagePinStatusChangeInfo
Tips Additional information about change events related to the message pinned or unpined.
Details
Tips Additional information about change events related to the message pinned or unpined.
Declared in ZIMDefines.h
Properties
isPinned
public BOOL isPinnedDescribes whether the current operation is a pin operation or an unpin operation.
type
ZIMUserFullInfo
User full information object.
Details
Identifies a unique user.
- Caution: that the userID must be unique under the same appID, otherwise mutual kicks out will occur. It is strongly recommended that userID corresponds to the user ID of the business APP, that is, a userID and a real user are fixed and unique, and should not be passed to the SDK in a random userID. Because the unique and fixed userID allows ZEGO technicians to quickly locate online problems.
Declared in ZIMDefines.h
Properties
baseInfo
userAvatarUrl
public NSString * userAvatarUrl- Required: not required.
Use restrictions: The value is a maximum of 500 bytes and contains no special characters.
extendedData
public NSString * extendedData- Required: not required.
Privacy Protection Statement: Do not pass in sensitive information involving personal privacy, including but not limited to mobile phone numbers, ID numbers, passport numbers, real names, etc.
ZIMUserInfo
User information object.
Details
Identifies a unique user.
- Caution: that the userID must be unique under the same appID, otherwise mutual kicks out will occur. It is strongly recommended that userID corresponds to the user ID of the business APP, that is, a userID and a real user are fixed and unique, and should not be passed to the SDK in a random userID. Because the unique and fixed userID allows ZEGO technicians to quickly locate online problems.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDUser ID, a string with a maximum length of 32 bytes or less. It is customized by the developer. Only support numbers, English characters and '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'.
userName
public NSString * userNameUser name, defined by you. For version 2.0.0 and onwards, the string has a maximum length of 256 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
userAvatarUrl
public NSString * userAvatarUrlThe user avatar, which is custom generated by the developer, is not restricted by special characters and has a maximum length of 500 bytes.
- Required: Not required.
- Privacy reminder: Please do not provide sensitive personal information, including but not limited to mobile phone numbers, ID card numbers, passport numbers, and real names.
- Available since: 2.13.0 and above.
userExtendedData
public NSString * userExtendedDataExtended field information of the user.
- Caution: This property has a value only for room users.
ZIMUserOfflinePushRule
Data class of the user's offline push rule.
Details
Data class of the user's offline push rule.
Declared in ZIMDefines.h
Properties
onlinePlatforms
public List\<int> onlinePlatformsWith the data in the class member variables notToReceiveOfflinePushPlatforms collocation is used. OnlinePlatforms specified platform, online notToReceiveOfflinePushPlatforms specified platform will not receive offline push.
- Value range: Please enter the enumeration value corresponding to the platform in the ZIMPlatformType enumeration.
notToReceiveOfflinePushPlatforms
public List\<int> notToReceiveOfflinePushPlatformsWith the data in the class member variables onlinePlatforms collocation is used. OnlinePlatforms specified platform, online notToReceiveOfflinePushPlatforms specified platform will not receive offline push.
- Value range: Please enter the enumeration value corresponding to the platform in the ZIMPlatformType enumeration.
ZIMUserStatus
User status data
Details
Contains data about the user's online status.
Declared in ZIMDefines.h
Properties
userID
public NSString * userIDA unique identifier for a single user.
onlineStatus
public ZIMUserOnlineStatus onlineStatusEnumeration that represents the current online status of the user.
onlinePlatforms
public List\<Number> onlinePlatformsThe list of online platforms of the current user can be used to display the online platforms of the user, such as iPhone online and PC online. Please refer to ZIMPlatform for the meanings of the numbers.
lastUpdateTime
public long lastUpdateTimeTimestamp when user onlineStatus or customStatus was last changed, whichever is the greater.
lastOnlineStatusUpdateTime
public long lastOnlineStatusUpdateTimeThe timestamp of the last change of the user onlineStatus, which can be used to show that the user was offline/logged in before xxx minutes.
lastCustomStatusUpdateTime
public long lastCustomStatusUpdateTimeThe timestamp when User customStatus was last changed, which can be used to show when the custom status was last changed.
customStatus
public NSString * customStatusUser-defined status. The default maximum value is 64 bytes. The default expiration time is 1 day. At login, if the field is an empty string (which is the default), the current user's custom state is not modified.
ZIMUserStatusSubscribeConfig
subscribeUsersStatus Configuration items of the online status interface for subscribing users in batches.
Details
subscribeUsersStatus Configuration items of the online status interface for subscribing users in batches.
Declared in ZIMDefines.h
Properties
subscriptionDuration
public unsigned int subscriptionDurationUsed to set the duration of this subscription.
- Use cases: This field is required.
- Value range: :1 to 43200 (30 days), and the unit is minute.
- Caution: After the subscription is expired, the subscribed user will be deleted from the subscription list, and the status changes of the user will not be synchronized to the subscriber.
ZIMUserStatusSubscription
User status subscription information. Contains the user's online status, a list of online platforms, subscription expiration time stamps, and more.
Details
User status subscription information. Contains the user's online status, a list of online platforms, subscription expiration time stamps, and more.
- Available since: 2.18.0
Declared in ZIMDefines.h
Properties
userStatus
subscribeExpiredTime
public long subscribeExpiredTimeThe timestamp when the user's subscription expired.
ZIMUsersInfoQueryConfig
User information query configuration.
Details
Detailed description: User information query configuration, you can choose to query from the local or from the server. Query the unlimited frequency constraints from the local, and query the limited frequency constraints from the server. You can only query the detailed configuration of 10 users within 10 s.
Declared in ZIMDefines.h
Properties
isQueryFromServer
public BOOL isQueryFromServer- Required: not required.
Default: false.
ZIMVideoMessage
Video message object.
Declared in ZIMDefines.h
Properties
videoDuration
public unsigned long long videoDuration- Required: Required by the sender, if not filled, the video message will fail to be sent when sending local video messages.
videoFirstFrameLocalPath
public NSString * videoFirstFrameLocalPathDetailed description: The video first frame local path of the video file.
Required or not: The sender does not need to fill in it. After calling [downloadMediaFile] to download, the SDK will generate this value.
videoFirstFrameDownloadUrl
public NSString * videoFirstFrameDownloadUrlDetail description: Video first frame external download URL of the video file. When developers upload thumbnails to their own servers, the SDK can pass through this field to other users.
Required or not: optional on the sender side, this field will only take effect when fileDownloadUrl is filled in.
videoFirstFrameSize
public CGSize videoFirstFrameSizeDetailed description: The width and height of the first frame of the video.
Business scenario: When the user needs to draw a picture UI, the parameters used to determine the width and height of the first frame of the video.
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileUID
public NSString * fileUIDDetail description: The unique ID of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
messageID
public long long messageIDThe unique ID that identifies this message.
- Use cases: Can be used to index other messages.
- Caution: When the developer actively creates a message, there is no need to modify this parameter. This parameter only has a value during callback.
timestamp
public unsigned long long timestampIdentifies the sending time of a message
- Use cases: Used to present the sending time of a message, and can be used for message sorting.
- Caution: This is a standard UNIX timestamp, in milliseconds.
senderUserID
public NSString * senderUserIDDisplays the userID of the sender of this message.
conversationID
public NSString * conversationIDConversation ID. Ids of the same conversation type are unique.
direction
public ZIMMessageDirection directionUsed to describe whether a message is sent or received.
sentStatus
conversationType
public ZIMConversationType conversationTypeThe type of conversation to which the message belongs.
conversationSeq
public unsigned long long conversationSeqIndicates the sequence number of the message in the conversation.
orderKey
public long long orderKeyThe larger the orderKey, the newer the message, and can be used for ordering messages.
localMessageID
public long long localMessageIDSDK locally generated MessageID, developers do not need to pay attention to.
isUserInserted
public BOOL isUserInsertedDetail description: Describes whether the message is a message inserted by the developer through [insertMessageToLocalDB].
Default: false.
receiptStatus
public ZIMMessageReceiptStatus receiptStatusDescribe the receipt status of the message
Business scenario: used to determine the status of the current message in the receipt message
extendedData
public NSString extendedDatamessage extension field
- Use cases: You can add extended fields to the message and send it to the peer
- Required: no
- Caution: the length is 1k, you can contact technical support for configuration
- Available since: 2.6.0 or higher
localExtendedData
public NSString * localExtendedDataThe expandable message field visible only on this end can store additional information locally, Through [updateMessageLocalExtendedData] change and currently has a length limit of 128K. If you have special requirements, please contact ZEGO technical support for configuration.
isBroadcastMessage
public BOOL isBroadcastMessageWhether the message is pushed by all employees.
- Required: Internal assignment.
isMentionAll
public BOOL isMentionAllWhether to mention everyone. It can be presented as "@Everyone".
- Use cases: For example, it can be used in groups or rooms.
- Required: No.
- Default value: false.
- Recommended value: Set to true if you need to mention everyone.
- Caution: This value does not add the "@Everyone" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
mentionedUserIDs
public NSArray\<NSString *> * mentionedUserIDsWhether to mention everyone. It can be presented as "@User".
- Use cases: For example, it can be used in sending messages.
- Required: No.
- Caution: This value does not add the "@User" to the message text. Developers need to implement it themselves
- Available since: 2.14.0 or above
messageSeq
public unsigned long long messageSeqIndicates the sequence number of the message in the conversation.
rootRepliedCount
public unsigned int rootRepliedCountThe number of reply messages corresponding to the root message of the reply message tree.
repliedInfo
public ZIMMessageRepliedInfo repliedInfoInformation about the source message referenced by the reply message.
editorUserID
public NSString * editorUserIDThe latest editor's userID for this message.
editedTime
public unsigned long long editedTimeThe latest editing timestamp for this message.
isGroupTargetedMessage
public BOOL isGroupTargetedMessageIdentify if this message is group targeted message.
pinnedUserID
public NSString * pinnedUserIDThe last user who pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
pinnedTime
public long long pinnedTimeThe last timestamp when pinned this message.
- Use cases: This parameter is only assigned in [queryPinnedMessageList] or [onMessagePinStatusChanged].
ZIMVideoMessageLiteInfo
Video message lite info object.
Details
Identifies a video message.
Usage restrictions: Only supports video files with video encoding formats of H264 and H265. After the message is sent successfully, the width and height information of the first frame of the video can be obtained.
Declared in ZIMDefines.h
Properties
videoDuration
public unsigned long long videoDuration- Required: Required by the sender, if not filled, the video message will fail to be sent when sending local video messages.
videoFirstFrameLocalPath
public NSString * videoFirstFrameLocalPathDetailed description: The video first frame local path of the video file.
Required or not: The sender does not need to fill in it. After calling [downloadMediaFile] to download, the SDK will generate this value.
videoFirstFrameDownloadUrl
public NSString * videoFirstFrameDownloadUrlDetail description: Video first frame external download URL of the video file. When developers upload thumbnails to their own servers, the SDK can pass through this field to other users.
Required or not: optional on the sender side, this field will only take effect when fileDownloadUrl is filled in.
fileLocalPath
public NSString * fileLocalPath- Required: If a local file is sent, this parameter must be set by the sender. Otherwise, the message fails to be sent.
fileDownloadUrl
public NSString * fileDownloadUrlDetail description: The external download url of the media message is used for the developer to transparently transmit the media file to other users by filling in this URL when the developer uploads the media file to his own server.
Required or not: If an external URL is sent, this parameter is mandatory on the sender end.
fileName
public NSString * fileNameDetail description: The filename of the media file.
Required or not: If you are sending an external URL, you need to fill in this value and include the file extension. If a local file is sent, the value is optional.
fileSize
public unsigned long long fileSizeDetail description: The size of the media file.
Required or not: The sender does not need to fill in, this value is generated by the SDK.
type
ZIMVoIPConfig
Provides information about the iOS VoIP offline push.
Details
Provides information about the iOS VoIP offline push.
Declared in ZIMDefines.h
Properties
iOSVoIPHandleType
public ZIMCXHandleType iOSVoIPHandleTypeThe type of contact information for the VoIP caller, by default, is generic.
iOSVoIPHandleValue
public NSString * iOSVoIPHandleValueThe contact information of the VoIP caller. It is related to iOSVoIPHandleType. When iOSVoIPHandleType is PhoneNumber, the Value is a sequence of digits; when iOSVoIPHandleType is EmailAddress, the Value is an email address; when the contact information is of other types, the Value typically follows some domain-specific format, such as a username, numeric ID, or URL.
iOSVoIPHasVideo
public BOOL iOSVoIPHasVideoVideo call or not. The default value is audio
ZPNsConfig
ZPNs push configuration class.
Details
ZPNs push configuration class.
- Use cases: Add the required configuration items pushed by each vendor and a Boolean value for whether to enable them.
Declared in ZPNs.h
Properties
apptype
private int apptypeUsed to specify the number of offline push configurations for the current project corresponding to the ZEGO console, default to the first set.
- Use cases: If you need to use the same App ID on different bundle IDs/packages.
- Required: No.
- Default value: 1.
- Recommended value: It should be consistent with the 'App type' configured in the ZEGOCLOUD Console for the offline push certificate associated with the current bundle ID/package name.
ZPNsManager
Methods
unregisterAPNs
- (void)unregisterAPNs;Call this method to de-register when offline push is not required.
- When to call /Trigger: Called when de-registration is required.
- Caution: It needs to be called after [registerAPNs] is called.
- Available since: 2.5.0 or later.
