Class
ZIM
详情
ZIM SDK 主类。
Declared in ZIM.cs
方法
Create
public static ZIM | null Create(ZIMAppConfig appConfig)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| appConfig | ZIMAppConfig | ZEGO 为开发者签发的应用 ID 和应用签名,请前往 ZEGO 控制台申请。 |
详情
创建 ZIM 实例,用于后续调用其他成员函数。
- 调用时机:在调用其他成员函数之前,必须先调用此 API 创建出 ZIM 示例。
- 影响范围:不调用此函数将导致其他成员函数无法调用。
- 平台差异:Android 平台下在调用此函数时,除了传入 AppID 之外,还必须将 Application 类对象传入。
- 支持版本:2.3.0 及以上。
- 使用限制:当前仅支持创建一个实例,重复调用将返回 [null]。
- 注意事项:1、目前 [Create] 函数最多只能创建一个实例,若多次调用,则只有第一次返回有效实例,其余都为 [null]。开发者应自行保存 ZIM 实例,并且在使用 ZIM 业务功能的过程中确保实例的生命周期处于可用状态;或者也可以在调用了 [Create] 之后使用 [GetInstance] 获取其单例对象调用其他成员函数。
2、若使用此函数创建实例,必须同时传入 AppID 与 AppSign(Web 平台除外)。
返回值
ZIM 实例。
GetVersion
public static string GetVersion()ZIM.cs获取 SDK 版本号。
- 业务场景:1. SDK 在运行过程中,当开发者发现与预期情况不符时,可将问题与相关日志提交给 ZEGO 技术人员定位,ZEGO 技术人员可能需要 SDK 的版本的信息来辅助定位问题。
- 开发者也可以收集此信息作为 App 所使用的 SDK 的版本信息,以便统计线上各版本 App 对应的各版本 SDK。
- 调用时机:在任意时刻均可调用。
- 支持版本:1.1.0 及以上。
SDK 版本号。
GetInstance
public static ZIM GetInstance()ZIM.cs获取 ZIM 单例对象,用于后续调用其他成员函数。
- 调用时机:必须在调用 [Create] 创建实例之后,才能调用此函数获取到单例对象,否则将返回 [null]。
- 相关接口:[Create]。
- 支持版本:2.3.0 及以上。
SetLogConfig
public static void SetLogConfig(ZIMLogConfig config)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMLogConfig | 日志配置对象。 |
详情
设置日志相关配置,包括日志路径与日志大小。由于 SDK 内部有默认的日志路径,因此除非开发者有强烈需要自定义日志路径的需求,否则一般情况下不建议客户自行设置。
- 默认值:/storage/Android/data/[Application ID]/files/ZIMLogs
- 调用时机:必须在 [Create] 之前调用。
- 生命周期:调用 [Create] 之前设置,调用 [Create] 时生效。若开发者在下一次 [Create] 时没有再设置新的日志配置,则上一次配置依然生效。
- 平台差异:不同平台的默认路径不一样,请参考默认值。
- 相关参考:详细内容请参考 https://doc-zh.zego.im/faq/IM_sdkLog?product=IM&platform=all 。
- 支持版本:1.1.0 及以上。
- 注意事项:若开发者在 [Create] 之后调用,SDK 则保存此配置,直至等到下一次 [Create] 时生效。
SetCacheConfig
public static void SetCacheConfig(ZIMCacheConfig config)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMCacheConfig | 缓存配置对象。 |
详情
设置 SDK 缓存文件路径。由于 SDK 内部有默认的路径,因此除非开发者有强烈需要自定义路径的需求,否则一般情况下不建议客户自行设置。
- 默认值:Android:/storage/Android/data/[packageName]/files/ZIMCaches
iOS:
/Library/Caches/ZIMCaches macOS:(沙箱)/Library/Containers/[Bundle ID]/Data/Library/Caches/ZIMCaches / (非沙箱)~/Library/Caches/ZIMCaches Windows:C:\Users[Your UserName]\AppData[App Name]ZEGO.SDK\ZIMCaches - 调用时机:必须在 [Create] 之前调用。
- 生命周期:调用 [Create] 之前设置,调用 [Create] 时生效。若开发者在下一次 [create] 时没有再设置新的缓存配置,则上一次配置依然生效。
- 平台差异:不同平台的默认路径不一样,请参考默认值。
- 支持版本:1.1.0 及以上。
- 注意事项:若开发者在 [Create] 之后调用,SDK 则保存此配置,直至等到下一次 [Create] 时生效。
Login
public abstract void Login(ZIMUserInfo userInfo,string token,ZIMLoggedInCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userInfo | ZIMUserInfo | 用于标识用户的信息。包含用户的唯一 ID和用户名。注意 userID 在同一个 appID 下需唯一,否则会出现互踢的情况。 注意:不支持通过此接口设置 ZIMUserInfo.userAvatarUrl。 |
| token | string | 由开发者业务服务器下发的鉴权 Token,用以保证登录的安全性。Token 有效时长不能超过 24 天。 |
| callback | ZIMLoggedInCallback | 开发者可以通过设置该回调来接收登录的状态。 |
详情
登录 ZIM 服务。[login] 为 ZIM 功能最重要的一个步骤,在使用任何其他功能之前,都需要先进行登录。
- 调用时机:必须在调用 [create] 创建实例之后,调用其他实例函数之前调用此函数。
- 隐私保护声明:提醒用户尽量不要在 userID 参数里传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 相关回调:开发者除了能在 callback 参数中得到登录结果之外,在登录请求中和登录成功/失败后,还将收到 [onConnectionStateChanged] 回调,用于判断当前用户的登录状态。
常见问题解答: 与 ZEGO 的 RTC 登录有什么不同?RTC 的登录指的是登录到房间、ZIM 的登录为登录到账户。
- 相关参考:详情请参考鉴权 Token 生成 https://doc-zh.zego.im/article/11617 。
- 支持版本:1.1.0 及以上。
- 注意事项:在使用 ZIM 的单聊、房间、收发消息等功能之前,必须先调用此函数进行登录,通过登录结果可向用户展示 UI。
返回值
登录的结果回调。
Login
public abstract void Login(ZIMUserInfo userInfo,ZIMLoggedInCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userInfo | ZIMUserInfo | 用于标识用户的信息。包含用户的唯一 ID和用户名。注意 userID 在同一个 appID 下需唯一,否则会出现互踢的情况。 注意:不支持通过此接口设置 ZIMUserInfo.userAvatarUrl。 |
| callback | ZIMLoggedInCallback | 开发者可以通过设置该回调来接收登录的状态。 |
详情
登录 ZIM 服务。[Login] 为 ZIM 功能最重要的一个步骤,在使用任何其他功能之前,都需要先进行登录。
- 调用时机:必须在调用 [Create] 创建实例之后,调用其他实例函数之前调用此函数。
- 隐私保护声明:提醒用户尽量不要在 userID 参数里传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 相关回调:开发者除了能在 callback 参数中得到登录结果之外,在登录请求中和登录成功/失败后,还将收到 [OnConnectionStateChanged] 回调,用于判断当前用户的登录状态。
- 支持版本:2.4.0 及以上。
- 注意事项:在使用 ZIM 的单聊、房间、收发消息等功能之前,必须先调用此函数进行登录,通过登录结果可向用户展示 UI。
返回值
登录的结果回调。
RenewToken
public abstract void RenewToken(string token,ZIMTokenRenewedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| token | string | 由开发者业务服务器下发的 Token,用以保证安全性。生成规则详见 ZEGO 官网文档。 |
| callback | ZIMTokenRenewedCallback | 更新 Token 的结果的回调。 |
详情
更新鉴权 Token,使鉴权 Token 在过期之后能够及时更新,以继续正常使用 ZIM 的功能。
- 调用时机:必须在调用 [Create] 创建实例之后,通过该实例来调用此函数。
- 生命周期:该函数的生命周期依赖鉴权 Token 的有效期,由开发者业务方自行决定。
- 相关参考:详情请参考鉴权 Token 生成 https://doc-zh.zego.im/article/11617 。
- 支持版本:1.1.0 及以上。
- 注意事项:开发者在收到 [OnTokenWillExpire] 回调后,开发者需要及时向自己的鉴权服务器请求重新生成一个 Token。
返回值
更新 Token 的结果的回调。
QueryUsersInfo
public void QueryUsersInfo(List\<string> userIDs,ZIMUsersInfoQueryConfig config,ZIMUsersInfoQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userIDs | List<string> | userID 数组。 |
| config | ZIMUsersInfoQueryConfig | 查询用户信息配置。 |
| callback | ZIMUsersInfoQueriedCallback | 查询用户信息的操作回调,返回查询的结果。 |
详情
通过该接口可以通过 userID 来查询获得对应的 UserInfo。
- 调用时机:必须在调用 [Create] 创建实例之后,调用 [Login] 登录后才可使用。
- 相关回调:[ZIMUsersInfoQueriedCallback]。
- 支持版本:2.3.0 及以上。
- 使用限制:单次调用接口,查询 UserID 不能超过 10 个; 在 10 秒内,多次调用接口,所有查询的 UserID 累计总数不能超过 10 个。
返回值
查询用户信息的结果的回调。
UpdateUserName
public abstract void UpdateUserName(string userName,ZIMUserNameUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userName | string | 详情描述:需要设置的用户名称。 取值范围:2.0.0 及以后版本,支持最大 256 字节的字符串。 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。 |
| callback | ZIMUserNameUpdatedCallback | 修改用户名的回调函数。 |
详情
在用户登录后,调用该接口可以更新用户自身的用户名。
- 调用时机/通知时机:用户登录后。
- 隐私保护声明:尽量不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 相关回调:[ZIMUserNameUpdatedCallback]。
- 相关接口:[updateUserExtendedData] 与 [QueryUsersInfo]。
- 支持版本:2.2.0 及以上。
- 注意事项:该接口不支持修改房间内用户名。
返回值
修改用户名的回调结果。
UpdateUserAvatarUrl
public abstract void UpdateUserAvatarUrl(string userAvatarUrl,ZIMUserAvatarUrlUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userAvatarUrl | string | 准备修改为的用户头像 URL。 |
| callback | ZIMUserAvatarUrlUpdatedCallback | 更新用户头像结果的回调。 |
详情
在用户登录后,调用该接口可以设置或者更新用户自身的用户头像 URL。
- 调用时机/通知时机:用户登录后。
- 相关回调:[ZIMUserAvatarUrlUpdatedCallback]。
- 相关接口:[QueryUsersInfo]。
- 支持版本:2.3.0 及以上。
- 使用限制:无特殊字符限制,最大 500 字节。
- 注意事项:用户头像本身需要开发者自行存储,ZIM 只作为透传 URL 保存其用户信息。
返回值
修改用户头像 URL 的回调结果。
UpdateUserExtendedData
public abstract void UpdateUserExtendedData(string extendedData,ZIMUserExtendedDataUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| extendedData | string | 准备修改为的用户扩展字段。 |
| callback | ZIMUserExtendedDataUpdatedCallback | 修改用户扩展字段的回调函数。 |
详情
在用户登录后,调用该接口可以更新用户自身的用户扩展字段。
- 调用时机/通知时机:用户登录后。
- 隐私保护声明:尽量不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 相关回调:[ZIMUserExtendedDataUpdatedCallback]。
- 相关接口:[UpdateUserName] 与 [QueryUsersInfo]。
- 支持版本:2.2.0 及以上。
返回值
修改用户扩展字段的回调结果。
UploadLog
public abstract void UploadLog(ZIMLogUploadedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| callback | ZIMLogUploadedCallback | 开发者可以通过设置该回调来接收日志上传的结果。 |
详情
默认情况下,SDK 会在 App 默认目录创建日志文件并打印,每个日志文件默认最大 5MB,三个日志文件循环覆盖写入。当调用此函数时 SDK 会自动将日志文件打包并上传到 ZEGO 服务器。
- 业务场景:开发者可在 App 提供业务上的“反馈”渠道,当用户反馈的问题属于 ZEGO SDK 时,可调用此函数将 SDK 的本地日志信息上传,并联系 ZEGO 技术支持协助定位用户问题。
- 调用时机:在 [Create] 后。
- 相关回调:开发者可以通过 callback 参数获取上传结果。
- 支持版本:1.2.0 及以上。
- 使用限制:10分钟内如果反复调用此接口,只有最后一次调用生效。
- 注意事项:在调用本接口上传日志后,如果过快的调用 [Destory] 或 退出 App,则可能存在失败的情况。建议等待几秒,等收到上传成功回调后,再调用 [Destory] 或 退出 App。
返回值
日志上传的结果。
Logout
public abstract void Logout()ZIM.cs登出 ZIM 服务。
- 调用时机:必须在调用 [Create] 创建实例之后,通过该实例来调用此函数。
- 相关回调:开发者在登出后,将收到 [OnConnectionStateChanged] 回调,此时登录状态为 [Disconnected]。
- 支持版本:1.1.0 及以上。
- 注意事项:在调用 [Logout] 之后,将无法继续使用 ZIM 的单聊、房间、收发消息等功能。若开发者需要再次使用 ZIM 服务,必须先调用 [Login] 再次登录。
Destroy
public abstract void Destroy()ZIM.cs释放 ZIM 实例使用的资源,在不再需要使用 ZIM 的时候必须调用此函数释放占用的内存资源,否则可能将发生内存泄漏的情况。
- 调用时机:在不需要再使用 ZIM 的时候调用,一般可以在对 ZIM 对象置空之前调用。
- 支持版本:1.1.0 及以上版本。
- 注意事项:在调用此函数之后,ZIM 内部功能将不可再使用,且所有回调通知都将不再触发。若需要继续使用 ZIM 功能,则请开发者重新调用 [Create] 创建新的实例。
CallInvite
public abstract void CallInvite(List\<string> invitees,ZIMCallInviteConfig config,ZIMCallInvitationSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| invitees | List<string> | 被邀请者列表。 |
| config | ZIMCallInviteConfig | 呼叫邀请相关配置。 |
| callback | ZIMCallInvitationSentCallback | 发起呼叫邀请的回调。 |
详情
当主叫发起呼叫邀请后,被叫可通过 [CallAccept] 来接受呼叫邀请或者 [CallReject] 来拒绝邀请。
- 业务场景:当需要对一个或者多个用户发起邀请时,可调用此接口。
- 调用时机:通过 [Create] 创建 ZIM 实例后可调用。
- 相关回调:[ZIMCallInvitationSentCallback]。
- 支持版本:2.0.0 及以上。
- 注意事项:呼叫邀请有超时时间,超时时间到了呼叫邀请将结束,使用 [ZIMCallInviteConfig] 中的 timeout 来控制超时时间,范围为1-600,单位为秒。暂不支持离线呼叫邀请,接收或拒绝后呼叫邀请随即结束。invitees 最多为 9 人。
返回值
发起呼叫的结果回调。
CallCancel
public abstract void CallCancel(List\<string> invitees,string callID,ZIMCallCancelConfig config,ZIMCallCancelSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| invitees | List<string> | 被邀请者列表。 |
| callID | string | 欲取消的呼叫邀请ID。 |
| config | ZIMCallCancelConfig | 取消呼叫邀请的相关配置。 |
| callback | ZIMCallCancelSentCallback | 取消呼叫邀请的回调。 |
详情
当主叫发起呼叫邀请后,在超时时间前可通过该接口取消该呼叫邀请。
- 业务场景:需要取消之前发起的呼叫邀请时,可通过该接口来取消呼叫邀请。
- 调用时机:通过 [Create] 创建 ZIM 实例后可调用。
- 相关回调:[ZIMCallCancelSentCallback]。
- 支持版本:2.0.0 及以上。
- 注意事项:呼叫邀请的超时时间到后再取消呼叫邀请会失败。
返回值
呼叫取消的结果回调。
CallAccept
public abstract void CallAccept(string callID,ZIMCallAcceptConfig config,ZIMCallAcceptanceSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| callID | string | 欲接受的呼叫邀请 ID。 |
| config | ZIMCallAcceptConfig | 接受呼叫邀请的相关配置。 |
| callback | ZIMCallAcceptanceSentCallback | 接受呼叫邀请的回调。 |
详情
当主叫发起呼叫邀请后,被叫可通过该接口接受这次呼叫邀请。
- 业务场景:ZIM SDK在接受后无相关业务逻辑,开发者可以自定义接受后的开发逻辑,如收到其他主叫发起的邀请后,通过该接口来接受呼叫邀请,之后使用 RTC 开启语音聊天功能。
- 调用时机:通过 [Create] 创建 ZIM 实例后可调用。
- 相关回调:[ZIMCallAcceptanceSentCallback]。
- 支持版本:2.0.0 及以上。
- 注意事项:被叫接受未被邀请的 callID 会失败。超时后接受会报错。
返回值
接收呼叫的结果回调。
CallReject
public abstract void CallReject(string callID,ZIMCallRejectConfig config,ZIMCallRejectionSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| callID | string | 欲拒绝的呼叫邀请ID。 |
| config | ZIMCallRejectConfig | 拒绝呼叫邀请的相关配置。 |
| callback | ZIMCallRejectionSentCallback | 拒绝呼叫邀请的回调。 |
详情
当主叫发起呼叫邀请后,被叫可通过该接口拒绝这次呼叫邀请。
- 业务场景:收到其他主叫发起的邀请后,可通过该接口来拒绝呼叫邀请。
- 调用时机:通过 [Create] 创建 ZIM 实例后可调用。
- 相关回调:[ZIMCallRejectionSentCallback]。
- 支持版本:2.0.0 及以上。
- 注意事项:被叫拒绝未被邀请的callid会失败,ZIM SDK在接受后无相关业务逻辑,开发者可以自定义拒绝后的开发逻辑。
返回值
拒绝呼叫的结果回调。
CallQuit
public abstract void CallQuit(string callID,ZIMCallQuitConfig config,ZIMCallQuitSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| callID | string | 欲退出的呼叫邀请ID。 |
| config | ZIMCallQuitConfig | 退出呼叫邀请的相关配置。 |
| callback | ZIMCallQuitSentCallback | 退出呼叫的回调。 |
详情
退出进阶模式呼叫。
- 调用时机:呼叫建立后,呼叫状态为 Accepted 的用户可调用此接口。
- 相关回调:[ZIMCallQuitSentCallback]。
- 支持版本:2.9.0 及以上。
- 注意事项:被叫退出未接受的呼叫的 callid 会失败,ZIM SDK 在接受后无相关业务逻辑,开发者可以自定义退出呼叫后的开发逻辑。
返回值
退出呼叫的结果回调。
CallEnd
public abstract void CallEnd(string callID,ZIMCallEndConfig config,ZIMCallEndSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| callID | string | 欲结束的呼叫ID。 |
| config | ZIMCallEndConfig | 结束呼叫邀请的相关配置。 |
| callback | ZIMCallEndSentCallback | 结束呼叫邀请的回调。 |
详情
结束进阶模式呼叫。
- 调用时机:呼叫为进阶模式且用户状态为 "Accepted"。
- 相关回调:[ZIMCallEndSentCallback]。
- 支持版本:2.9.0 及以上。
- 注意事项:不在呼叫内的用户调用会失败。ZIM SDK 在接受后无相关业务逻辑,开发者可以自定义结束后的开发逻辑。
返回值
结束呼叫邀请的结果回调。
CallingInvite
public abstract void CallingInvite(List\<String> invitees,string callID,ZIMCallingInviteConfig config,ZIMCallingInvitationSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| invitees | List<String> | 邀请的用户 ID 列表。 |
| callID | string | 当前进阶模式呼叫的 callID。 |
| config | ZIMCallingInviteConfig | 邀请加入呼叫的相关配置。 |
| callback | ZIMCallingInvitationSentCallback | 邀请加入当前呼叫的回调。 |
详情
在增强模式下,当主叫发起呼叫邀请后,呼叫内的用户可通过该接口继续邀请其他用户加入呼叫。
- 调用时机:主叫调用 [callInvite] 发起进阶模式的呼叫邀请后使用,或被叫接受进阶模式呼叫邀请后。
- 相关回调:[ZIMCallingInvitationSentCallback]。
- 支持版本:2.9.0 及以上。
- 注意事项:不在呼叫内的用户调用会失败。ZIM SDK 在接受后无相关业务逻辑,开发者可以自定义加入呼叫后的开发逻辑。呼叫默认最多只能包含 9 名用户。
返回值
邀请加入当前呼叫的结果回调。
QueryCallInvitationList
public abstract void QueryCallInvitationList(ZIMCallInvitationQueryConfig config,ZIMCallInvitationListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMCallInvitationQueryConfig | 查询呼叫邀请表的相关配置。 |
| callback | ZIMCallInvitationListQueriedCallback | 查询呼叫邀请列表的结果回调。 |
详情
用户可通过该查询呼叫邀请列表。
- 业务场景:用户可通过该查询呼叫邀请列表,用作界面展示或其他功能。
- 调用时机:通过 [Create] 创建 ZIM 实例, 登录后可调用。
- 相关回调:[ZIMCallInvitationListQueriedCallback]。
- 支持版本:2.9.0 及以上。
返回值
查询呼叫邀请列表的结果回调。
CreateGroup
public abstract void CreateGroup(ZIMGroupInfo groupInfo,List\<string> userIDs,ZIMGroupCreatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupInfo | ZIMGroupInfo | 将要被创建的群的配置信息。 |
| userIDs | List<string> | 被邀请入群的用户列表。 |
| callback | ZIMGroupCreatedCallback | 创建群组的结果的回调。 |
详情
可调用该接口来创建一个群组,调用该接口的人为该群群主。群名不填则为空字符串。
- 业务场景:需要创建多人聊天场景时,可通过该接口创建并加入群组。
- 调用时机:通过 [Create] 创建 ZIM 实例并 [Login] 登录之后。
- 相关回调:通过 [ZIMGroupCreatedCallback] 回调可拿到创建群组的结果。
- 相关接口:可通过 [JoinGroup] 加入群组,[LeaveGroup] 离开群组, [DismissGroup] 解散群组。
- 支持版本:2.0.0及以上。
- 使用限制:登录后可用,登出后不可用。userIDs 最大 100 人。
SearchLocalGroups
public abstract void SearchLocalGroups(ZIMGroupSearchConfig config,ZIMGroupsSearchedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMGroupSearchConfig | 搜索群组的配置。 |
| callback | ZIMGroupsSearchedCallback | 搜索的结果回调。 |
详情
该方法用于搜索本地群组。
- 业务场景:当需要通过关键字等配置搜索本地群组时,可以调用该接口进行搜索。
- 调用时机/通知时机:调用 [login] 登录后。
- 相关回调:[ZIMGroupsSearchedCallback]
- 支持版本:2.9.0 及以上。
- 使用限制:登录后生效,登出后失效。
返回值
搜索的结果回调。
SearchLocalGroupMembers
public abstract void SearchLocalGroupMembers(string groupID,ZIMGroupMemberSearchConfig config,ZIMGroupMembersSearchedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 已加入群组的 ID。 |
| config | ZIMGroupMemberSearchConfig | 搜索群成员的配置。 |
| callback | ZIMGroupMembersSearchedCallback | 搜索群成员的结果回调。 |
详情
该方法用于搜索群成员。
- 业务场景:当需要通过关键字等配置搜索本地群成员时,可以调用该接口进行搜索。
- 相关回调:[ZIMGroupMembersSearchedCallback]
- 支持版本:2.9.0 及以上。
- 使用限制:登录后生效,登出后失效。
返回值
搜索群成员的结果回调。
CreateGroup
public abstract void CreateGroup(ZIMGroupInfo groupInfo,List<string> userIDs,ZIMGroupAdvancedConfig config,ZIMGroupCreatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupInfo | ZIMGroupInfo | 将要被创建的群的配置信息。 |
| userIDs | List<string> | 被邀请入群的用户列表。 |
| config | ZIMGroupAdvancedConfig | 创建群组的相关配置。 |
| callback | ZIMGroupCreatedCallback | 创建群组的结果的回调。 |
详情
可调用该接口来创建一个群组,调用该接口的人为该群群主。
- 业务场景:需要创建多人聊天场景时,可通过该接口创建并加入群组。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupCreatedCallback] 回调可拿到创建群组的结果。
- 相关接口:可通过 [JoinGroup] 加入群组,[LeaveGroup] 离开群组, [DismissGroup] 解散群组。
- 支持版本:2.0.0及以上。
- 使用限制:登录后可用,登出后不可用 。 userIDs 最大为 100 人, 一个群最大支持 500 人。
返回值
创建群组的结果的回调。
JoinGroup
public delegate void JoinGroup(string groupID,ZIMGroupJoinedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 将要加入的群组ID。 |
| callback | ZIMGroupJoinedCallback | 加入群组的结果的回调。 |
详情
当一个群组被创建后,其他用户可以通过 [JoinGroup] 加入此群组,如果群组不存在,则加入失败。
- 业务场景:需要加入多人聊天场景时,可通过该接口加入群组。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupJoinedCallback] 回调可拿到加入房间的结果。
- 相关接口:可通过 [CreateGroup] 创建群组,[LeaveGroup] 离开群组, [DismissGroup] 解散群组。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后可用,登出后不可用 。若已在群中加入会返回加入成功。人满后加入失败。
返回值
加入群组的结果的回调。
LeaveGroup
public abstract void LeaveGroup(string groupID,ZIMGroupLeftCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 将要离开的群组ID。 |
| callback | ZIMGroupLeftCallback | 离开群组的结果的回调。 |
详情
当用户加入一个群组后,用户可以通过该接口离开此群组。
- 业务场景:需要退出多人聊天场景时,可通过该接口离开群组。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例后并登录后可调用。
- 相关回调:通过 [ZIMGroupLeftCallback] 回调可拿到离开房间的结果。
- 相关接口:可通过 [CreateGroup] 创建群组,[JoinGroup] 加入群组, [DismissGroup] 解散群组。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后可用,登出后不可用 。
- 注意事项:群主退出群组时,群主身份将自动转让给加入本群组最早的那个成员;所有成员退出群组时,群组自动解散。
返回值
离开群组的结果的回调。
DismissGroup
public void DismissGroup(string groupID,ZIMGroupDismissedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 将要解散的群组ID。 |
| callback | ZIMGroupDismissedCallback | 解散群组的结果的回调。 |
详情
当一个群组被创建后,用户可通过 [DismissGroup] 解散此群组。
- 业务场景:创建多人聊天群组后,不需要在此群组进行聊天互动,可通过此接口解散群组。
- 调用时机:通过 [CreateGroup] 创建群组后可以调用。
- 相关回调:通过 [ZIMGroupDismissedCallback] 回调可拿到解散房间的结果,通过 [OnGroupStateChanged] 监听回调可拿到房间状态。
- 相关接口:可通过 [CreateGroup] 创建群组, [JoinGroup] 加入群组,[LeaveGroup] 离开群组。
- 支持版本:2.0.0 及以上。
- 使用限制:非群主不能解散群。
返回值
解散群组的结果的回调。
KickGroupMembers
public abstract void KickGroupMembers(List\<string> userIDs,string groupID,ZIMGroupMemberKickedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userIDs | List<string> | 被踢出群的用户列表。 |
| groupID | string | 将要踢出成员的群组ID。 |
| callback | ZIMGroupMemberKickedCallback | 踢出群组的结果的回调。 |
详情
当用户加入群组后,可以通过此方法将其踢出群组。
- 业务场景:需要将一个或多个用户踢出群组时,可通过此方法实现该功能。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupMemberKickedCallback] 回调可拿到将用户踢出群组的结果。
- 相关接口:可通过 [InviteUsersIntoGroup] 邀请目标用户进入群组。
- 支持版本:2.0.0 及以上。
- 使用限制:非群主不能踢人。
- 注意事项:该接口无需对方同意,也无需对方在线,踢出后无法接受群相关回调。被踢出后历史消息和会话都会保留,且仍可进入该群。
返回值
踢出群组的结果的回调。
InviteUsersIntoGroup
public void InviteUsersIntoGroup(List\<string> userIDs,string groupID,ZIMGroupUsersInvitedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userIDs | List<string> | 被邀请进群的用户列表,单次操作最多支持数量为 100。 |
| groupID | string | 将用户邀请进入的群组ID。 |
| callback | ZIMGroupUsersInvitedCallback | 邀请用户进入群组的结果的回调。 |
详情
当需要邀请用户加入群组,可以通过此方法将其邀请加入群组,如果群组不存在,则邀请失败。
- 业务场景:需要邀请一个或多个用户邀请加入群组时,可通过此方法实现该功能。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupMemberinvitedCallback] 回调可拿到邀请用户加入群组的结果。
- 相关接口:可通过 [KickGroupMembers] 将目标用户踢出群组。
- 支持版本:2.0.0 及以上。
- 使用限制:非群主不能邀请。
- 注意事项:该接口无需对方同意,也无需对方在线。
返回值
邀请用户进入群组的结果的回调。
TransferGroupOwner
public abstract void TransferGroupOwner(string toUserID,string groupID,ZIMGroupOwnerTransferredCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| toUserID | string | 转换后的群主ID。 |
| groupID | string | 将要更换群主的群组ID。 |
| callback | ZIMGroupOwnerTransferredCallback | 转让群主的结果的回调。 |
详情
当一个群组被创建后,群主可以通过此方法将群主转让给指定用户。
- 业务场景:在多人群组聊天场景中,可通过该接口转让群主。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupOwnerTransferredCallback] 回调可拿到转让群主的结果。
- 支持版本:2.0.0 及以上。
- 使用限制:非群主不能转让群主。
返回值
转让群主的结果的回调。
UpdateGroupName
public abstract void UpdateGroupName(string groupName,string groupID,ZIMGroupNameUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupName | string | 需要更新的群名称。 |
| groupID | string | 将要被更新群名的群组ID。 |
| callback | ZIMGroupNameUpdatedCallback | 更新群名称的结果的回调。 |
详情
当一个群组被创建后,用户可通过调用该方法修改群名称。
- 业务场景:创建群组后,用户需要更改群名称。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupNameUpdatedCallback] 回调可拿到更改群名称的结果,通过 [OnGroupNoticeUpdated] 可拿到更新群名称信息。
- 支持版本:2.0.0 及以上。
- 使用限制:群成员与群主可修改群名称,名称最大长度100字节。
返回值
更新群名称的结果的回调。
UpdateGroupAvatarUrl
public abstract void UpdateGroupAvatarUrl(string groupAvatarUrl,string groupID,ZIMGroupAvatarUrlUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupAvatarUrl | string | 需要更新的群头像 URL。 使用限制: 无特殊字符限制,最大 500 字节。 |
| groupID | string | 将要被更新群头像 URL 的群组ID。 |
| callback | ZIMGroupAvatarUrlUpdatedCallback | 更新群头像 URL 的结果的回调。 |
详情
当一个群组被创建后,用户可通过调用该方法修改群头像 URL。
- 业务场景:创建群组后,用户需要更改群头像 URL。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录、处于对应群中时可调用。
- 相关回调:通过 [ZIMGroupAvatarUrlUpdatedCallback] 回调可拿到更改群头像的结果,通过 [OnGroupAvatarUrlUpdated] 可拿到更新群头像信息。
- 支持版本:2.3.0 及以上。
- 使用限制:群成员与群主可修改群头像,最大长度500字节。
返回值
更新群头像 URL 的结果的回调。
UpdateGroupNotice
public abstract void UpdateGroupNotice(string groupNotice,string groupID,ZIMGroupNoticeUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupNotice | string | 预更新的群公告。 |
| groupID | string | 将要被更新群公告的群组ID。 |
| callback | ZIMGroupNoticeUpdatedCallback | 更新群公告的结果的回调。 |
详情
当一个群组被创建后,用户可以通过此方法更新群公告。
- 业务场景:需要在群组中,更新群公告。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupNoticeUpdateCallback] 回调可拿到更新群公告的结果,通过 [OnGroupNoticeUpdated] 可拿到更新群公告信息。
- 支持版本:2.0.0 及以上。
- 使用限制:只有群成员才能更新群公告,最大字节数为300字节,无特殊字符限制。
返回值
更新群公告的结果的回调。
QueryGroupInfo
public abstract void QueryGroupInfo(string groupID,ZIMGroupInfoQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 将要被查询群信息的群组ID。 |
| callback | ZIMGroupInfoQueriedCallback | 查询群组信息的结果的回调。 |
详情
查询一个已被创建的群组信息。
- 业务场景:需获取群组信息进行展示。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupInfoQueriedCallback] 回调可拿到查询群组信息的结果。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后可用,登出后不可用 。
返回值
查询群组信息的结果的回调。
QueryGroupList
public abstract void QueryGroupList(ZIMGroupListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| callback | ZIMGroupListQueriedCallback | 查询群列表的结果的回调。 |
详情
查询当前所有群列表。
- 业务场景:需要获取群列表进行展示。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupListQueiedCallback] 回调可拿到查询当前所有群列表的结果。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后可用,登出后不可用 。
返回值
查询群列表的结果的回调。
SetGroupAttributes
public abstract void SetGroupAttributes(Dictionary<string, string> groupAttributes,string groupID,ZIMGroupAttributesOperatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupAttributes | Dictionary<string, string> | 群属性。 |
| groupID | string | 被设置群属性的groupID. |
| callback | ZIMGroupAttributesOperatedCallback | 设置群组属性的回调。 |
详情
当一个群组已存在时,所有该群用户可以该方法设置群属性。
- 业务场景:新增对群组描述的扩展字段信息,如群的家族、标签、行业类别等。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupAttributesOperatedCallback] 回调可拿到设置群属性的结果。
- 相关接口:可通过 [DeleteGroupAttributes] 删除群属性,[QueryGroupAttributes] 查询群属性,[QueryAllGroupAttributes] 查询全部群属性。
- 支持版本:2.0.0 及以上。
- 使用限制:只有群成员才可设置群属性。
返回值
设置群组属性的回调。
DeleteGroupAttributes
public abstract void DeleteGroupAttributes(List<string> keys,string groupID,ZIMGroupAttributesOperatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| keys | List<string> | 欲删除的群属性的key。 |
| groupID | string | 将要被删除群属性的群组ID。 |
| callback | ZIMGroupAttributesOperatedCallback | 删除群组属性的结果的回调。 |
详情
当一个群组已存在时,用户可以调用该方法删除群属性,该接口群主与群内成员均可调用。
- 业务场景:删除对群组描述的扩展字段信息。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupAttributesOperatedCallback] 回调可拿到删除群属性的结果。
- 相关接口:可通过 [SetGroupAttributes] 设置群属性,[QueryGroupAttributes] 查询群属性,[QueryAllGroupAttributes] 查询全部群属性。
- 支持版本:2.0.0 及以上。
- 使用限制:只有群成员才可删除群属性。
返回值
删除群组属性的结果的回调。
QueryGroupAttributes
public abstract void QueryGroupAttributes(List\<string> keys,string groupID,ZIMGroupAttributesQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| keys | List<string> | 欲查询的群属性的key。 |
| groupID | string | 将要被查询群属性的群组ID。 |
| callback | ZIMGroupAttributesQueriedCallback | 查询群属性的结果的回调。 |
详情
当一个群组被创建后,可以通过此方法查询指定的群属性。
- 业务场景:需要查询指定群属性进行展示的场景。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并 [Login] 登录之后。
- 相关回调:通过 [ZIMGroupAttributesQuriedCallback] 回调可拿到查询指定群属性的结果。
- 相关接口:[QueryAllGroupAttributes] 查询所有群属性。
- 支持版本:2.0.0及以上。
- 使用限制:登录后可用,登出后不可用 。
返回值
查询群属性的结果的回调。
QueryGroupAllAttributes
public abstract void QueryGroupAllAttributes(string groupID,ZIMGroupAttributesQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 将要被查询全部群属性的群组ID。 |
| callback | ZIMGroupAttributesQueriedCallback | 查询群组全部属性的结果的回调。 |
详情
当一个群组被创建后,可以通过此方法查询所有的群属性。
- 业务场景:需要查询所有群属性进行展示的场景。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupAttributesQuriedCallback] 回调可拿到查询所有群属性的结果。
- 相关接口:[QueryGroupAttributes] 查询指定群属性。
- 支持版本:2.0.0 及以上。
返回值
查询群组全部属性的结果的回调。
SetGroupMemberRole
public abstract void SetGroupMemberRole(int role,string forUserID,string groupID,ZIMGroupMemberRoleUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| role | int | 设置的群角色。 - 2: 管理员。 - 3: 普通成员。 - 其他值:可自定义群角色,权限与普通成员一致,建议取值大于 100。 |
| forUserID | string | 被设置群角色的用户ID。 |
| groupID | string | 将要被设置群角色的群组ID。 |
| callback | ZIMGroupMemberRoleUpdatedCallback | 设置群成员角色的结果的回调。 |
详情
当一个群组被创建后,用户可以通过该方法设置群成员角色。
- 业务场景:在多人群组中,需要对指定群成员角色进行设置。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupMemberRoleUpdatedCallback] 回调可拿到设置群成员角色的结果。
- 支持版本:2.0.0 及以上。
- 使用限制:非群主不可用。
- 注意事项:群主 role 为1 、管理员 role 为 2、普通成员 role 为 3。可调用该接口修改,role 不可修改为 1。如需自定义 role,建议将数值设置为 100 以后,其权限与普通成员一致。
返回值
设置群成员角色的结果的回调。
SetGroupMemberNickname
public abstract void SetGroupMemberNickname(string nickname,string forUserID,string groupID,ZIMGroupMemberNicknameUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| nickname | string | 设置的成员昵称。 |
| forUserID | string | 被设置群昵称的用户ID。 |
| groupID | string | 被设置群成员昵称的群组ID。 |
| callback | ZIMGroupMemberNicknameUpdatedCallback | 设置群成员昵称的结果的回调。 |
详情
当一个群组被创建后,用户可以通过该方法设置群成员昵称。
- 业务场景:需要对群成员设置昵称。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupMemberNicknameUpdatedCallback] 回调可拿到设置群成员昵称的结果。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后可用,登出后不可用 。群主可以修改自己和群内成员的昵称,群内成员只能修改自己的昵称。
- 注意事项:群成员昵称限制最大长度为 100,无特殊字符限制。
返回值
设置群成员昵称的结果的回调。
QueryGroupMemberInfo
public abstract void QueryGroupMemberInfo(string userID,string groupID,ZIMGroupMemberInfoQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userID | string | 被查询成员信息的用户ID。 |
| groupID | string | 将要被查询成员信息的群组ID。 |
| callback | ZIMGroupMemberInfoQueriedCallback | 查询群成员信息的结果的回调。 |
详情
当一个群组被创建后,用户可以通过该方法查询指定群成员信息。
- 业务场景:需要获取指定群成员信息进行展示或交互。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupMemberInfoQueriedCallback] 回调可拿到查询指定群成员信息的结果。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后可用,登出后不可用 。
返回值
查询群成员信息的结果的回调。
QueryGroupMemberList
public abstract void QueryGroupMemberList(string groupID,ZIMGroupMemberQueryConfig config,ZIMGroupMemberListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 将要被查询群成员列表的群组ID。 |
| config | ZIMGroupMemberQueryConfig | 群成员查询的配置。 |
| callback | ZIMGroupMemberListQueriedCallback | 查询群成员列表的回调。 |
详情
当一个群组被创建后,用户可以通过该方法查询群成员列表。
- 业务场景:需要获取指定群成员列表信息进行展示或交互。
- 调用时机/通知时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:通过 [ZIMGroupMemberListQueriedCallback] 回调可拿到查询群成员列表的结果。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后可用,登出后不可用 。
返回值
查询群成员列表的回调。
QueryGroupMemberCount
public void QueryGroupMemberCount(string groupID,ZIMGroupMemberCountQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| groupID | string | 需要查询群人数的群的 ID。 |
| callback | ZIMGroupMemberCountQueriedCallback | 查询群人数的回调。 |
详情
用户仅需要展示群内人数且不需要拉取群成员列表时,可通过该接口获取群内人数。
- 调用时机:通过 [Create] 创建 ZIM 实例并登录后可调用。
- 相关回调:[ZIMGroupMemberCountQueriedCallback]。
- 支持版本:2.2.0 及以上。
- 使用限制:该函数仅可查询用户当前已进入的群。
返回值
查询群人数的回调。
QueryConversation
public void QueryConversation(string conversationID,ZIMConversationType conversationType,ZIMConversationQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 会话ID. |
| conversationType | ZIMConversationType | 会话类型。 |
| callback | ZIMConversationQueriedCallback | 会话查询的回调。 |
详情
该方法可以查询指定会话。
- 业务场景:需要得知指定会话的相关信息时,这时可以调用该接口来获得数据源。
- 调用时机/通知时机:登录后可调用。
- 相关回调:[ZIMConversationQueriedCallback]。
- 支持版本:2.8.0 及以上。
- 使用限制:没有使用频率的限制,登录后可用,登出后不可用。
返回值
查询会话的结果回调。
QueryConversationList
public abstract void QueryConversationList(ZIMConversationQueryConfig config,ZIMConversationListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMConversationQueryConfig | 会话查询的配置。 |
| callback | ZIMConversationListQueriedCallback | 会话查询的回调。 |
详情
该方法可以查询已登录用户的会话列表。
- 业务场景:登录后需要展示已有的消息会话,这时可以调用该接口来获得数据源。
- 调用时机/通知时机:登录后可调用。
- 相关回调:[ZIMConversationListQueriedCallback]。
- 相关接口:[DeleteConversation] 删除会话;[ClearConversationUnreadMessageCount] 清除会话未读数。
- 支持版本:2.0.0 及以上。
- 使用限制:没有使用频率的限制,登录后可用,登出后不可用。
- 注意事项:nextConversation 为查询消息的铆点,首次查询时可以传空,后续查询时可以将最早的一条 conversation 做为 nextconversation 来查询更早以前的会话,分页查询时,[ZIMConversationQueryConfig] 中的 count 填每次拉取的会话数量。
返回值
查询会话列表的结果回调。
QueryConversationPinnedList
public void QueryConversationPinnedList(ZIMConversationQueryConfig config,ZIMConversationPinnedListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMConversationQueryConfig | 会话查询的配置。 |
| callback | ZIMConversationPinnedListQueriedCallback | 置顶会话列表查询的回调。 |
详情
该方法可以查询已登录用户的置顶会话列表。
- 业务场景:登录后需要展示已有的置顶消息会话,这时可以调用该接口来获得数据源。
- 调用时机/通知时机:登录后可调用。
- 支持版本:2.8.0 及以上。
- 使用限制:没有使用频率的限制,登录后可用,登出后不可用。
- 注意事项:nextConversation 为查询消息的铆点,首次查询时可以传空,后续查询时可以将最早的一条 conversation 做为 nextConversation 来查询更早以前的会话,分页查询时,[ZIMConversationQueryConfig] 中的 count 填每次拉取的会话数量。
UpdateConversationPinnedState
public void UpdateConversationPinnedState(bool isPinned,string conversationID,ZIMConversationType conversationType,ZIMConversationPinnedStateUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| isPinned | bool | 会话是否置顶,true 为置顶,false 为取消置顶。 |
| conversationID | string | 会话 ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| callback | ZIMConversationPinnedStateUpdatedCallback | 更新会话置顶的回调。 |
详情
该方法可以修改已登录用户指定会话的置顶状态。
- 业务场景:需要修改某个会话置顶状态时,可以调用该接口。
- 调用时机/通知时机:登录后可调用。
- 相关回调:[ZIMConversationPinnedStateUpdatedCallback]。
- 支持版本:2.8.0 及以上。
- 使用限制:登录后可用,登出后不可用。
DeleteConversation
public abstract void DeleteConversation(string conversationID,ZIMConversationType conversationType,ZIMConversationDeleteConfig config,ZIMConversationDeletedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 会话ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| config | ZIMConversationDeleteConfig | 删除会话的配置。 |
| callback | ZIMConversationDeletedCallback | 删除会话的回调。 |
详情
需要删除某个会话时,调用此接口,会话内成员均可调用该接口。
- 业务场景:在会话不再被需要时,若要将整个会话删除,此时可调用该接口实现。
- 调用时机/通知时机:需要删除会话时调用,创建 ZIM 实例后即可调用,登录后生效,登出后失效。
- 影响范围:调用成功会触发 DeleteConversation 的 callback 回调。若所删除会话包含未读消息会触发[OnConversationTotalUnreadMessageCountUpdated]回调。
- 相关回调:[ZIMConversationDeletedCallback]
- 支持版本:2.0.0 及以上。
返回值
删除会话的结果回调。
ClearConversationUnreadMessageCount
public abstract void ClearConversationUnreadMessageCount(string conversationID,ZIMConversationType conversationType,ZIMConversationUnreadMessageCountClearedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 会话ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| callback | ZIMConversationUnreadMessageCountClearedCallback | 删除会话未读数的回调。 |
详情
用于清除当前用户目标会话的未读数。
- 业务场景:当由会话进入聊天页,此时该会话原先的消息未读数需要清零,可调用该接口。
- 调用时机/通知时机:需要清除目标未读数时调用。
- 影响范围:调用该方法会触发总未读数更新的回调 [OnConversationTotalUnreadMessageCountUpdated] ,会触发会话更新的回调 [OnConversationChanged] 。
- 相关回调:[ZIMConversationUnreadMessageCountClearedCallback]。
- 相关接口:[OnConversationTotalUnreadMessageCountUpdated]、[OnConversationChanged]。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后生效,登出后失效。
返回值
清除会话未读消息数的结果回调。
SetConversationNotificationStatus
public abstract void SetConversationNotificationStatus(ZIMConversationNotificationStatus status,string conversationID,ZIMConversationType conversationType,ZIMConversationNotificationStatusSetCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| status | ZIMConversationNotificationStatus | 会话通知状态。 |
| conversationID | string | 会话ID。当前仅支持为“群组”会话和“单聊”(需 2.14.0 版本或以上SDK)设置免打扰状态。 群聊会话时,conversationID 为群组的 groupID。 单聊会话时,conversationID 为对端用户的 userID。 |
| conversationType | ZIMConversationType | 会话类型。当前仅支持为“群组”会话和“单聊”(需 2.14.0 版本或以上SDK)设置免打扰状态。 |
| callback | ZIMConversationNotificationStatusSetCallback | 设置会话通知状态的回调。 |
详情
该方法可以选择目标会话的未读数是否在收到消息时更新,从而实现免打扰功能。
- 业务场景:用户选择消息免打扰,可以调用对应方法,未读数不增加。
- 默认值:消息免打扰默认不开启。
- 调用时机/通知时机:登录并存在目标会话的前提下,若想要开关目标会话的消息免打扰状态,调用该接口。
- 影响范围:使用该方法开启免打扰状态后,收到消息不会触发 [OnConversationTotalUnreadMessageCountUpdated]。
- 相关回调:[ZIMConversationNotificationStatusSetCallback]。
- 相关接口:[OnConversationTotalUnreadMessageCountUpdated]。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后生效,登出后失效。
返回值
设置会话通知状态的结果回调。
SendMessage
public void SendMessage(ZIMMessage message,string toConversationID,ZIMConversationType conversationType,ZIMMessageSendConfig config,ZIMMessageSendNotification notification,ZIMMessageSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 要发送的消息,使用时,请根据消息类型修改 message 的类型。 例如,发送文本消息时,请使用 ZIMTextMessage。 |
| toConversationID | string | 消息需要发送的会话 ID。 |
| conversationType | ZIMConversationType | 会话类型,支持单聊、房间以及群聊。 |
| config | ZIMMessageSendConfig | 发送消息的相关配置。 |
| notification | ZIMMessageSendNotification | 发送消息时的相关通知。 |
| callback | ZIMMessageSentCallback | 消息的发送结果的回调。 |
详情
此方法可用于单聊、房间和群聊中发送消息。
- 业务场景:登录后需要向目标用户、目标消息室、目标群聊发送消息时,通过该接口发送。
- 调用时机:登录后即可调用。
- 相关回调:[ZIMMessageSentCallback]、[ZIMMessageSendNotification]、[OnReceivePeerMessage]、[OnReceiveRoomMessage]、[OnReceiveGroupMessage]、[OnConversationChanged]、[OnConversationTotalUnreadMessageCountUpdated]。
- 相关接口:[QueryHistoryMessage]、[DeleteAllMessage]、[DeleteMessages]、[SendMediaMessage]。
- 支持版本:2.4.0 及以上。
- 使用限制:两次发送消息的时间间隔要大于 100ms。登录后可用,注销后不可用。
SendMediaMessage
public void SendMediaMessage(ZIMMediaMessage message,string toConversationID,ZIMConversationType conversationType,ZIMMessageSendConfig config,ZIMMediaMessageSendNotification notification,ZIMMessageSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMediaMessage | 要发送的消息,使用时,请根据多媒体消息类型,修改 message 的类型。例如,发送图片消息时,请使用 ZIMImageMessage。 |
| toConversationID | string | 消息接收方的会话 ID,支持单聊、房间以及群聊。 |
| conversationType | ZIMConversationType | 会话类型,支持单聊、房间以及群聊。 |
| config | ZIMMessageSendConfig | 发送消息的相关配置。 |
| notification | ZIMMediaMessageSendNotification | 发送媒体消息时的相关通知,包含上传进度等。 |
| callback | ZIMMessageSentCallback | 发送媒体消息的结果回调。 |
详情
该方法可用于发送单聊、房间以及群聊消息。
- 业务场景:登录后需要向目标用户、目标房间以及目标群聊发送媒体消息时,通过本接口发送。
- 调用时机:登录后可调用。
- 影响范围:使用该方法会触发消息接收方的 [OnReceivePeerMessage] / [OnReceiveRoomMessage] / [OnReceiveGroupMessage] 回调,会触发发送方和接收方的 [OnConversationChanged] 回调,若该消息所在会话未设置消息免打扰,会触发 [OnConversationTotalUnreadMessageCountUpdated] 回调。
- 相关回调:[ZIMMessageSentCallback]、[ZIMMediaMessageSendNotification]、[OnReceivePeerMessage]、[OnReceiveRoomMessage]、[OnReceiveGroupMessage]、 [OnConversationChanged]、[onConversationTotalUnreadMessageCountUpdated]。
- 相关接口:[QueryHistoryMessage]、[DeleteAllMessage]、[DeleteMessages]
- 支持版本:2.4.0 及以上。
- 使用限制:不得超过10条/s,登录后可用,登出后不可用;仅支持视频编码格式为 H264 和 H265 的视频文件在消息发送成功后获取该视频首帧的宽、高信息。
- 注意事项:pushconfig 只有需要使用离线推送功能时才需要填写。若向房间发送媒体消息,则不支持离线推送,也不支持回调 [OnConversationChanged] 和 [OnConversationTotalUnreadMessageCountUpdated]。
返回值
发送媒体消息的结果。
InsertMessageToLocalDB
public abstract void InsertMessageToLocalDB(ZIMMessage message,string conversationID,ZIMConversationType conversationType,string senderUserID,ZIMMessageInsertedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 要插入的消息。 |
| conversationID | string | 会话 ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| senderUserID | string | 该消息的发送者 ID。 |
| callback | ZIMMessageInsertedCallback | 插入消息的结果回调。 |
详情
该方法可以在客户端直接向本地 DB 插入一条消息。
- 业务场景:开发者可结合系统消息类型,在客户端将回调通知(例如:邀请某人进群、把某人移出群等),转为系统消息类型,插入本地 DB,以达到系统提示的效果。
- 调用时机/通知时机:登录后可调用。
- 相关回调:[ZIMMessageInsertedCallback]。
- 相关接口:[QueryHistoryMessage]、[DeleteAllMessage]、[DeleteMessages]。
- 支持版本:2.4.0 及以上。
- 使用限制: 不支持插入“信令”消息,如需插入“房间”消息。请将 SDK 升级到 2.13.0 及以上。
返回值
插入消息的结果。
SendConversationMessageReceiptRead
public void SendConversationMessageReceiptRead(string conversationID,ZIMConversationType conversationType,ZIMConversationMessageReceiptReadSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 会话的ID。 |
| conversationType | ZIMConversationType | 会话类型,仅支持 Peer 类型。 |
| callback | ZIMConversationMessageReceiptReadSentCallback | 设置会话已读回调。 |
详情
设置会话所有已接收的回执已读。
- 业务场景:设置整个会话所有已接收的回执消息已读,会话里消息回执的发送者会从 ZIMEventHandler 收到 [OnConversationMessageReceiptChanged] 的回调。
- 调用时机/通知时机:登录后即可调用,建议在进入消息列表页面之前调用,在消息列表页面内建议调用 [SendMessageReceiptsRead] 对需要设置已读的消息批量设置。
- 相关回调:[ZIMConversationMessageReceiptReadSentCallback]。
- 相关接口:[SendMessageReceiptsRead] 、[SendMessage] 。
- 支持版本:2.5.0及以上。
- 注意事项:只允许单聊的会话使用。
返回值
设置会话已读回调。
SendMessageReceiptsRead
public abstract void SendMessageReceiptsRead(List<ZIMMessage> messageList,string conversationID,ZIMConversationType conversationType,ZIMMessageReceiptsReadSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| messageList | List<ZIMMessage> | 要设置已读的消息列表,所含消息不能超过 10 条。 |
| conversationID | string | 会话 ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| callback | ZIMMessageReceiptsReadSentCallback | 设置消息已读的结果回调。 |
详情
该方法可以设置一批消息的回执变成已读。
- 业务场景:开发者可通过这个方法,设置一批带回执的消息已经被读了。发送端如果在线,则会收到 [OnMessageReceiptChanged] 的回调。
- 调用时机:登录后可调用。建议在消息列表页对需要设置已读的消息设置。不建议和 [SendConversationMessageReceiptRead] 一起混用。
- 相关回调:[ZIMMessageReceiptsReadSentCallback]。
- 相关接口:[SendMessage]。
- 支持版本:2.5.0 及以上。
- 使用限制:仅支持对收到的,且回执状态为 PROCESSING 的消息设置。
返回值
设置消息已读的结果回调。
QueryMessageReceiptsInfo
public abstract void QueryMessageReceiptsInfo(List<ZIMMessage> messageList,string conversationID,ZIMConversationType conversationType,ZIMMessageReceiptsInfoQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| messageList | List<ZIMMessage> | 要查询的消息列表。 |
| conversationID | string | 会话 ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| callback | ZIMMessageReceiptsInfoQueriedCallback | 查询消息回执信息的结果回调。 |
详情
该方法可以查询一批消息的回执信息,包括状态、未读用户数和已读用户数。
- 业务场景:如果需要查询消息的回执状态、未读用户数和已读用户数,可以调用此接口。
- 调用时机:登录后可调用。如果需要查询详细的成员列表,则可以通过接口[QueryGroupMessageReceiptReadMemberList] 或[QueryGroupMessageReceiptUnreadMemberList] 查询。
- 相关回调:[ZIMMessageReceiptsInfoQueriedCallback]。
- 相关接口:[QueryGroupMessageReceiptReadMemberList] , [QueryGroupMessageReceiptUnreadMemberList]。
- 支持版本:2.5.0 及以上。
- 使用限制:仅支持查询回执状态不为 NONE 的消息。
返回值
查询消息回执信息的结果回调。
QueryGroupMessageReceiptReadMemberList
public abstract void QueryGroupMessageReceiptReadMemberList(ZIMMessage message,string groupID,ZIMGroupMessageReceiptMemberQueryConfig config,ZIMGroupMessageReceiptMemberListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 要查询的消息。 |
| groupID | string | 群组 ID。 |
| config | ZIMGroupMessageReceiptMemberQueryConfig | 查询的配置。 |
| callback | ZIMGroupMessageReceiptMemberListQueriedCallback | 查询具体已读成员列表的结果回调。 |
详情
该方法可以查询一个群某一条自己发的消息的具体已读成员列表。
- 业务场景:开发者可通过这个方法,查询一条自己发的消息的具体已读成员列表。
- 调用时机:登录后可调用。
- 相关回调:[ZIMGroupMessageReceiptMemberListQueriedCallback]。
- 相关接口:如果需要查询某一条消息的回执状态或只需要查询已读/未读数,通过接口 [QueryMessageReceiptsInfo] 查询。
- 支持版本:2.5.0 及以上。
- 使用限制:仅支持查询本端发送的消息,且消息的回执状态不为 NONE。如果该用户不在群组,或已被踢出群组,则无法查到对应的成员列表。
返回值
查询具体已读成员列表的结果回调。
QueryGroupMessageReceiptUnreadMemberList
public abstract void QueryGroupMessageReceiptUnreadMemberList(ZIMMessage message,string groupID,ZIMGroupMessageReceiptMemberQueryConfig config,ZIMGroupMessageReceiptMemberListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 要查询的消息。 |
| groupID | string | 群组 ID。 |
| config | ZIMGroupMessageReceiptMemberQueryConfig | 查询的配置。 |
| callback | ZIMGroupMessageReceiptMemberListQueriedCallback | 查询具体未读成员列表的的结果回调。 |
详情
该方法可以查询一个群某一条自己发的消息的具体未读成员列表。
- 业务场景:开发者可通过这个方法,查询一条自己发的消息的具体未读成员列表。
- 调用时机:登录后可调用。
- 相关回调:[ZIMGroupMessageReceiptMemberListQueriedCallback]。
- 相关接口:如果需要查询某一条消息的回执状态或只需要查询已读/未读数,通过接口 [QueryMessageReceiptsInfo] 查询。
- 支持版本:2.5.0 及以上。
- 使用限制:仅支持查询本端发送的消息,且消息的回执状态不为 NONE。如果该用户不在群组,或已被踢出群组,则无法查到对应的成员列表。
返回值
查询具体未读成员列表的的结果回调。
SearchLocalMessages
public abstract void SearchLocalMessages(string conversationID,ZIMConversationType conversationType,ZIMMessageSearchConfig config,ZIMMessagesSearchedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 要搜索的本地消息的会话 ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| config | ZIMMessageSearchConfig | 搜索本地消息的配置。 |
| callback | ZIMMessagesSearchedCallback | 搜索本地消息的的结果的返回。 |
详情
该方法用于搜索本地消息。
- 业务场景:当需要通过关键字等条件搜索以往的本地消息,可以调用该接口来分页搜索本地消息。
- 相关回调:[ZIMMessagesSearchedCallback]
- 支持版本:2.9.0 及以上。
- 使用限制:登录后生效,登出后失效。房间场景(conversationType=1)下不支持搜索。
返回值
搜索本地消息的的结果的返回。
SearchLocalConversations
public abstract void SearchLocalConversations(ZIMConversationSearchConfig config,ZIMConversationsSearchedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMConversationSearchConfig | 全局搜索会话的配置。 |
| callback | ZIMConversationsSearchedCallback | 搜索会话的的结果的返回。 |
详情
该方法用于基于本地消息搜索本地会话。
- 业务场景:当需要通过关键字等条件进行全局搜索会话时,可以调用该接口进行搜索。
- 调用时机/通知时机:需要通过关键字等条件进行搜索会话时调用。
- 相关回调:[ZIMConversationsSearchedCallback]
- 支持版本:2.9.0 及以上。
- 使用限制:登录后生效,登出后失效。房间场景(conversationType=1)下不支持搜索。
返回值
搜索会话的的结果的返回。
SearchGlobalLocalMessages
public abstract void SearchGlobalLocalMessages(ZIMMessageSearchConfig config,ZIMMessagesGlobalSearchedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| config | ZIMMessageSearchConfig | 全局搜索本地消息的配置。 |
| callback | ZIMMessagesGlobalSearchedCallback | 全局搜索本地消息的的结果的返回。 |
详情
该方法用于全局搜索本地消息。
- 业务场景:当需要通过关键字等条件进行全局搜索以往的本地消息,可以调用该接口按会话进行分组来搜索本地消息。
- 相关回调:[ZIMMessagesGlobalSearchedCallback]
- 支持版本:2.9.0 及以上。
- 使用限制:登录后生效,登出后失效。房间场景(conversationType=1)下不支持搜索。
返回值
全局搜索本地消息的的结果的返回。
ReplyMessage
public void ReplyMessage(ZIMMessage message,ZIMMessage toOriginalMessage,ZIMMessageSendConfig config,ZIMMessageSendNotification notification,ZIMMessageSentCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 要发送的消息,使用时,请根据消息类型修改 message 的类型。 例如,发送文本消息时,请使用 ZIMTextMessage。仅支持:ZIMTextMessage(1)、ZIMImageMessage(11)、ZIMFileMessage(12)、ZIMAudioMessage(13)、ZIMVideoMessage(14)、ZIMCombineMessage(100)、ZIMCustomMessage(200)。 |
| toOriginalMessage | ZIMMessage | 引用的源消息。仅支持:ZIMTextMessage(1)、ZIMImageMessage(11)、ZIMFileMessage(12)、ZIMAudioMessage(13)、ZIMVideoMessage(14)、ZIMCombineMessage(100)、ZIMCustomMessage(200)。 |
| config | ZIMMessageSendConfig | 发送消息的相关配置。 |
| notification | ZIMMessageSendNotification | 发送消息时的相关通知。 |
| callback | ZIMMessageSentCallback | 消息的发送结果的回调。 |
详情
此方法可用于单聊、群聊中发送回复消息。
- 业务场景:登录后需要向目标用户、目标群聊发送回复消息时,通过该接口发送。
- 调用时机:登录后即可调用。
- 相关回调:[onReceivePeerMessage]、[onReceiveGroupMessage]。
- 相关接口:[queryHistoryMessage]、[sendMessage]、[sendMediaMessage]。
- 支持版本:2.17.0 及以上。
- 使用限制:两次发送消息的间隔要大于 100ms。登录后可用,注销后不可用。
DownloadMediaFile
public abstract void DownloadMediaFile(ZIMMessage message,ZIMMediaFileType fileType,ZIMMediaDownloadConfig config,ZIMMediaDownloadingProgress progress,ZIMMediaDownloadedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 要下载的媒体文件消息。 |
| fileType | ZIMMediaFileType | 媒体文件类型。 |
| config | ZIMMediaDownloadConfig | 下载配置对象。 |
| progress | ZIMMediaDownloadingProgress | 下载媒体文件的进度回调。 |
| callback | ZIMMediaDownloadedCallback | 下载媒体文件的结果回调。 |
详情
该方法可用于下载媒体文件的内容,包含图片消息原图、大图、缩略图,文件消息,音频消息,视频消息以及其首帧图。
- 业务场景:用户收到消息之后,若该消息包含媒体文件,则可以调用本接口下载其内容。
- 调用时机/通知时机:登录后且收到包含媒体文件的消息之后可调用。
- 相关回调:[ZIMMediaDownloadedCallback]、[ZIMMediaDownloadingProgress]。
- 支持版本:2.19.0 及以上。
- 使用限制:若下载的是外部 URL,则最大只能下载 200MB 的资源,如需配置,请联系 ZEGO 技术支持。
返回值
下载媒体文件的结果。
DownloadMediaFile
public abstract void DownloadMediaFile(ZIMMediaMessage message,ZIMMediaFileType fileType,ZIMMediaDownloadingProgress progress,ZIMMediaDownloadedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMediaMessage | 要下载的媒体消息。 |
| fileType | ZIMMediaFileType | 媒体文件类型。 |
| progress | ZIMMediaDownloadingProgress | 下载媒体文件的进度回调。 |
| callback | ZIMMediaDownloadedCallback | 下载媒体文件的结果回调。 |
详情
该方法可用于下载媒体消息内容,包含图片消息原图、大图、缩略图,文件消息,音频消息,视频消息以及其首帧图。
- 业务场景:用户收到消息之后,若该消息为媒体消息,则可以调用本接口下载其内容。
- 调用时机/通知时机:登录后且收到媒体消息之后可调用。
- 相关回调:[ZIMMediaDownloadedCallback]、[ZIMMediaDownloadingProgress]。
- 支持版本:2.1.0 及以上。
- 使用限制:若下载的是外部 URL,则最大只能下载 200MB 的资源,如需配置,请联系 ZEGO 技术支持。
- 注意事项:若 [sendMediaMessage] 发送的是网络 URL,则 2.9.0 版本以前的 SDK 无法通过此接口下载。
返回值
下载媒体文件的结果。
QueryHistoryMessage
public abstract void QueryHistoryMessage(string conversationID,ZIMConversationType conversationType,ZIMMessageQueryConfig config,ZIMMessageQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 被查询历史消息的会话ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| config | ZIMMessageQueryConfig | 查询历史消息的配置。 |
| callback | ZIMMessageQueriedCallback | 查询历史消息的的结果的返回。 |
详情
该方法用于查询历史消息。
- 业务场景:当需要获得以往的历史消息,可以调用该接口来分页查询历史消息。
- 调用时机/通知时机:需要查询历史消息时调用。
- 相关回调:[ZIMMessageQueriedCallback]
- 支持版本:2.0.0 及以上。
- 使用限制:登录后生效,登出后失效。默认房间场景(conversationType=1)下不开通离线消息缓存,如需开通请联系对应技术支持。
返回值
查询历史消息的结果回调。
queryPinnedMessageList
public abstract void queryPinnedMessageList(string conversationID,ZIMConversationType conversationType,ZIMMessageQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 被查询置顶消息的会话ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| callback | ZIMMessageQueriedCallback | 查询历史消息的的结果的返回。 |
详情
该方法用于查询置顶消息列表。
- 业务场景:当需要展示置顶消息时,可以调用该接口来查询会话内置顶消息列表。
- 调用时机:需要查询置顶消息时调用。
- 相关回调:[ZIMPinnedMessageListQueriedCallback]
- 支持版本:2.25.0 及以上。
- 使用限制:已登录 SDK 且支持消息置顶功能才能使用。
返回值
查询置顶消息的结果回调。
RevokeMessage
public abstract void RevokeMessage(ZIMMessage message,ZIMMessageRevokeConfig config,ZIMMessageRevokedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 需要被撤回的消息。 |
| config | ZIMMessageRevokeConfig | 撤回消息的配置。 |
| callback | ZIMMessageRevokedCallback | 撤回消息的结果的返回。 |
详情
该方法实现了撤回消息的功能。该接口只能撤回 2 分钟内的消息,如需撤回更早之前的消息,请联系技术支持。
- 业务场景:用户需要撤回某条消息,当用户不想让其他用户看到该信息时,可用此方法撤回。
- 调用时机/通知时机:需要撤回消息时调用。
- 影响范围:若撤回的消息为会话的最新一条消息,会触发 [OnConversationChanged] 回调,若此条消息未读,则会触发 [OnConversationTotalUnreadMessageCountUpdated] 回调。
- 相关回调:[ReceiveMessageRevoked]、[OnConversationChanged]、[OnConversationTotalUnreadMessageCountUpdated]。
- 支持版本:2.5.0 及以上。
- 使用限制:登录后才能使用。如需群主撤回群内其他成员消息,需要使用 2.9.0 及以上版本。
- 注意事项:不支持房间消息撤回。
返回值
撤回消息的结果回调。
DeleteMessages
public abstract void DeleteMessages(List<ZIMMessage> messageList,string conversationID,ZIMConversationType conversationType,ZIMMessageDeleteConfig config,ZIMMessageDeletedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| messageList | List<ZIMMessage> | 被删除的消息列表。 |
| conversationID | string | 被删除消息的会话ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| config | ZIMMessageDeleteConfig | 删除消息的配置。 |
| callback | ZIMMessageDeletedCallback | 删除消息的结果的返回。 |
详情
该方法实现了删除消息的功能。
- 业务场景:用户需要删除某条消息,当用户无需展示某条消息时,可用此方法删除。
- 调用时机/通知时机:需要删除消息时调用。
- 影响范围:若删除的消息为会话的最新一条消息,会触发 [OnConversationChanged] 回调,若此条消息未读,则会触发 [OnConversationTotalUnreadMessageCountUpdated] 回调。
- 相关回调:[ZIMMessageDeletedCallback]、[OnConversationChanged]、[OnConversationTotalUnreadMessageCountUpdated]。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后才能使用。
- 注意事项:isAlsoDeleteServerMessage 决定是否删除服务器消息,无论是否删除服务器消息,删除消息的影响范围都仅限于本账号,不会删除其他账号的消息。
返回值
删除消息的结果回调。
AddMessageReaction
public abstract void AddMessageReaction(string reactionType,ZIMMessage message,ZIMMessageReactionAddedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| reactionType | string | 表态类型,由您定义,长度上限为 32 字节。 |
| message | ZIMMessage | 需要被表态的消息。 |
| callback | ZIMMessageReactionAddedCallback | 添加消息表态的结果回调。 |
详情
消息表态,是指用户对消息的反应。一般可用于对单聊或群聊的消息添加或删除表情,也可用于发起群组投票、确认群组结果等操作。
- 业务场景:用户需要对某条消息进行表态,例如点赞,可用此方法进行表态。
- 相关回调:若表态成功,则会触发 [OnMessageReactionsChanged] 回调;若表态的消息为会话的最新一条消息,成功后还会触发 [OnConversationChanged] 回调。
- 支持版本:2.10.0 及以上。
- 使用限制:登录后才能使用。且仅支持单聊和群聊的消息表态
- 注意事项:不支持房间消息表态。
返回值
增加消息表态的结果回调。
DeleteMessageReaction
public abstract void DeleteMessageReaction(string reactionType,ZIMMessage message,ZIMMessageReactionDeletedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| reactionType | string | 表态类型,必须为本端用户所作的表态类型。 |
| message | ZIMMessage | 需要被删除表态的消息。 |
| callback | ZIMMessageReactionDeletedCallback | 撤回消息的结果的返回。 |
详情
删除本端添加的表态。
- 业务场景:用户需要对某条已表态的消息进行表态删除,可用此方法。
- 相关回调:若删除成功,则会触发 [onMessageReactionsChanged] 回调;若相关消息为会话的最新一条消息,成功后还会触发 [onConversationChanged] 回调。
- 支持版本:2.10.0 及以上。
- 使用限制:登录后才能使用。且仅支持单聊和群聊的消息表态
- 注意事项:不支持房间消息表态操作。
返回值
删除消息表态的结果回调。
QueryMessageReactionUserList
publicabstract void QueryMessageReactionUserList(ZIMMessage message,ZIMMessageReactionUserQueryConfig config,ZIMMessageReactionUserListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| message | ZIMMessage | 需要被拉取表态用户详情的消息。 |
| config | ZIMMessageReactionUserQueryConfig | 拉取表态用户配置。 |
| callback | ZIMMessageReactionUserListQueriedCallback | 拉取表态用户返回的结果。 |
详情
该方法用于查询消息某个表态下的具体用户信息。
- 业务场景:当需要获得消息某个表态下的具体用户信息,可以调用该接口来分页查询表态用户消息。
- 调用时机/通知时机:需要查询表态用户信息时调用。
- 支持版本:2.10.0 及以上。
- 使用限制:登录后生效,登出后失效。不支持查询房间消息的表态详情。
返回值
消息表态用户详情拉取结果。
DeleteAllMessage
public abstract Promise<ZIMMessageDeletedResult> DeleteAllMessage(string conversationID,ZIMConversationType conversationType,ZIMMessageDeleteConfig config,ZIMMessageDeletedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| conversationID | string | 将要被删除消息的会话ID。 |
| conversationType | ZIMConversationType | 会话类型。 |
| config | ZIMMessageDeleteConfig | 删除会话配置。 |
| callback | ZIMMessageDeletedCallback | 通过会话ID删除消息的结果的返回。 |
详情
当你需要删除目标会话下的所有消息时,调用该方法。
- 业务场景:如想要实现一个群设置页面的清空当前会话下的聊天信息,可调用该接口。
- 调用时机/通知时机:目标会话存在、并且用户属于此会话的一员。
- 影响范围:触发 [OnConversationChanged] 回调,若存在未读消息,则会触发 [OnConversationTotalUnreadMessageCountUpdated] 回调。
- 相关回调:[ZIMMessageDeletedCallback]。
- 支持版本:2.0.0 及以上。
- 使用限制:登录后生效,登出后失效。
- 注意事项:isAlsoDeleteServerMessage 决定是否删除服务器消息,无论是否删除服务器消息,删除消息的影响范围都仅限于本账号,不会删除其他账号的消息。
返回值
删除消息的结果的返回。
UpdateMessageLocalExtendedData
public abstract void UpdateMessageLocalExtendedData(string localExtendedData,ZIMMessage message,ZIMMessageLocalExtendedDataUpdatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| localExtendedData | string | 仅本端可见的消息拓展字段,可附带额外的信息存储到本地,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。 |
| message | ZIMMessage | 需要更新的消息体。 |
| callback | ZIMMessageLocalExtendedDataUpdatedCallback | 修改本地扩展字段的回调函数。 |
详情
在用户登录后,调用该接口可以更新消息本地扩展字段。
- 调用时机/通知时机:用户登录后。
- 隐私保护声明:尽量不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 相关回调:[ZIMMessageLocalExtendedDataUpdatedCallback]。
- 支持版本:2.9.0 及以上。
返回值
修改用户扩展字段的回调结果。
CreateRoom
public abstract void CreateRoom(ZIMRoomInfo roomInfo,ZIMRoomCreatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomInfo | ZIMRoomInfo | 将要被创建的房间的配置信息。 |
| callback | ZIMRoomCreatedCallback | 创建房间的结果的回调。 |
详情
用户可以通过该接口,创建且加入房间,其他用户可通过 [JoinRoom] 加入此房间。
- 业务场景:需要创建多人聊天场景时,可通过该接口创建并加入房间。
- 调用时机:登录后可调用。
- 相关回调:通过 [OnRoomCreated] 回调可拿到创建房间的结果。
- 相关接口:可通过 [JoinRoom] 加入房间,[LeaveRoom] 离开房间。
- 支持版本:1.1.0 及以上。
- 注意事项:当所有人都离开房间后,此房间将被自动销毁,一个用户最多同时在 5 个房间内。 如果房间已存在,调用此接口将会出错,具体请参考返回的错误码处理。
QueryRoomMembers
public void QueryRoomMembers(List\<string\> userIDs,string roomID,ZIMRoomMembersQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userIDs | List<string> | 需要查询的用户 ID 列表。最多 10 名用户。 |
| roomID | string | 指定房间的房间 ID。 |
| callback | ZIMRoomMembersQueriedCallback | 查询房间用户信息的回调。 |
详情
该方法可以查询指定房间中最多 10 名用户的信息。
- 业务场景:需要得知指定房间内的用户信息时,这时可以调用该接口来获得数据源。可以确认用户是否在房间中。
- 调用时机/通知时机:登录后可调用。
- 支持版本:2.8.0 及以上。
- 使用限制:登录后可用,登出后不可用,一次最多查询 10 名用户。
SetRoomMembersAttributes
public abstract void SetRoomMembersAttributes(Dictionary<string, string> attributes,List\<string> userIDs,string roomID,ZIMRoomMemberAttributesSetConfig config,ZIMRoomMembersAttributesOperatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| attributes | Dictionary<string, string> | 欲设置的房间成员属性。 |
| userIDs | List<string> | 批量设置的 userID 列表。 |
| roomID | string | 房间 ID。 |
| config | ZIMRoomMemberAttributesSetConfig | 该操作的行为配置。 |
| callback | ZIMRoomMembersAttributesOperatedCallback | 设置房间成员属性的操作回调。 |
详情
调用该 API 来设置房间内成员的房间用户属性。
- 业务场景:如需要为房间内成员设置一个等级,设置一个状态时,可用此接口来设置。
- 默认值:[ZIMRoomMemberAttributesSetConfig] 默认构造 isDeleteAfterOwnerLeft 为 true。
- 调用时机:登录后,并处于相关房间内调用。
- 相关回调:[ZIMRoomMembersAttributesOperatedCallback]、[OnRoomMemberAttributesUpdated]。
- 相关接口:[QueryRoomMembersAttributes]、[QueryRoomMemberAttributesList]。
- 支持版本:2.4.0 及以上。
- 使用限制:每个房间中,最多允许设置 500 个用户的用户属性,以 Key-Value 的方式进行存储。开发者如果需要提高属性上限,请联系 ZEGO 技术支持。房间内的每个用户,所拥有的用户属性 Key-Value 的总长度不超过 144 字节,且 Key-Value 的个数不超过 30 对。单个 Key-Value 的长度,Key 不超过 8 字节、Value 不超过 64 字节。开发者如果需要提高上限,请联系 ZEGO 技术支持。房间销毁后,设置的自定义用户属性也会同时销毁。
返回值
设置房间属性的操作结果。
QueryRoomMembersAttributes
public void QueryRoomMembersAttributes(List\<string> userIDs,string roomID,ZIMRoomMembersAttributesQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| userIDs | List<string> | 需要查询的 userID 列表。 |
| roomID | string | 房间 ID。 |
| callback | ZIMRoomMembersAttributesQueriedCallback | 批量查询房间用户属性的结果回调。 |
详情
调用该 API 来批量查询房间内成员的房间用户属性。
- 调用时机:当需要指定查询部分房间用户的时候使用该接口。
- 相关回调:[ZIMRoomMembersAttributesQueriedCallback]。
- 相关接口:[SetRoomMembersAttributes]、[QueryRoomMemberAttributesList]。
- 生命周期:登录并加入对应房间后可用,离开对应房间后不可用。
- 支持版本:2.4.0 及以上。
- 使用限制:最大调用频率默认 30 秒内 5 次,一次最大查询 100 人。
返回值
批量查询房间用户属性的结果。
QueryRoomMemberAttributesList
public abstract void QueryRoomMemberAttributesList(string roomID,ZIMRoomMemberAttributesQueryConfig config,ZIMRoomMemberAttributesListQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间 ID。 |
| config | ZIMRoomMemberAttributesQueryConfig | 该操作的行为配置。 |
| callback | ZIMRoomMemberAttributesListQueriedCallback | 查询房间内成员属性的结果回调。 |
详情
分页查询房间内拥有房间属性成员的房间用户属性。
- 调用时机:当需要指定查询全部房间用户的时候使用该接口。
- 相关回调:[ZIMRoomMemberAttributesListQueriedCallback]。
- 相关接口:[SetRoomMembersAttributes]、[QueryRoomMembersAttributes]。
- 生命周期:登录并加入对应房间后可用,离开对应房间后不可用。
- 支持版本:2.4.0 及以上。
- 使用限制:最大调用频率默认 30 秒内 5 次,一页的 count 最大 100 人。
返回值
分页查询房间用户属性的结果。
CreateRoom
public abstract void CreateRoom(ZIMRoomInfo roomInfo,ZIMRoomAdvancedConfig config,ZIMRoomCreatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomInfo | ZIMRoomInfo | 将要被创建的房间的配置信息。 |
| config | ZIMRoomAdvancedConfig | 将要被创建的房间的高级属性。 |
| callback | ZIMRoomCreatedCallback | 创建房间的结果的回调。 |
详情
用户可以通过该接口,创建且加入房间,其他用户可通过 [JoinRoom] 加入此房间。
- 业务场景:需要创建具有自定义属性的多人聊天场景时,可通过该接口创建并加入房间。
- 调用时机:登录后可调用。
- 相关回调:通过 [OnRoomCreated] 回调可拿到创建房间的结果。
- 相关接口:可通过 [JoinRoom] 加入房间,[LeaveRoom] 离开房间。
- 支持版本:1.3.0。
- 注意事项:当所有人都离开房间后,此房间将被自动销毁,一个用户最多同时在 5 个房间内。 如果房间已存在,调用此接口将会出错,具体请参考返回的错误码处理。
返回值
创建房间的结果的回调。
EnterRoom
public abstract void EnterRoom(ZIMRoomInfo roomInfo,ZIMRoomAdvancedConfig config,ZIMRoomEnteredCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomInfo | ZIMRoomInfo | 将要被创建的房间的配置信息。只有第一个进入房间的用户创建 roomName 生效。 |
| config | ZIMRoomAdvancedConfig | 将要被创建的房间的高级属性。只有第一个进入房间的用户配置生效。 |
| callback | ZIMRoomEnteredCallback | 进入房间的结果的回调。 |
详情
调用该 API 后,如果房间已存在,则直接加入房间;如果房间不存在,则创建一个房间并加入。同时,如果房间不存在时,调用该接口后,用户设置的房间高级属性生效。
- 业务场景:需要进入具有自定义属性的多人聊天场景,同时不需要区分房间是被创建还是被加入时,可通过该接口进入一个房间。
- 调用时机:登录后可调用。
- 相关回调:通过 [OnRoomEntered] 回调可拿到进入房间的结果。
- 相关接口:可通过 [EnterRoom] 进入房间,[LeaveRoom] 离开房间。
- 支持版本:2.1.0。
- 注意事项:当所有人都离开房间后,此房间将被自动销毁,一个用户最多同时在 5 个房间内。[EnterRoom] 相当于 [CreateRoom] 或 [JoinRoom] 的作用,因此两者只需选用其中一种 API 即可。
返回值
进入房间的结果的回调。
JoinRoom
public abstract void JoinRoom(string roomID,ZIMRoomJoinedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 将要加入的房间 ID。 |
| callback | ZIMRoomJoinedCallback | 加入房间的结果的回调。 |
详情
若房间不存在,则加入失败,需要先调用 [CreateRoom] 创建房间。
- 业务场景:多人聊天场景下,用户需要加入房间时可调用该接口进入房间。
- 调用时机:登录后可调用,且该用户位于房间中时可调用。
- 相关回调:通过 [ZIMRoomJoinedCallback] 回调可获得加入房间的结果。
- 相关接口:可通过 [CreateRoom] 创建房间,[LeaveRoom] 离开房间。
- 支持版本:1.1.0 及以上。
- 注意事项:当所有人都离开房间后,此房间将被自动销毁。一个用户最多同时在 5 个房间内。
返回值
加入房间的结果的回调
LeaveRoom
public abstract void LeaveRoom(string roomID,ZIMRoomLeftCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 将要离开的房间 ID。 |
| callback | ZIMRoomLeftCallback | 离开房间的结果的回调。 |
详情
当房间中的用户需要离开房间时,通过 [LeaveRoom] 离开此房间,若房间不存在,则离开失败。
- 业务场景:多人聊天场景下,房间中的用户需要离开房间时,可通过该接口离开房间。
- 调用时机:登录后可调用,且该用户位于房间中时可调用。
- 相关回调:通过 [ZIMRoomLeftCallback] 回调可拿到离开房间的结果。
- 相关接口:可通过 [CreateRoom] 创建房间,[JoinRoom] 加入房间。
- 支持版本:1.1.0 及以上。
- 注意事项:若当前用户不在此房间内,则离开失败。当所有人都离开房间后,此房间将被自动销毁。
返回值
离开房间的结果的回调。
QueryRoomMemberList
public abstract void QueryRoomMemberList(string roomID,ZIMRoomMemberQueryConfig config,ZIMRoomMemberQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 将要查询的房间 ID。 |
| config | ZIMRoomMemberQueryConfig | 查询房间成员操作的配置。 |
| callback | ZIMRoomMemberQueriedCallback | 查询房间成员的结果的回调。 |
详情
当加入了一个房间后,可通过此函数获取房间内的成员列表。
- 业务场景:当开发者需要获取房间成员列表以做其他业务操作时,可调用该接口以获得成员列表。
- 调用时机:登录后,且该用户位于需要查询的房间中时可调用该接口。
- 相关回调:通过 [ZIMRoomMemberQueriedCallback] 回调可拿到查询房间成员列表的结果。
- 相关接口:可通过 [QueryRoomOnlineMemberCount] 查询房间在线人数。
- 支持版本:1.1.0 及以上。
- 注意事项:如需使用此功能,请联系 ZEGO 技术支持开通服务。若用户当前不在此房间内,则查询失败。当房间成员超过 500 人时,查询房间成员列表的结果最多只能包含 500 名成员的信息。
返回值
查询房间成员的结果的回调。
QueryRoomOnlineMemberCount
public abstract void QueryRoomOnlineMemberCount(string roomID,ZIMRoomOnlineMemberCountQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 将要查询的房间 ID。 |
| callback | ZIMRoomOnlineMemberCountQueriedCallback | 查询房间内在线成员数量的结果回调。 |
详情
当加入了一个房间后,可通过此函数获取房间内在线成员的数量。
- 业务场景:当开发者需要获取房间在线的房间成员人数时,可以调用此接口。
- 调用时机:通过 [Create] 创建 ZIM 实例后,且该用户位于需要查询的房间中时可调用该接口。
- 相关回调:通过 [ZIMRoomOnlineMemberCountQueriedCallback] 回调可拿到查询房间成员在线人数的的结果。
- 相关接口:可通过 [QueryRoomMember] 查询房间成员。
- 支持版本:1.1.0 及以上。
- 注意事项:若用户当前不在此房间内,则查询失败。
返回值
查询房间内在线成员数量的结果回调。
QueryRoomAllAttributes
public abstract void QueryRoomAllAttributes(string roomID,ZIMRoomAttributesQueriedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 需要查询自定义属性的房间号。 |
| callback | ZIMRoomAttributesQueriedCallback | 查询房间属性的回调。 |
详情
用于查询房间属性。
- 调用时机: 登录后,并处于相关房间内调用。
- 业务场景:语聊房需要查询麦位时,可以使用该接口。
- 相关回调:[ZIMRoomAttributesQueriedCallback]。
- 相关接口:[deleteRoomAttributes],删除房间属性。[setRoomAttributes],设置房间属性。
- 支持版本:1.3.0。
返回值
查询房间属性的回调。
SetRoomAttributes
public abstract void SetRoomAttributes(Dictionary<string, string> roomAttributes,string roomID,ZIMRoomAttributesSetConfig config,ZIMRoomAttributesOperatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomAttributes | Dictionary<string, string> | 欲设置的房间属性。 |
| roomID | string | 需要进行房间属性修改的房间号。 |
| config | ZIMRoomAttributesSetConfig | 该操作的行为配置。 |
| callback | ZIMRoomAttributesOperatedCallback | 设置房间属性的操作回调。 |
详情
用于设置房间属性。
- 业务场景:语聊房需要设置麦位时,可以使用该接口。
- 调用时机: 登录后,并处于相关房间内调用。
数量限制: 每个房间中,最多允许设置 20 个属性。
大小限制: 房间属性的key-value,默认 key 的长度是 16,默认 value 的长度是 1024。
- 默认值:[ZIMRoomAttributesSetConfig] 传空时的默认配置是非强制操作,且不更新拥有者,且涉及到的房间属性在拥有者退出后不自动删除。
- 隐私保护声明:尽量不要在房间属性中传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 影响范围:新增或修改现有房间的房间属性。
- 相关回调:[ZIMRoomAttributesOperatedCallback]。
- 相关接口:[DeleteRoomAttributes],删除房间属性。[QueryRoomAllAttributes],查询房间属性。
- 支持版本:1.3.0。
返回值
设置房间属性的操作回调。
DeleteRoomAttributes
public abstract void DeleteRoomAttributes(List\<string> keys,string roomID,ZIMRoomAttributesDeleteConfig config,ZIMRoomAttributesOperatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| keys | List<string> | 欲删除的房间属性的key。 |
| roomID | string | 欲修改房间属性的房间号 |
| config | ZIMRoomAttributesDeleteConfig | 该操作的行为配置。 |
| callback | ZIMRoomAttributesOperatedCallback | 设置房间属性的操作回调。 |
详情
用于删除房间属性。
- 业务场景:语聊房需要删除麦位时,可以使用该接口。
- 调用时机: 登录后,并处于相关房间内调用。
- 默认值:[ZIMRoomAttributesDeleteConfig] 传空时的默认配置是非强制操作。
- 影响范围:删除现有房间的房间属性。
- 相关回调:[ZIMRoomAttributesOperatedCallback]。
- 相关接口:[SetRoomAttributes],设置房间属性。[QueryRoomAllAttributes],查询房间属性。
- 支持版本:1.3.0。
返回值
设置房间属性的操作回调。
BeginRoomAttributesBatchOperation
public abstract void BeginRoomAttributesBatchOperation(string roomID,ZIMRoomAttributesBatchOperationConfig config)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 需要开启组合操作的房间号。 |
| config | ZIMRoomAttributesBatchOperationConfig | 组合操作的配置。 |
详情
用于开启房间属性的组合操作,一个组合操作视为一次原子操作。
- 业务场景:语聊房需要切换麦位时,可以使用该接口发起组合操作以完成,如先下麦,然后抢占其他麦位,若抢占失败再回到原来麦位,这期间原来的麦位是锁定的,保证了原来的麦位不会被其他用户上麦。
- 调用时机: 登录后,并处于相关房间内调用。
- 影响范围:开启后设置、删除房间属性操作会被纳入到本次组合操作中。
- 相关接口:[EndRoomAttributesBatchOperation],完成本次组合操作。
- 支持版本:1.3.0。
- 注意事项:开启房间属性的组合操作后,直到调用完成组合操作接口前,所有的设置与删除操作均会纳入到组合操作中。连续调用开启组合操作接口,会重置状态。若不执行[EndRoomAttributesBatchOperation]视为没有操作。
EndRoomAttributesBatchOperation
public abstract void EndRoomAttributesBatchOperation(string roomID,ZIMRoomAttributesBatchOperatedCallback callback)ZIM.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 需要进行房间属性修改的房间号。 |
| callback | ZIMRoomAttributesBatchOperatedCallback | 组合操作的回调。 |
详情
完成组合房间属性操作,会将该房间上次调用 [BeginRoomAttributesBatchOperation] 到本次操作期间的所有 设置/删除 操作组合完成。
- 业务场景:语聊房需要切换麦位时,可以使用该接口。
- 调用时机:登录后,在 [BeginRoomAttributesBatchOperation] 执行后执行该操作。
- 影响范围:同房间内的设置,删除房间属性。
- 相关回调:[ZIMRoomAttributesBatchOperatedCallback]。
- 相关接口:[BeginRoomAttributesBatchOperation],开启组合操作。
- 支持版本:1.3.0。
- 使用限制:需要该房间中已开启组合操作。
- 注意事项:在 [BeginRoomAttributesBatchOperation] 未执行时调用,会返还错误。若执行[BeginRoomAttributesBatchOperation]后不执行[EndRoomAttributesBatchOperation]视为没有操作。
返回值
组合操作的回调。
ZIMAudioMessage
音频消息对象。
详情
标识一条音频消息。
- 注意事项:回调时若基类的 Type 参数为 Audio,可将基类消息对象强转为此类。
Declared in ZIMDefines.cs
属性
audioDuration
public ulong audioDuration音频文件的时长。
- 是否必填:发送本地音频消息时,发送端必填,不填会导致音频消息发送失败。
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileUID
public string fileUID媒体文件的唯一 ID。
- 是否必填:发送端不需要填,该值由 SDK 生成。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMAudioMessageLiteInfo
音频消息的简要信息对象。
详情
标识一条音频消息。
Declared in ZIMDefines.cs
属性
audioDuration
public ulong audioDuration音频文件的时长。
- 是否必填:发送本地音频消息时,发送端必填,不填会导致音频消息发送失败。
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
ZIMCacheConfig
缓存配置。
详情
配置缓存文件(例如聊天记录)的存储路径。
Declared in ZIMDefines.cs
属性
cachePath
public string cachePath缓存文件的存储路径。
- 是否必填:非必填。
- 默认值:Android:/storage/Android/data/[packageName]/files/ZIMCaches
iOS:
/Library/Caches/ZIMCaches macOS:(沙箱)/Library/Containers/[Bundle ID]/Data/Library/Caches/ZIMCaches / (非沙箱)~/Library/Caches/ZIMCaches Windows:C:\Users[Your UserName]\AppData[App Name]ZEGO.SDK\ZIMCaches - 建议值:建议使用默认值。
- 注意事项:请注意设置的目录是否有读写权限,否则会导致 SDK 无法正确执行。
ZIMCallAcceptConfig
接受呼叫邀请设置的行为属性。
详情
接受呼叫邀请设置的行为属性。
Declared in ZIMDefines.cs
属性
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
- 是否必填:必填。
ZIMCallCancelConfig
取消呼叫邀请设置的行为属性。
详情
取消呼叫邀请设置的行为属性。
Declared in ZIMDefines.cs
属性
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
- 是否必填:非必填。
- 默认值:""。
pushConfig
ZIMCallEndConfig
结束呼叫邀请设置的行为属性。
详情
结束呼叫邀请设置的行为属性。
Declared in ZIMDefines.cs
属性
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
- 是否必填:非必填。
pushConfig
ZIMCallInfo
呼叫邀请信息。
详情
呼叫邀请信息。
Declared in ZIMDefines.cs
属性
callID
public string callID呼叫邀请 ID。
caller
public string caller呼叫邀请发起者 ID。
mode
state
extendedData
public string extendedData创建呼叫邀请附加信息。
createTime
public number createTime呼叫邀请创建时间戳。
endTime
public number endTime呼叫邀请结束时间。
callUserList
ZIMCallInvitationAcceptedInfo
接受呼叫邀请信息。
详情
接受呼叫邀请信息。
Declared in ZIMDefines.cs
属性
invitee
public string invitee被邀请者ID。
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
ZIMCallInvitationCancelledInfo
取消呼叫邀请信息。
详情
取消呼叫邀请信息。
Declared in ZIMDefines.cs
属性
inviter
public string inviter呼叫邀请的邀请者ID。
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
ZIMCallInvitationCreatedInfo
创建呼叫邀请的信息。
详情
创建呼叫邀请的信息。
Declared in ZIMDefines.cs
属性
timeout
public int timeout详细描述:呼叫邀请的超时时间设置,单位为秒。
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
mode
caller
public string caller本次呼叫邀请的创建者,与调用 callInvite 的 userID 相同。
createTime
public long createTime本次呼叫邀请在服务端创建时的事件戳,精确到毫秒。
callUserList
ZIMCallInvitationQueryConfig
查询呼叫邀请列表的设置属性。
详情
查询呼叫邀请列表的设置属性。
Declared in ZIMDefines.cs
属性
count
public number count查询条数,最多限制 100 条。传入数值超过 100,按照 100 处理。
- 是否必填:必填。
nextFlag
public number nextFlag查询列表的标志位。首次查询时无需填充,查询后 callback 会返回一个 nextFlag,下次查询时填入可以在上一次的基础上继续往后查询。
- 是否必填:非必填。
ZIMCallInvitationReceivedInfo
接受呼叫邀请的信息。
详情
接受呼叫邀请的信息。
Declared in ZIMDefines.cs
属性
timeout
public int timeout详细描述:呼叫邀请的超时时间设置,单位为秒。
inviter
public string inviter邀请者ID。
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
mode
caller
public string caller本次呼叫邀请的创建者,与调用 callInvite 的 userID 相同。
createTime
public long createTime本次呼叫邀请在服务端创建时的事件戳,精确到毫秒。
callUserList
ZIMCallInvitationRejectedInfo
拒绝呼叫邀请信息。
详情
拒绝呼叫邀请信息。
Declared in ZIMDefines.cs
属性
invitee
public string invitee被邀请者ID。
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
ZIMCallInvitationSentInfo
呼叫邀请已发送信息。
详情
呼叫邀请已发送信息。
Declared in ZIMDefines.cs
属性
timeout
public int timeout详细描述:呼叫邀请的超时时间设置,单位为秒。
errorInvitees
public ArrayList<ZIMCallUserInfo> errorInvitees未收到呼叫邀请的用户id。
errorUserList
ZIMCallInviteConfig
发送呼叫邀请设置的行为属性。
详情
发送呼叫邀请设置的行为属性。
Declared in ZIMDefines.cs
属性
timeout
public uint timeout- 是否必填:非必填。
- 默认值:90。
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
pushConfig
mode
enableNotReceivedCheck
public bool enableNotReceivedCheck通过值为 true 的情况下,本次呼叫邀请以及后续呼叫中邀请将会检测邀请是否送达。
- 业务场景:主叫发起呼叫邀请后,如果被叫在 5 秒内(可提单给技术支持配置为 3 秒或 4 秒)因断网、未上线等原因没有接收到本次邀请,该用户状态将会变为 notYetReceived 暂未送达状态。您可使用该状态流转向用户提示该用户可能不在线。当被叫后续在呼叫超时前上线,此状态会流转为 received 已送达状态。
- 是否必填:非必填。
- 默认值:false。
- 注意事项:该属性在 2.15.0 及后续版本生效,新版本发送给老版本开启了送达检测的呼叫邀请,老版本将继续展示 inviting 状态而非 notYetReceived。
ZIMCallJoinConfig
加入呼叫邀请设置的行为属性。
详情
加入呼叫邀请设置的行为属性。
Declared in ZIMDefines.cs
属性
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
ZIMCallQuitConfig
退出呼叫邀请设置的行为属性。
详情
退出呼叫邀请设置的行为属性。
Declared in ZIMDefines.cs
属性
extendedData
public string extendedData扩展字段,邀请者可通过该字段携带信息给被邀请者。
- 是否必填:必填。
pushConfig
ZIMCallRejectConfig
用于设置拒绝呼叫邀请的配置项。
详情
用于发送拒绝邀请时自定义呼叫邀请的配置。
- 业务场景:用户需要在调用拒绝呼叫邀请时将配置项传入接口。
Declared in ZIMDefines.cs
属性
extendedData
public string extendedData用于发送拒绝邀请时附加自定义内容的额外字段。
- 业务场景:用户需要再拒绝时给邀请方传一些自定义内容时使用。
- 是否必填:必填。
- 默认值:""。
ZIMCallUserInfo
呼叫邀请用户信息。
详情
呼叫邀请用户信息。
Declared in ZIMDefines.cs
属性
userID
public string userID用户ID。
- 取值范围:最大 32 字节的字符串。仅支持数字,英文字符 和 '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'。
state
extendedData
public string extendedData呼叫邀请用户信息中的附加信息。
ZIMCallingInviteConfig
邀请用户进入当前呼叫设置的行为属性。
详情
邀请用户进入当前呼叫设置的行为属性。
Declared in ZIMDefines.cs
属性
pushConfig
ZIMCombineMessage
合并消息对象基类。
详情
标识一条合并消息。
- 支持版本:2.14.0 及以上。
Declared in ZIMDefines.cs
属性
title
public string title合并消息标题。
summary
public string summary合并消息的概要
combineID
public string combineID合并消息 ID,SDK 内部使用
messageList
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMCombineMessageLiteInfo
合并消息的简要信息对象。
详情
标识一条合并消息。
Declared in ZIMDefines.cs
属性
title
public string title合并消息标题。
summary
public string summary合并消息的概要
ZIMCommandMessage
自定义二进制消息对象。
详情
标识一条二进制消息。
- 注意事项:回调时若基类的 Type 参数为 command,可将基类消息对象强转为此类。
Declared in ZIMDefines.cs
属性
message
public char * message消息的内容,支持任意数据。
- 是否必填:发送端必填,否则消息会发送失败。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
方法
ZIMCommandMessage
ZIMConversation
会话具体内容。
详情
会话的具体内容。
Declared in ZIMDefines.cs
属性
conversationID
public string conversationID会话ID。
conversationName
public string conversationNameconversationName,与会话对应的 groupName/userName 值相同。
type
unreadMessageCount
public int unreadMessageCount会话未读数。
lastMessage
orderKey
public long orderKey用于描述消息在会话中的顺序,orderKey 越大越新。
notificationStatus
conversationAvatarUrl
public string conversationAvatarUrl会话头像 URL。单聊会话头像 URL 与用户头像 URL 相同,群聊会话头像 URL 与群头像 URL 相同。
- 使用限制: 最大 500 字节,无特殊字符限制。
isPinned
public bool isPinned会话是否置顶。
- 支持版本:2.8.0。
mentionedInfoList
public ArrayList<ZIMMessageMentionedInfo> mentionedInfoList当在会话的消息中被提醒到或者被提醒所有人时,该数组会有记录。
- 业务场景:比如可以在会话列表根据该数组显示当前会话有多少个提醒,还可以显示是哪个用户的提醒。
conversationAlias
public string conversationAlias会话别名,通过 [updateFriendAlias] 设置好友备注后,对应的单聊会话该参数会同步修改。通过 [updateGroupAlias] 设置群备注后,对应的群聊会话该参数会同步修改。
- 业务场景:为好友或群组设置备注后,渲染会话页时,对应的会话优先选择展示 alias 别名,而不是 conversation name(好友的用户名或群组名)。
marks
public std::vector\<int> marks描述了该会话现有的所有标记。
- 业务场景:业务层可以按照不同会话拥有的不同标记做分组逻辑等。
draft
public string draft会话草稿,当设置会话草稿后,会话中会带有该字段。
ZIMConversationChangeInfo
会话变更信息。
详情
包含会话变更后的信息。
Declared in ZIMDefines.cs
属性
event
conversation
ZIMConversationDeleteConfig
删除会话配置。
详情
删除会话的相关配置。
Declared in ZIMDefines.cs
属性
isAlsoDeleteServerConversation
public bool isAlsoDeleteServerConversation是否删除服务端会话
- 是否必填:非必填。
- 默认值:true。
ZIMConversationQueryConfig
查询会话的相关配置。
详情
查询会话时可配置的信息。
Declared in ZIMDefines.cs
属性
nextConversation
count
public uint count需要查询的会话数量。
- 是否必填:必填。
ZIMConversationSearchConfig
会话搜索配置。
详情
会话搜索配置。
Declared in ZIMDefines.cs
属性
nextFlag
public int nextFlag分页拉取表示 ,初始时填 0,后续填从 callback 里返回的 nextFlag,以获取下一分页的数据。
totalConversationCount
public int totalConversationCount搜索一次可获取的消息数量。建议小于 20,以降低性能开销。
- 是否必填:必填。
conversationMessageCount
public int conversationMessageCount搜索一次,可获取单个会话的本地消息数量,建议小于 10,以降低性能开销。
keywords
public List\<string> keywords搜索关键字,最多支持 5 个,否则会报错。例如:传入 "1" 和 "2",则搜索结果只会展示消息同时包含 "1" 和 "2" 这两个关键字的会话。
messageTypes
subMessageTypes
public List\<int> subMessageTypes自定义消息的子类型,取值范围为 [0,200]。开发者可基于此搜索具体的自定义类型。
senderUserIDs
public List\<string> senderUserIDs发送用户 ID,最多支持 5 个。例如,传入 "zego2023",则搜索结果只会展示 "zego2023" 用户发过消息的会话。
startTime
public long startTime搜索的起始时间点,单位:毫秒,默认为 0,格式:UTC 时间戳。
endTime
public long endTime搜索的结束时间点,必须大于 startTime,单位:毫秒,默认为 0,格式:UTC 时间戳。
ZIMConversationSearchInfo
会话搜索信息。
Declared in ZIMDefines.cs
属性
conversationID
public string conversationID要搜索的本地消息的会话 ID。
conversationType
totalMessageCount
public int totalMessageCount总消息条数。
messageList
ZIMCustomMessage
自定义消息对象。
详情
标识一条自定义消息。
- 支持版本:2.8.0 及以上。
- 注意事项:回调时若基类的 Type 参数为 Custom,可将基类消息对象强转为此类。
Declared in ZIMDefines.cs
属性
message
public string message消息的文本内容,应为标准 UTF-8 字符串。
- 是否必填:发送端必填,否则消息会发送失败。
subType
public uint subType消息的子类型,用于客户自定义不同自定义消息的用法。取值范围为 [0, 200]。
- 是否必填:发送端必填,否则消息会发送失败。
searchedContent
public string searchedContent自定义消息的检索字段。由于无法通过直接搜索 message 字段来搜索自定义消息,您可把该自定义消息中希望被搜索的内容(如投票的标题等)拼接后放到此参数(长度上限默认为 64 字节),以便后续搜索。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMCustomMessageLiteInfo
自定义消息的简要对象。
详情
标识一条自定义消息。
Declared in ZIMDefines.cs
属性
message
public string message消息的文本内容,为标准 UTF-8 字符串。
- 是否必填:发送端必填,否则消息会发送失败。
subType
public uint subType消息的子类型,用于客户自定义不同自定义消息的用法。取值范围为 [0, 200]。
- 是否必填:发送端必填,否则消息会发送失败。
searchedContent
public string searchedContent自定义消息的检索字段。由于无法通过直接搜索 message 字段来搜索自定义消息,您可把该自定义消息中希望被搜索的内容(如投票的标题等)拼接后放到此参数(长度上限默认为 64 字节),以便后续搜索。
ZIMError
错误信息
详情
错误信息。
Declared in ZIMDefines.cs
属性
code
message
public string message错误信息描述。
ZIMEventHandler
详情
回调。
Declared in ZIMEventHandler.cs
方法
OnError
OnConnectionStateChanged
public delegate void OnConnectionStateChanged(ZIM zim,ZIMConnectionState state,ZIMConnectionEvent event,Dictionary\<string, string> extendedData)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| state | ZIMConnectionState | 连接状态变更后的当前状态。 |
| event | ZIMConnectionEvent | 导致连接状态发生变更的事件。 |
| extendedData | Dictionary<string, string> | 事件发生时的额外信息,标准 JSON 格式数据。 |
详情
连接状态发生改变时会通过该回调将目前的状态与事件通知用户。
- 业务场景:需要监测连接状态,以及使得连接状态改变的事件时,可通过该回调中的 [ZIMConnectionState] 和 [ZIMConnectionEvent] 以完成不同的业务逻辑。
- 通知时机:连接状态发生改变时会回调此函数通知。
- 支持版本:1.1.0 及以上。
OnTokenWillExpire
public delegate void OnTokenWillExpire(ZIM zim,uint second)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| second | uint | Token 即将过期的剩余时间,单位秒。 |
详情
当收到此回调时,开发者应当及时调用 [RenewToken] 函数更新 Token。
- 通知时机:在鉴权 Token 只剩下 30 秒时,SDK 会回调此函数通知开发者更新鉴权 Token。若开发者 [Login] 时传入的鉴权 Token 不足 30 秒的有效期,则在 [login] 成功之后即会回调出来。
- 相关参考:详情请参考鉴权 Token 生成 https://doc-zh.zego.im/article/11617 。
- 支持版本:1.1.0 及以上。
OnUserInfoUpdated
public delegate void OnUserInfoUpdated(ZIM zim,ZIMUserFullInfo info)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMUserFullInfo | 更新后的用户信息。 |
详情
多端登录场景时,用户在 A 设备修改自己的信息后,其他在线的多端设备会收到此回调。对于离线设备,用户上线后,需要调用 [QueryUsersInfo] 接口,主动查询用户信息。
- 支持版本:2.11.0 及以上。
OnUserRuleUpdated
public delegate void OnUserRuleUpdated(ZIM zim,ZIMSelfUserRule userRule)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| userRule | ZIMSelfUserRule | 更新后的用户规则信息。 |
详情
用户规则变更的回调。
- 通知时机:当前用户的用户规则发生变更时,会通过该回调通知所有端。
- 支持版本:2.15.0 及以后版本。
OnCallInvitationReceived
public delegate void OnCallInvitationReceived(ZIM zim,ZIMCallInvitationReceivedInfo info,string callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallInvitationReceivedInfo | 已接收到的呼叫邀请的相关信息。 |
| callID | string | 已接收到的CallID。 |
详情
邀请者发起呼叫邀请后,当被邀请者在线时,将会收到此回调。
- 业务场景:被邀请者会在邀请者发送呼叫邀请后,会收到此回调。
- 调用时机:通过 [create] 创建ZIM实例后。
- 相关接口:[callInvite]。
- 支持版本:2.0.0 及以上。
- 注意事项:若用户不在邀请列表里面或者不在线,则不会收到该回调。
OnCallInvitationCreated
public delegate void OnCallInvitationCreated(ZIM zim,ZIMCallInvitationCreatedInfo info,string callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallInvitationCreatedInfo | 创建的呼叫邀请的相关信息。 |
| callID | string | 创建的CallID。 |
详情
邀请者发起呼叫邀请后,当邀请者在线时,将会收到此回调。
- 业务场景:邀请者会在发送呼叫邀请后,会收到此回调。
- 调用时机:通过 [create] 创建ZIM实例后。
- 相关接口:[callInvite]。
- 支持版本:2.13.0 及以上。
OnCallInvitationCancelled
public delegate void OnCallInvitationCancelled(ZIM zim,ZIMCallInvitationCancelledInfo info,string callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallInvitationCancelledInfo | 已取消的呼叫邀请的相关信息。 |
| callID | string | 已取消的callID。 |
详情
邀请者取消呼叫邀请后,当被邀请者在线时,将会收到此回调。
- 业务场景:被邀请者会在邀请者取消呼叫邀请后,会收到此回调。
- 调用时机:通过 [Create] 创建ZIM实例后。
- 相关接口:[CallCancel]。
- 支持版本:2.0.0 及以上。
- 注意事项:若用户不在取消邀请列表里面或者不在线,则不会收到该回调。
OnCallInvitationTimeout
public delegate void OnCallInvitationTimeout(ZIM zim,ZIMCallInvitationTimeoutInfo info,string callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallInvitationTimeoutInfo | 有关超时通知的信息类。 |
| callID | string | 超时的callID。 |
详情
当呼叫邀请超时后,被邀请者没有响应,被邀请者会收到此回调。
- 业务场景:被邀请者没有在超时时间前响应,被邀请者会收到此回调。
- 调用时机:通过 [Create] 创建ZIM实例后。
- 相关接口:[CallInvite]、[CallAccept]、 [CallReject]。
- 支持版本:2.0.0 及以上。
- 注意事项:若用户不在邀请列表或者不在线,则不会收到该回调。
OnCallInvitationAccepted
public delegate void OnCallInvitationAccepted(ZIM zim,ZIMCallInvitationAcceptedInfo info,string callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallInvitationAcceptedInfo | 已被接受的呼叫邀请的相关信息。 |
| callID | string | 已被接受的callID。 |
详情
被邀请者接受呼叫邀请后,当邀请者在线时,将会收到此回调。
- 业务场景:邀请者会在邀请者接受呼叫邀请后,会收到此回调。
- 调用时机:通过 [Create] 创建ZIM实例后。
- 相关接口:[CallAccept]。
- 支持版本:2.0.0 及以上。
- 注意事项:若用户不是发起这次呼叫邀请的邀请者或者不在线,则不会收到该回调。
OnCallInvitationRejected
public delegate void OnCallInvitationRejected(ZIM zim,ZIMCallInvitationAcceptedInfo info,string callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallInvitationAcceptedInfo | 已拒绝的呼叫邀请的相关信息。 |
| callID | string | 已拒绝的呼叫邀请的callID。 |
详情
被邀请者拒绝呼叫邀请后,当邀请者在线时,将会收到此回调。
- 业务场景:邀请者会在邀请者拒绝呼叫邀请后,会收到此回调。
- 调用时机:通过 [Create] 创建ZIM实例并登录后。
- 相关接口:[CallReject]。
- 支持版本:2.0.0 及以上。
- 注意事项:若用户不是发起这次呼叫邀请的邀请者或者不在线,则不会收到该回调。
OnCallInviteesAnsweredTimeout
public delegate void OnCallInviteesAnsweredTimeout(ZIM zim,List\<string> invitees)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| invitees | List<string> | 超时的被邀请者ID。 |
详情
当呼叫邀请超时后,被邀请者没有响应,邀请者会收到此回调。
- 业务场景:被邀请者没有在超时时间前响应,邀请者会收到此回调。
- 调用时机:通过 [Create] 创建ZIM实例后。
- 相关接口:[CallInvite]、[CallAccept]、 [CallReject]。
- 支持版本:2.0.0 及以上。
- 注意事项:若用户不是发起这次呼叫邀请的邀请者或者不在线,则不会收到该回调。
OnCallInvitationEnded
public delegate void OnCallInvitationEnded(ZIM zim,ZIMCallInvitationEndedInfo info,string callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallInvitationEndedInfo | 事件回调携带的信息。 |
| callID | string | 超时的被邀请者ID。 |
详情
在进阶模式下,当呼叫邀请建立后,某一参与者结束呼叫后,所有参与者会收到此回调。
- 相关接口:[CallEnd]
- 支持版本:2.9.0 及以上。
- 注意事项:若用户不是发起这次呼叫的参与者或者不在线,则不会收到该回调。
OnCallUserStateChanged
public delegate void OnCallUserStateChanged(ZIM zim,ZIMCallUserStateChangeInfo info,List\<string> callID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMCallUserStateChangeInfo | 呼叫成员状态变化的信息。 |
| callID | List<string> | 本次呼叫的唯一标识符。 |
详情
监听呼叫用户状态变化。
- 通知时机:当呼叫邀请发起后,呼叫中有新的成员被邀请,或者成员接受、拒绝、退出,或者成员应答超时,当前呼叫邀请中所有用户状态为 "Inviting"、"Accepted" 和 "Received" 的用户可在此处收到此回调。若通知时成员不在线,登录成功时呼叫仍然未结束,离线期间的所有成员的状态变更会一次补发给这名用户。详细流程请阅读 https://doc-zh.zego.im/article/13930。
- 相关接口:[CallInvite]、[CallingInvite]、[CallAccept]、 [CallReject]、[CallQuit]。
- 支持版本:2.9.0 及以上。
- 注意事项:若用户不是发起这次呼叫的参与者或者不在线,则不会收到该回调。
OnGroupStateChanged
public delegate void OnGroupStateChanged(ZIM zim,ZIMGroupState state,ZIMGroupEvent event,ZIMGroupOperatedInfo operatedInfo,ZIMGroupFullInfo groupInfo)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| state | ZIMGroupState | 群变更后的状态。 |
| event | ZIMGroupEvent | 群相关事件。 |
| operatedInfo | ZIMGroupOperatedInfo | 已操作的群信息。 |
| groupInfo | ZIMGroupFullInfo | 发生群状态变更的信息。 |
详情
群组状态发生变更通知回调。
- 业务场景: 需要根据群组状态进行交互的场景。
- 通知时机:群组创建、加入、离开、解散操作时会触发通知。
- 相关接口:[CreateGroup],创建群组。[JoinGroup],加入群组。[LeaveGroup],离开群组。[DismissGroup],解散群组。
OnGroupNameUpdated
public delegate void OnGroupNameUpdated(ZIM zim,string groupName,ZIMGroupOperatedInfo operatedInfo,string groupID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| groupName | string | 更新后的群名称。 |
| operatedInfo | ZIMGroupOperatedInfo | 群名称更新后的操作信息。 |
| groupID | string | 发生群名称更新的groupID。 |
详情
群组名称发生变更通知回调。
- 业务场景: 群组名称发生变更时,需要同步最新群名称。
- 通知时机:群组名称发生变更。
- 相关接口:[UpdateGroupName],更新群组名称。
OnGroupAvatarUrlUpdated
public delegate void OnGroupAvatarUrlUpdated(ZIM zim,string groupAvatarUrl,ZIMGroupOperatedInfo operatedInfo,string groupID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| groupAvatarUrl | string | 更新后的群头像 URL。 |
| operatedInfo | ZIMGroupOperatedInfo | 群头像 URL 更新后的操作信息。 |
| groupID | string | 发生群名称更新的groupID。 |
详情
群组头像 URL 发生变更通知回调。
- 业务场景: 群组头像 URL 发生变更时,需要同步最新群头像 URL 。
- 通知时机:群组头像 URL 发生变更。
- 相关接口:[UpdateGroupAvatarUrl],更新群组头像 URL 。
OnGroupNoticeUpdated
public delegate void OnGroupNoticeUpdated(ZIM zim,string groupNotice,string operatedInfo,string groupID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| groupNotice | string | 更新后的群公告。 |
| operatedInfo | string | 群公告更新后的操作信息。 |
| groupID | string | 发生群公告更新的groupID。 |
详情
群组公告发生变更通知回调。
- 业务场景: 群组公告发生变更时,需要同步最新公告内容。
- 通知时机:群组公告发生变更。
- 相关接口:[UpdateGroupNotice],更新群组公告。
OnGroupAttributesUpdated
public delegate void OnGroupAttributesUpdated(ZIM zim,List<ZIMGroupAttributesUpdateInfo> infos,ZIMGroupOperatedInfo operatedInfo,string groupID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| infos | List<ZIMGroupAttributesUpdateInfo> | 群属性更新后的信息。 |
| operatedInfo | ZIMGroupOperatedInfo | 群属性更新后的操作信息。 |
| groupID | string | 发送群属性更新的groupID。 |
详情
群组属性发生变更通知回调。
- 业务场景: 群组属性发生变更时,需要同步最新群属性内容。
- 通知时机:设置、更新、删除群组属性时触发。
- 相关接口:[SetGroupAttributes],更新群组属性。[DeleteGroupAttributes],删除群组属性。
OnGroupMemberStateChanged
public void OnGroupMemberStateChanged(ZIM zim,ZIMGroupMemberState state,ZIMGroupMemberEvent event,List<ZIMGroupMemberInfo> userList,ZIMGroupOperatedInfo operatedInfo,string groupID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| state | ZIMGroupMemberState | 更新后的成员状态。 |
| event | ZIMGroupMemberEvent | 更新后的成员事件。 |
| userList | List<ZIMGroupMemberInfo> | 更新后的成员信息。 |
| operatedInfo | ZIMGroupOperatedInfo | 更新后的操作信息。 |
| groupID | string | 发生成员状态变更的groupID。 |
详情
群成员状态发生变更通知回调。
- 业务场景: 需要根据群成员状态进行交互的场景。
- 通知时机:群组创建、加入、离开、解散,邀请用户进群、将用户踢出群组操作时会触发通知。
- 相关接口:[CreateGroup],创建群组。[JoinGroup],加入群组。[LeaveGroup],离开群组。[DismissGroup],解散群组。[IntiveUsersIntoGroup],邀请用户进入群组。[KickGroupMembers],将用户踢出群组。
OnGroupMemberInfoUpdated
public delegate void OnGroupMemberInfoUpdated(ZIM zim,List<ZIMGroupMemberInfo> groupMemberInfos,ZIMGroupOperatedInfo operatedInfo,string groupID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| groupMemberInfos | List<ZIMGroupMemberInfo> | 更新后的成员信息。 |
| operatedInfo | ZIMGroupOperatedInfo | 更新后的操作信息。 |
| groupID | string | 发生群成员信息变更的groupID。 |
详情
群组成员基本信息变更操作结果的返回。
- 业务场景:群组成员基本信息发生变更后,需要在页面进行展示或其他交互。
- 通知时机:群组成员基本信息变更结束后的结果返回。
- 相关接口:[SetGroupMemberNickname],更新群成员昵称。[SetGroupMemberRole],更新群成员角色。[TransferGroupOwner],群主转让。
OnConversationChanged
public delegate void OnConversationChanged(ZIM zim,List<ZIMConversationChangeInfo> conversationChangeInfoList)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| conversationChangeInfoList | List<ZIMConversationChangeInfo> | 会话变更的信息。 |
详情
当会话发生增加、删除、修改、置顶、取消置顶时,触发该回调返回会话更新的通知。
- 通知时机:当会话存在新的消息更新、或会话本身增加、删除、修改时触发通知。
- 相关接口:可通过 [SendPeerMessage]、[SendGroupMessage]、[SendRoomMessage]、[DeleteConversation]、[DeleteMessage]、[DeleteMessageByConversationID]、[UpdateConversationPinnedState] 触发。
- 支持版本:2.0.0 及以上。
- 注意事项:conversationID 与单聊的 toUserID、群聊的 GroupID 一致。
OnConversationMessageReceiptChanged
public delegate void OnConversationMessageReceiptChanged(ZIM zim,List<ZIMMessageReceiptInfo> infos)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| infos | List<ZIMMessageReceiptInfo> | 回执信息。 |
详情
当消息接收方进行会话已读后,消息发送方通过此回调得知。
- 通知时机:当消息接收方进行会话已读时触发通知。
- 相关接口:当对端调用通过 [SendConversationMessageReceiptRead] 触发。
- 支持版本:2.5.0 及以上。
OnConversationsAllDeleted
public delegate void OnConversationsAllDeleted(ZIM zim,ZIMConversationsAllDeletedInfo info)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| info | ZIMConversationsAllDeletedInfo | 全部会话被删除的信息。 |
详情
该回调返回全部会话被删除的通知。
- 通知时机:当其他端删除全部会话时,本端触发通知。
- 相关接口:可通过 [DeleteAllConversations] 触发。
- 支持版本:2.12.0 及以上。
OnMessageReceiptChanged
public delegate void OnMessageReceiptChanged(ZIM zim,List<ZIMMessageReceiptInfo> infos)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| infos | List<ZIMMessageReceiptInfo> | 回执信息。 |
详情
当消息接收方进行消息已读后,消息发送方通过此回调得知。
- 通知时机:当消息接收方进行消息已读时触发通知。
- 相关接口:当对端调用通过 [SendMessageReceiptsRead] 触发。
- 支持版本:2.5.0 及以上。
OnConversationTotalUnreadMessageCountUpdated
public delegate void OnConversationTotalUnreadMessageCountUpdated(ZIM zim,uint totalUnreadMessageCount)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| totalUnreadMessageCount | uint | 更新后的总未读数。 |
详情
该回调用于返回会话的总未读数。
- 通知时机:登录时、调用 [DeleteConversation]、[DeleteMessage]、[DeleteAllMessage]、[ClearConversationUnreadMessageCount]、[clearConversationTotalUnreadMessageCount] 使消息未读数发生变化触发该回调。
- 相关接口:[DeleteConversation]、[DeleteMessage]、[DeleteAllMessage]、[ClearConversationUnreadMessageCount]、[ClearConversationTotalUnreadMessageCount]
- 支持版本:2.0.0 及以上。
OnMessageRevokeReceived
public delegate void OnMessageRevokeReceived(ZIM zim,List<ZIMRevokeMessage> messageList,uint message_list_length)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| messageList | List<ZIMRevokeMessage> | 收到的消息的列表。 |
| message_list_length | uint | 消息列表的长度。 |
详情
当其他人发来消息然后撤回时,将会收到此回调。
- 调用时机:通过 [Create] 创建 ZIM 实例后,且该其他用户向你发送消息后撤回时,会收到该回调。
- 相关接口:可通过 [RevokeMessage] 撤回向其他成员发送的消息。
- 支持版本:2.5.0 及以上。
OnMessageSentStatusChanged
public delegate void OnMessageSentStatusChanged(ZIM zim,List<ZIMMessageSentStatusChangeInfo> infos,uint infos_list_length)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| infos | List<ZIMMessageSentStatusChangeInfo> | 收到的消息的列表。 |
| infos_list_length | uint | 消息列表的长度。 |
详情
当消息发送状态发生变化时,将会收到此回调。
- 调用时机:发送消息状态发生变化时,会收到该回调。
- 相关接口:可通过 [SendMessage] 向其他成员发送的消息。
- 支持版本:2.6.0 及以上。
OnBroadcastMessageReceived
public delegate void OnBroadcastMessageReceived(ZIM zim,ZIMMessage message,ZIMEventOfBroadcastMessageReceivedResult data)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| message | ZIMMessage | 收到的消息。 |
| data | ZIMEventOfBroadcastMessageReceivedResult | 事件回调的结果。 |
详情
当收到服务端接口 [SendMessageToAllUsers] 发送的消息时收到该回调。
- 调用时机:登录 ZIM 服务后,且服务端调用接口 [SendMessageToAllUsers] 发送的消息时,会收到该回调。
- 支持版本:2.10.0 及以上。
OnMessageReactionsChanged
public delegate void OnMessageReactionsChanged(ZIM zim,List<ZIMMessageReaction> reactions)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| reactions | List<ZIMMessageReaction> | 变更的表态列表。 |
详情
当表态发生变更时收到该回调。
- 通知时机:其他用户对单聊或群聊的消息添加或删除表态后。
- 调用时机:通过 [create] 创建 ZIM 实例后。
- 相关接口:[AddMessageReaction]、[DeleteMessageReaction]。
- 支持版本:2.10.0 及以上。
OnMessageDeleted
public delegate void OnMessageDeleted(ZIM zim,ZIMMessageDeletedInfo deletedInfo)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| deletedInfo | ZIMMessageDeletedInfo | 被删除的消息信息。 |
详情
多端登录场景时,用户在 A 设备删除服务端消息后,其他在线的多端设备会收到此回调。
- 支持版本:2.11.0 及以上。
OnReceivePeerMessage
public delegate void OnReceivePeerMessage(ZIM zim,List\<ZIMMessage> messageList,uint message_list_length,string fromUserID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| messageList | List<ZIMMessage> | 收到的消息的列表。 |
| message_list_length | uint | 消息列表的长度。 |
| fromUserID | string | 消息发送方的用户 ID。与单聊会话 ID 一致。 |
详情
当收到其他人发来的点对点消息时,将会收到此回调。
- 调用时机:通过 [Create] 创建 ZIM 实例后,且该其他用户向你发送消息时,会收到该回调。
- 相关接口:可通过 [SendPeerMessage] 向其他成员发送消息。
- 支持版本:1.1.0 及以上。
OnReceiveRoomMessage
public delegate void OnReceiveRoomMessage(ZIM zim,List<ZIMMessage> messageList,uint message_list_length,string fromRoomID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| messageList | List<ZIMMessage> | 收到的消息的列表。 |
| message_list_length | uint | 消息列表的长度。 |
| fromRoomID | string | 收到消息的房间 ID。 |
详情
当收到房间内消息时,将会收到此回调。
- 调用时机:通过 [Create] 创建 ZIM 实例后,且该其他用户向当前已经加入或创建的房间发送消息时,会收到该回调。
- 相关接口:可通过 [SendRoomMessage] 向其他房间成员发送消息。
- 支持版本:1.1.0 及以上。
OnMessageRepliedCountChanged
public delegate void OnMessageRepliedCountChanged(ZIM zim,List\< ZIMMessageRootRepliedCountInfo> infos)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| infos | List< ZIMMessageRootRepliedCountInfo> | 根消息的回复数量信息列表。 |
详情
有新的回复消息时,其对应的的根消息的回复数量通过此事件告知。
- 支持版本:2.17.0 及以上。
OnMessageRepliedInfoChanged
public delegate void OnMessageRepliedInfoChanged(ZIM zim,List\<ZIMMessage> messageList)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| messageList | List<ZIMMessage> | 收到的消息的列表。 |
详情
回复消息引用的源消息被删除和撤回后,收到的回复消息的变更事件。
- 支持版本:2.17.0 及以上。
OnReceiveGroupMessage
public delegate void OnReceiveGroupMessage(ZIM zim,List\<ZIMMessage> messageList,uint message_list_length,string fromGroupID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| messageList | List<ZIMMessage> | 收到的消息的列表。 |
| message_list_length | uint | 消息列表的长度。 |
| fromGroupID | string | 消息所属的 Group ID。 |
详情
当收到群消息时,将会收到此回调。
- 调用时机:通过 [Create] 创建 ZIM 实例后,且所在群成员发送消息时,会收到该回调。
- 相关接口:可通过 [SendGroupMessage] 向其他群成员发送消息。
- 支持版本:2.0.0 及以上。
OnRoomStateChanged
public delegate void OnRoomStateChanged(ZIM zim,ZIMRoomState state,ZIMRoomEvent event,Dictionary\<string, string> extendedData,string roomID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| state | ZIMRoomState | 房间连接状态变更后的当前状态。 |
| event | ZIMRoomEvent | 导致房间连接状态发生变更的事件。 |
| extendedData | Dictionary<string, string> | 事件发生时的额外信息,标准 JSON 字符串。 |
| roomID | string | 发生状态改变的房间 ID。 |
详情
房间连接状态发生改变的事件回调。
- 调用时机:用户位于房间中且房间状态改变时触发此回调。
- 相关接口:可通过 [OnTokenWillExpire],在token快要过期时会收到该回调。
- 支持版本:1.1.0 及以上。
OnRoomMemberJoined
public delegate void OnRoomMemberJoined(ZIM zim,List<ZIMUserInfo> memberList,string roomID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| memberList | List<ZIMUserInfo> | 加入房间的成员列表。 |
| roomID | string | 发生此事件的房间 ID。 |
详情
加入一个房间后,当有其他成员也加入到此房间时,将会收到此回调。
- 业务场景:当房间内有其他成员加入时,会调用此回调。
- 调用时机:通过 [Create] 创建ZIM实例后,且该用户位于其他成员加入的房间中时可调用该接口。
- 相关接口:可通过 [OnRoomMemberLeft],在有其他房间成员离开时,收到此回调。
- 支持版本:1.1.0 及以上。
- 注意事项:若用户当前不在此房间内,则不会调用该回调。
OnRoomMemberLeft
public delegate void OnRoomMemberLeft(ZIM zim,List<ZIMUserInfo> memberList,string roomID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例对象。 |
| memberList | List<ZIMUserInfo> | 离开房间的成员列表。 |
| roomID | string | 发生此事件的房间 ID。 |
详情
加入一个房间后,当有其他成员离开此房间时,将会收到此回调。
- 业务场景:当房间内有其他成员离开房间时,会调用此回调。
- 调用时机:通过 [Create] 创建 ZIM 实例后,且该用户位于其他成员同一房间中时可调用该接口。
- 相关接口:可通过 [OnRoomMemberJoined],在有其他房间成员加入时,收到此回调。
- 支持版本:1.1.0 及以上。
- 注意事项:若用户当前不在此房间内,则不会调用该回调。
OnRoomAttributesUpdated
public delegate void OnRoomAttributesUpdated(ZIM zim,ZIMRoomAttributesUpdateInfo info,string roomID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | zim实例。 |
| info | ZIMRoomAttributesUpdateInfo | 发生变更的房间属性。 |
| roomID | string | 发生房间属性变更的房间号。 |
详情
当房间中的房间属性发生变更时,通过该回调通知。
- 业务场景:语聊房场景下,有其他用户上下麦的通知。
- 通知时机:房间中的房间属性发生变更会触发该通知。
- 支持版本:1.3.0。
OnRoomAttributesBatchUpdated
public delegate void OnRoomAttributesBatchUpdated(ZIM zim,string roomID,List<ZIMRoomAttributesUpdateInfo> infos)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | zim实例。 |
| roomID | string | 发生房间属性变更的房间号。 |
| infos | List<ZIMRoomAttributesUpdateInfo> | 发生变更的房间属性。 |
详情
当房间中的房间属性发生变更时,通过该回调通知。
- 业务场景:语聊房场景下,有其他用户上下麦的通知。
- 通知时机:房间中的房间属性发生变更会触发该通知。
- 支持版本:1.3.0。
OnRoomMemberAttributesUpdated
public delegate void OnRoomMemberAttributesUpdated(ZIM zim,List<ZIMRoomMemberAttributesUpdateInfo> infos,ZIMRoomOperatedInfo operatedInfo,string roomID)ZIMEventHandler.cs参数
| 名称 | 类型 | 描述 |
|---|---|---|
| zim | ZIM | ZIM 实例。 |
| infos | List<ZIMRoomMemberAttributesUpdateInfo> | 房间成员属性的更改信息。 |
| operatedInfo | ZIMRoomOperatedInfo | 房间操作信息。 |
| roomID | string | 房间 ID。 |
详情
当房间内有用户的属性发生变更时,将会收到该回调。
ZIMFileMessage
文件消息对象。
详情
标识一条文件消息。
- 注意事项:回调时若基类的 Type 参数为 File,可将基类消息对象强转为此类。
Declared in ZIMDefines.cs
属性
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileUID
public string fileUID媒体文件的唯一 ID。
- 是否必填:发送端不需要填,该值由 SDK 生成。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMFileMessageLiteInfo
文件消息的简要信息对象。
详情
标识一条文件消息。
Declared in ZIMDefines.cs
属性
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
ZIMFriendAddConfig
添加好友设置的行为属性。
详情
添加好友设置的行为属性。
Declared in ZIMDefines.cs
属性
wording
public string wording添加好友附言。
friendAlias
public string friendAlias好友备注。
friendAttributes
public Record<string, string> friendAttributes好友属性。最多设置 5 个。属性的 key 仅支持从 k0 ~ k4 取值。
ZIMFriendApplicationAcceptConfig
接受好友申请的行为属性。
详情
接受好友申请的行为属性。
Declared in ZIMDefines.cs
属性
friendAlias
public string friendAlias好友别名。
friendAttributes
public HashMap<String, String> friendAttributes好友属信
pushConfig
ZIMFriendApplicationListQueryConfig
查询好友申请列表配置。
详情
查询好友申请列表配置。
Declared in ZIMDefines.cs
属性
count
public int count当前查询总数。
nextFlag
public int nextFlag当前查询锚点下标。
ZIMFriendApplicationRejectConfig
拒绝好友申请的行为属性。
详情
拒绝好友申请的行为属性。
Declared in ZIMDefines.cs
属性
pushConfig
ZIMFriendApplicationSendConfig
发起好友申请的行为属性。
详情
发起好友申请的行为属性。
Declared in ZIMDefines.cs
属性
wording
public string wording添加好友附言。
friendAlias
public string friendAlias好友备注。
friendAttributes
public Record<string, string> friendAttributes好友属性。最多设置 5 个。属性的 key 仅支持从 k0 ~ k4 取值。
pushConfig
ZIMFriendDeleteConfig
删除好友设置的行为属性。
详情
添加好友设置的行为属性。
Declared in ZIMDefines.cs
属性
type
ZIMFriendListQueryConfig
查询好友列表配置。
详情
查询好友列表配置。
Declared in ZIMDefines.cs
属性
count
public int count当前查询总数。
nextFlag
public int nextFlag当前查询锚点下标。
ZIMFriendRelationCheckConfig
检查好友关系的行为属性。
详情
检查好友关系的行为属性。
Declared in ZIMDefines.cs
属性
type
ZIMFriendsSearchConfig
搜索本地好友配置。
详情
搜索本地好友配置。
Declared in ZIMDefines.cs
属性
keywords
public string[] keywords搜索关键词列表。
isAlsoMatchFriendAlias
public bool isAlsoMatchFriendAlias是否匹配好友别名。
count
public int count当前搜索总数。
nextFlag
public int nextFlag当前搜索起止下标。
ZIMGroup
群组列表的完整的信息。
详情
群组列表的完整的信息。
Declared in ZIMDefines.cs
属性
baseInfo
notificationStatus
groupAlias
public string groupAlias用户自定的仅该用户可见的群备注。
ZIMGroupAdvancedConfig
群组高级配置。
详情
群组高级配置。
- 是否必填:是。
Declared in ZIMDefines.cs
属性
groupAttributes
public HashMap<String, String> groupAttributes群组属性,最多可配置 10 个。
- 是否必填:否。
groupNotice
public string groupNotice群公告。
- 是否必填:否。
maxMemberCount
public uint maxMemberCount群成员最大数量。
- 业务场景:当需要限制群成员数量时使用。
- 是否必填:否。
- 默认值:0。
- 取值范围:[0, 套餐默认的最大群成员数量]。
- 注意事项:支持版本 2.15 及以上。
joinMode
public ZIMGroupJoinMode joinMode入群模式。
- 是否必填:否。
- 注意事项:支持版本 2.15 及以上。
inviteMode
public ZIMGroupInviteMode inviteMode邀请模式。
- 是否必填:否。
- 注意事项:支持版本 2.15 及以上。
beInviteMode
public ZIMGroupBeInviteMode beInviteMode邀请目标验证模式。
- 是否必填:否。
- 注意事项:支持版本 2.15 及以上。
ZIMGroupAttributesUpdateInfo
群属性更新信息。
详情
群属性更新信息。
Declared in ZIMDefines.cs
属性
action
groupAttributes
public HashMap<String, String> groupAttributes群属性。
ZIMGroupFullInfo
群组完整的信息。
详情
群组完整的信息。
Declared in ZIMDefines.cs
属性
baseInfo
groupAttributes
public HashMap<String, String> groupAttributes群组属性。
groupNotice
public string groupNotice群公告。
notificationStatus
mutedInfo
public ZIMGroupMuteInfo mutedInfo群禁言信息。
createTime
public ulong createTime群创建时的服务端的时间戳。
- 注意事项:支持版本 2.15 及以上。
maxMemberCount
public uint maxMemberCount群成员最大数量。
- 注意事项:支持版本 2.15 及以上。
verifyInfo
public ZIMGroupVerifyInfo verifyInfo入群的验证模式。
- 注意事项:支持版本 2.15 及以上。
groupAlias
public string groupAlias用户自定的仅该用户可见的群备注。
ZIMGroupInfo
群组信息。
详情
群组信息。
Declared in ZIMDefines.cs
属性
groupID
public string groupID群组ID。
- 是否必填:非必填,若 groupID 为空后台会自动生成。
- 取值范围:最大 32 字节的字符串。仅支持数字,英文字符 和 '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'。且不能以 ’#‘ 开头
groupName
public string groupName群名称。
- 是否必填:非必填。
- 取值范围:最大 50 字节的字符串。
groupAvatarUrl
public string groupAvatarUrl群头像 URL。
- 是否必填:非必填。
- 使用限制: 最大 500 字节,无特殊字符限制。
ZIMGroupMemberInfo
群组成员信息。
详情
群组成员信息。
Declared in ZIMDefines.cs
属性
memberNickname
public string memberNickname群组成员昵称。
memberRole
public int memberRole群角色,1:群主,2:管理员,3:群成员。
memberAvatarUrl
public string memberAvatarUrl群成员头像 URL。
- 使用限制: 最大 500 字节,无特殊字符限制。
muteExpiredTime
public ulong muteExpiredTime群成员禁言过期时间。为 0 时即不禁言,为 -1 时即永久禁言。
groupEnterInfo
public ZIMGroupEnterInfo groupEnterInfo群成员入群时的信息。
- 注意事项:支持版本 2.15 及以上。
userID
public string userID用户 ID,由开发者自定义生成。
- 是否必填:必填。
- 取值范围:最大 32 字节的字符串。仅支持数字,英文字符 和 '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'。
- 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 注意事项:注意 userID 在同一个 appID 下需唯一,否则会出现互踢的情况。 强烈建议 userID 与业务 APP 的用户 ID 一一对应,即一个 userID 与一个真实用户是固定且唯一的,而不应该是以随机的 userID 的方式传给 SDK 的方式。因为唯一且固定的 userID 可以让 ZEGO 技术人员快速定位线上问题。
userName
public string userName用户 name,由开发者自定义生成。
- 是否必填:非必填。
- 取值范围:2.0.0 及以后版本,支持最大 256 字节的字符串。
- 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
userAvatarUrl
public string userAvatarUrl用户头像,由开发者自定义生成。
- 是否必填:非必填。
- 取值范围:特殊字符不受限制,最大长度为500字节。
- 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 支持版本:2.13.0 及以上。
- 注意事项:房间成员列表需要在 2.18.0 版本后才会返回该值。
userExtendedData
public string userExtendedData用户的扩展字段信息。
- 注意事项:仅房间用户时,该属性有值。
ZIMGroupMemberMuteConfig
群组成员禁言配置。
详情
群组成员禁言配置。
- 是否必填:是。
Declared in ZIMDefines.cs
属性
duration
public int duration群组成员禁言时长,单位是 秒。取值为 -1,即永久禁言。如需实现非永久禁言,取值上限为 604800(即 7 天)。如需上调,请联系 ZEGO 技术支持。
- 是否必填:必填。
ZIMGroupMemberMutedListQueryConfig
群禁言成员列表查询配置。
详情
群禁言成员列表查询配置。
Declared in ZIMDefines.cs
属性
count
public int count数量。
- 是否必填:必填。
nextFlag
public ulong nextFlag下一个标志。
- 是否必填:非必填,首次默认为空,表示从头开始查询。
ZIMGroupMemberQueryConfig
群成员查询配置。
详情
群成员查询配置。
Declared in ZIMDefines.cs
属性
count
public int count数量,上限为 100,超过 100 则按照 100 处理。
- 是否必填:必填。
nextFlag
public int nextFlag下一个标志。
- 是否必填:非必填,首次默认为空,表示从头开始查询。
ZIMGroupMemberSearchConfig
群成员搜索配置。
详情
群成员搜索配置。
Declared in ZIMDefines.cs
属性
count
public int count结果的数量。
- 是否必填:必填。
nextFlag
public int nextFlag查询的 flag ,第一次调用接口时填 0。后续再次调用接口时填从 callback 里返回的 nextFlag,以便获取剩余数据。
- 是否必填:非必填
keywords
public List\<string> keywords搜索关键字,最多支持 5 个,否则会报错。例如:传入 "1" 和 "2",则搜索结果只会展示名称同时包含 "1" 和 "2" 这两个关键字的群成员。
- 是否必填:否
- 注意事项:最多支持填写 5 个,否则会报错。
isAlsoMatchGroupMemberNickname
public bool isAlsoMatchGroupMemberNickname搜索范围是否包括群成员用户昵称,默认为 false。
- 是否必填:否。
- 默认值:false。
ZIMGroupMessageReceiptMemberQueryConfig
详情
群消息回执已读/未读成员查询配置。
Declared in ZIMDefines.cs
属性
count
public int count需要查询的群成员数量。
- 是否必填:必填。
nextFlag
public int nextFlag下一个标志。初始填 0,后续从 [ZIMGroupMessageReceiptMemberListQueriedCallback] 回调拿到下一个的 nextFlag。
ZIMGroupMuteConfig
群组禁言配置。
详情
群组禁言配置。
- 是否必填:是。
Declared in ZIMDefines.cs
属性
mode
public ZIMGroupMuteMode mode群组禁言模式。
- 默认值:All,全体禁言。
- 是否必填:是。
duration
public int duration群组禁言时长,单位是 秒。取值为 -1,即永久禁言。如需实现非永久禁言,取值上限为 604800(即 7 天)。如需上调,请联系 ZEGO 技术支持。
- 是否必填:必填。
roles
public std::vector<int> roles群角色列表。
- 是否必填:仅当 ZIMGroupMuteMode 为 Custom 时,此字段才有意义。
- 注意事项:当列表中有 3(普通用户)时,必须同时存在其他角色,且不能为 1、2、4。如果仅需要禁言普通用户时,ZIMGroupMuteMode 需为 Normal。
ZIMGroupOperatedInfo
群组引发事件变化操作者的信息。
详情
群组引发事件变化操作者的信息。
Declared in ZIMDefines.cs
属性
operatedUserInfo
public ZIMGroupMemberInfo operatedUserInfo群成员信息。
userID
public string userID操作者的用户 ID。
userName
public string userName操作者的用户名。
memberNickname
public string memberNickname操作者的群成员昵称。
memberRole
public int memberRole操作者的群成员角色。
ZIMGroupSearchConfig
群搜索配置。
详情
群搜索配置。
Declared in ZIMDefines.cs
属性
count
public int count搜索一次,可获取的群组数量。建议小于 20,以降低性能开销。
- 是否必填:必填。
nextFlag
public int nextFlag查询的 flag 。
- 是否必填:首次查询时填 0。后续再次调用接口时,填从 Callback 回调里返回的 nextFlag,以便获取下一分页数据。
keywords
public List\<string> keywords搜索关键字。例如:传入 "1" 和 "2",则搜索结果只会展示群名称同时包含 "1" 和 "2" 这两个关键字的群组。
- 是否必填:否
- 注意事项:最多支持填写 5 个,否则会报错。
isAlsoMatchGroupMemberNickname
public bool isAlsoMatchGroupMemberNickname搜索范围是否包括群成员用户昵称,默认为 false。
- 是否必填:否。
- 默认值:false。
isAlsoMatchGroupMemberUserName
public bool isAlsoMatchGroupMemberUserName搜索范围是否包括群成员用户名称,默认为 false。
- 是否必填:否。
- 默认值:false。
ZIMGroupSearchInfo
群搜索信息。
详情
群组搜索信息。
Declared in ZIMDefines.cs
属性
groupInfo
userList
ZIMImageMessage
图片消息对象。
详情
标识一条图片消息。
- 注意事项:回调时若基类的 Type 参数为 Image,可将基类消息对象强转为此类。
Declared in ZIMDefines.cs
属性
thumbnailLocalPath
public string thumbnailLocalPath图片文件的缩略图本地路径。
- 是否必填:发送端不需要填,当调用 [downloadMediaFile] 下载之后, SDK 会生成该值。
thumbnailDownloadUrl
public string thumbnailDownloadUrl图片文件的缩略图外部下载 URL。当开发者将缩略图上传到自己的服务器上时,可以通过该字段让 SDK 透传到其他用户中。
- 是否必填:发送端选填,当 fileDownloadUrl 填入后,该字段才生效。
largeImageLocalPath
public string largeImageLocalPath图片文件的大图本地路径。
- 是否必填:发送端不需要填,当调用 [downloadMediaFile] 下载之后, SDK 会生成该值。
largeImageDownloadUrl
public string largeImageDownloadUrl图片文件的大图外部下载 URL。当开发者将大图上传到自己的服务器上时,可以通过该字段让 SDK 透传到其他用户中。
- 是否必填:发送端选填,当 fileDownloadUrl 填入后,该字段才生效。
originalImageWidth
public uint originalImageWidth原图宽。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定原图宽度的参数,单位为像素。
originalImageHeight
public uint originalImageHeight原图高。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定原图高度的参数,单位为像素。
largeImageWidth
public uint largeImageWidth大图宽。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 720 像素,对另一边做等比压缩。当原图最短边小于 720 像素时,则不压缩。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定大图宽度的参数,单位为像素。
largeImageHeight
public uint largeImageHeight大图高。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 720 像素,对另一边做等比压缩。当原图最短边小于 720 像素时,则不压缩。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定大图高度的参数,单位为像素。
thumbnailWidth
public uint thumbnailWidth缩略图宽。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 198 像素,对另一边做等比压缩。当原图最短边小于 198 像素时,则不压缩。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定缩略图宽度的参数,单位为像素。
thumbnailHeight
public uint thumbnailHeight缩略图高。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 198 像素,对另一边做等比压缩。当原图最短边小于 198 像素时,则不压缩。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定缩略图高度的参数,单位为像素。
originalImageSize
public CGSize originalImageSize原图宽高。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定原图宽高的参数。
largeImageSize
public CGSize largeImageSize大图宽高。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定大图宽高的参数。
thumbnailSize
public CGSize thumbnailSize缩略图宽高。在 2.19.0 版本后对于透传图片消息(即该 URL 由客户自行传入的情况)支持传入,ZIM 会做透传处理;对于本地图片消息如果传入,ZIM 会在发送时检查是否正确,如果不正确将会自动纠正。
- 业务场景:用户需要绘出图片 UI 时,用于确定缩略图宽高的参数。
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileUID
public string fileUID媒体文件的唯一 ID。
- 是否必填:发送端不需要填,该值由 SDK 生成。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMImageMessageLiteInfo
图片消息的简要信息对象。
详情
标识一条图片消息。
Declared in ZIMDefines.cs
属性
thumbnailLocalPath
public string thumbnailLocalPath图片文件的缩略图本地路径。
- 是否必填:发送端不需要填,当调用 [downloadMediaFile] 下载之后, SDK 会生成该值。
thumbnailDownloadUrl
public string thumbnailDownloadUrl图片文件的缩略图外部下载 URL。当开发者将缩略图上传到自己的服务器上时,可以通过该字段让 SDK 透传到其他用户中。
- 是否必填:发送端选填,当 fileDownloadUrl 填入后,该字段才生效。
largeImageLocalPath
public string largeImageLocalPath图片文件的大图本地路径。
- 是否必填:发送端不需要填,当调用 [downloadMediaFile] 下载之后, SDK 会生成该值。
largeImageDownloadUrl
public string largeImageDownloadUrl图片文件的大图外部下载 URL。当开发者将大图上传到自己的服务器上时,可以通过该字段让 SDK 透传到其他用户中。
- 是否必填:发送端选填,当 fileDownloadUrl 填入后,该字段才生效。
originalImageWidth
public uint originalImageWidth原图宽。
- 业务场景:用户需要绘出图片 UI 时,用于确定原图宽度的参数,单位为像素。
originalImageHeight
public uint originalImageHeight原图高。
- 业务场景:用户需要绘出图片 UI 时,用于确定原图高度的参数,单位为像素。
largeImageWidth
public uint largeImageWidth大图宽。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 720 像素,对另一边做等比压缩。当原图最短边小于 720 像素时,则不压缩。
- 业务场景:用户需要绘出图片 UI 时,用于确定大图宽度的参数,单位为像素。
largeImageHeight
public uint largeImageHeight大图高。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 720 像素,对另一边做等比压缩。当原图最短边小于 720 像素时,则不压缩。
- 业务场景:用户需要绘出图片 UI 时,用于确定大图高度的参数,单位为像素。
thumbnailWidth
public uint thumbnailWidth缩略图宽。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 198 像素,对另一边做等比压缩。当原图最短边小于 198 像素时,则不压缩。
- 业务场景:用户需要绘出图片 UI 时,用于确定缩略图宽度的参数,单位为像素。
thumbnailHeight
public uint thumbnailHeight缩略图高。当发送本地图片时,ZIM 服务会将原图的最短边压缩至 198 像素,对另一边做等比压缩。当原图最短边小于 198 像素时,则不压缩。
- 业务场景:用户需要绘出图片 UI 时,用于确定缩略图高度的参数,单位为像素。
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
ZIMLogConfig
日志配置。
详情
配置日志文件保存路径和日志文件大小上限。
Declared in ZIMDefines.cs
属性
logPath
public string logPath日志文件的存储路径,默认路径参考官网文档。
- 是否必填:非必填。
- 默认值:Android:/storage/Android/data/[packageName]/files/ZIMLogs
iOS:
/Library/Caches/ZIMLogs macOS:(沙箱)/Library/Containers/[Bundle ID]/Data/Library/Caches/ZIMLogs / ;(非沙箱)~/Library/Caches/ZIMLogs Windows:C:\Users[Your UserName]\AppData[App Name]ZEGO.SDK\ZIMLogs - 建议值:建议使用默认值。
- 注意事项:请注意设置的目录是否有读写权限,否则会导致 SDK 无法正确执行。
logSize
public ulong logSize日志文件大小上限 (Bytes)。
- 是否必填:非必填。
- 默认值:默认大小 5MB (5 * 1024 * 1024 Bytes)。
- 建议值:建议使用默认大小,太大会导致磁盘占用过多,太小会导致日志记录不全。
ZIMMediaDownloadConfig
下载媒体文件的配置。
Declared in ZIMDefines.cs
属性
messageInfoIndex
public int messageInfoIndex下载组合消息里的某个文件所在数组的索引。
- 是否必填:下载组合消息的文件时必填。
ZIMMediaMessage
媒体消息对象基类。
详情
标识一条媒体消息。
- 注意事项:该基类是所有媒体消息的基础,包含媒体消息所需要的属性。
Declared in ZIMDefines.cs
属性
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileUID
public string fileUID媒体文件的唯一 ID。
- 是否必填:发送端不需要填,该值由 SDK 生成。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMMediaMessageLiteInfo
媒体消息简要信息对象基类。
详情
标识一条媒体消息。
- 注意事项:该基类是所有媒体消息简要信息的基础,包含媒体消息简要信息所需要的属性。
Declared in ZIMDefines.cs
属性
fileLocalPath
public string fileLocalPath媒体消息的文件的本地绝对路径。
- 是否必填:如果发送本地文件,则发送端必填,否则消息会发送失败。
fileDownloadUrl
public string fileDownloadUrl媒体消息的外部下载 URL,用于开发者将媒体文件上传到自己的服务器中时,通过填入该 URL 让 SDK 透传到其他用户中。
- 是否必填:如果发送的是外部 URL,发送端必填。
fileName
public string fileName媒体文件的文件名。
- 是否必填:如果发送的是外部 URL,则需要填写该值,且需要包含文件扩展名。如果发送的是本地文件,该值选填。
fileSize
public ulong fileSize媒体文件的大小。
- 是否必填:发送端不需要填,该值由 SDK 生成。
ZIMMediaMessageSendNotification
媒体消息发送时的通知回调,可以通过此通知获取消息对象发送前的相关信息
详情
通过该通知,开发者可以获取到消息对象发送前的相关信息,如 localMessageID 等。
- 业务场景:当开发者需要记录和缓存消息发送前的相关信息,可以通过监听该通知获取。
- 注意事项:若无需监听,可传空。
Declared in ZIMDefines.cs
属性
onMessageAttached
public ZIMMessageAttachedCallback onMessageAttached消息在落入本地 DB 后,将要向服务端发送消息之前,会回调该通知。
- 业务场景:用于开发者需要在发送消息之前,提前获取消息里的相关信息时,可以使用此接口。
- 是否必填:非必填。若无需监听的情况下,可传空。
- 默认值:空。
onMediaUploadingProgress
public ZIMMediaUploadingProgress onMediaUploadingProgress通过该通知,开发者可以获取到媒体消息上传时的进度回调。
- 业务场景:开发者可用于展示发送媒体消息时的进度条,提升 UI 交互体验。
- 是否必填:非必填。若无需监听的情况下,可传空。
- 默认值:空。
ZIMMessage
消息对象的基类。
详情
标识一条消息的基本参数。
- 注意事项:其中的部分参数如 Message ID 仅在回调时有值。 开发者主动创建此对象用于发送消息时不需要给这些参数赋值。
Declared in ZIMDefines.cs
属性
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMMessageDeleteConfig
删除消息配置。
详情
删除消息的相关配置。
Declared in ZIMDefines.cs
属性
isAlsoDeleteServerMessage
public bool isAlsoDeleteServerMessage是否删除服务器消息的标志。
- 是否必填:非必填。
- 默认值:false。
ZIMMessageExportConfig
详情
导出消息的相关配置。该 Config 目前为预留参数。
Declared in ZIMDefines.cs
ZIMMessageImportConfig
详情
导入消息的相关配置。该 Config 目前为预留参数。
Declared in ZIMDefines.cs
ZIMMessageMentionedInfo
消息提醒信息。
详情
消息提醒信息。
Declared in ZIMDefines.cs
属性
messageID
public long messageID消息ID,用于匹配该提醒信息是属于哪一条消息
- 是否必填:不需要开发者填写
fromUserID
public string fromUserID来自哪个用户。
- 是否必填:不需要开发者填写。
type
public ZIMMessageMentionedType type消息提醒的类型,用于区分是 提醒自己的还是 提醒全部人的
- 是否必填:不需要开发者填写
messageSeq
public ulong messageSeq消息 seq。
ZIMMessageQueryConfig
查询消息配置。
详情
查询消息的相关配置。
Declared in ZIMDefines.cs
属性
nextMessage
count
public uint count查询消息的条数。
- 是否必填:必填。
reverse
public Boolean reverse是否反序查询的标志。
- 是否必填:非必填。
- 默认值:false。
ZIMMessageReactionUserQueryConfig
用于查询表态详情成员的配置。
详情
查询表态成员时,需要配置此对象。
Declared in ZIMDefines.cs
属性
nextFlag
public ulong nextFlag分页查询的标识位,首次查询时,将此字段设为空字符串。若 [ZIMMessageReactionUserListQueriedCallback] 回调的 "nextFlag" 字段不是空字符串,说明还没结束,需要将其设置到此处以继续下一页的查询。
- 业务场景:开发者可根据该字段进行分页查询成员列表,第一次查询传空。
- 是否必填:非必填。
- 默认值:空。
count
public uint count一次获取多少表态的成员。上限为 100,超出 100 会导致错误。
- 业务场景:开发者可以根据该参数来决定一次需要查询多少房间成员。
- 是否必填:必填。
- 注意事项:分页获取表态成员以降低开销,建议单次获取 20 人以内。若该处填写值为 0,SDK 会默认查询 100 人。
reactionType
public string reactionType表态类型,由您自行定义。
ZIMMessageRepliedListQueryConfig
用于查询回复消息列表的配置。
Declared in ZIMDefines.cs
属性
nextFlag
public ulong nextFlag分页查询的标识位,首次查询时,将此字段设为0。若 [queryMessageRepliedList] 回调的 "nextFlag" 字段不为0,说明还没结束,需要将其设置到此处以继续下一页的查询。
count
public uint count单次查询的数量。上限为 100,超出 100 会导致错误。
- 是否必填:必填。
ZIMMessageRevokeConfig
详情
撤回消息的相关配置。
Declared in ZIMDefines.cs
属性
revokeExtendedData
public string revokeExtendedData撤回附加消息。
- 是否必填:非必填。
pushConfig
ZIMMessageSearchConfig
消息搜索配置。
详情
消息搜索配置。
Declared in ZIMDefines.cs
属性
nextMessage
public ZIMMessage nextMessage分页拉取标志,即指拉取 nextMessage 之后或之前的消息,“之后”或“之前”由 order 值决定。 第一次搜索时,nextMessage 为 null。 之后搜索时,nextMessage 需传入上次查询到的消息列表的最后一条消息。
- 是否必填:否。
count
public int count数量。建议小于 20 条,以降低性能开销。
- 是否必填:必填。
order
public ZIMMessageOrder order搜索消息时 "order" 为 "DESCENDING" 时,表示对发送时间比 nextMessage 早的消息进行查询。若是首次查询消息时(即 nextMessage 为 null),则从本地存储的最后一条消息向前查询。"order" 为 "ASCENDING" 时,表示对发送时间比 nextMessage 晚的消息进行查询。若是首次查询消息时(即 nextMessage 为 null),则从本地存储的第一条消息向后查询。默认为 "DESCENDING"。
keywords
public List\<string> keywords搜索关键字,最多支持 5 个,否则会报错。例如:传入 "1" 和 "2",则搜索结果只会展示同时包含 "1" 和 "2" 这两个关键字的消息。
- 是否必填:否。
messageTypes
subMessageTypes
public int[] subMessageTypes自定义消息的子类型,取值范围为 [0,200]。开发者可基于此搜索具体的自定义类型。
- 是否必填:否。
senderUserIDs
public string[] senderUserIDs消息发送用户 ID,最多支持 5 个。例如,传入 "zego2023",则搜索结果只会展示 "zego2023" 用户在该会话中发送的所有消息。
- 是否必填:否。
startTime
public long startTime搜索的起始时间点,单位:毫秒,默认为 0,格式:UTC 时间戳。
- 是否必填:否。
endTime
public long endTime搜索的结束时间点,必须大于 startTime,单位:毫秒,默认为 0,格式:UTC 时间戳。
- 是否必填:否。
ZIMMessageSendConfig
详情
发送消息的相关配置。
Declared in ZIMDefines.cs
属性
pushConfig
priority
hasReceipt
public bool hasReceipt发送消息时候,该消息是否带回执。
- 业务场景:需要为一条消息带上回执时使用。
- 是否必填:非必填。
- 默认值:false。
isNotifyMentionedUsers
public bool isNotifyMentionedUsers发送消息时候,是否离线推送通知该消息提及到的用户。
- 是否必填:非必填。
- 默认值:true。
isRetrySend
public bool isRetrySend是否重发发送失败的消息。
- 是否必填:否。
disableUnreadMessageCount
public ~ disableUnreadMessageCount标识本次发送的消息是否不计入未读消息数。
- 业务场景:需要发送一条不计入未读消息数的消息时,需要将该参数置为 true。
- 是否必填:否。
- 默认值:false。
ZIMMessageSendNotification
消息发送时的通知回调,可以通过此通知获取消息对象发送前的相关信息
详情
通过该通知,开发者可以获取到消息对象发送前的相关信息,如 localMessageID 等。
- 业务场景:当开发者需要记录和缓存消息发送前的相关信息,可以通过监听该通知获取。
- 注意事项:若无需监听,可传空。
Declared in ZIMDefines.cs
属性
onMessageAttached
public ZIMMessageAttachedCallback onMessageAttached消息在落入本地 DB 后,将要向服务端发送消息之前,会回调该通知。
- 业务场景:用于开发者需要在发送消息之前,提前获取消息里的相关信息时,可以使用此接口。
- 是否必填:非必填。若无需监听的情况下,可传空。
- 默认值:空。
onMediaUploadingProgress
public ZIMMediaUploadingProgress onMediaUploadingProgress通过该通知,开发者可以获取到媒体消息上传时的进度回调。
- 业务场景:开发者可用于展示发送媒体消息时的进度条,提升 UI 交互体验。
- 是否必填:非必填。若无需监听的情况下,可传空。
onMultipleMediaUploadingProgress
public ZIMMultipleMediaUploadingProgress onMultipleMediaUploadingProgress通过该通知,开发者可以获取到组合消息里的媒体文件上传时的进度回调。
- 业务场景:开发者可用于展示各媒体文件的上传进度及总的上传进度,提升 UI 交互体验。
- 是否必填:非必填。
- 支持版本:2.19.0 及以上。
ZIMMessageSentStatusChangeInfo
消息状态变更通知。
详情
消息状态变更通知。
Declared in ZIMDefines.cs
属性
message
status
reason
public string reason此字段记录服务端发送前回调拦截消息导致 ZIM 拒绝发送的原因。若您开通了 ZIM 内容审核服务,并需在此字段中获取审核未通过导致的失败原因,请联系 ZEGO 技术支持进行配置。
ZIMMultipleMessage
组合消息对象。
详情
标识一条组合消息。
- 注意事项:仅支持文本、图片、文件、音频、视频、自定义消息的组合,且数量不超过 20 个。
Declared in ZIMDefines.cs
属性
messageInfoList
public List<ZIMMessageLiteInfo> messageInfoList可包含文本、图片、文件、音频、视频、自定义消息,数组长度不超过 20。
- 业务场景:可用于发送图文组合消息。
- 注意事项:总的 item 数量不超过 20,图片最多10个,文件、音频、视频、自定义消息最多各 1 个。其中图片、文件、音频、视频的大小和格式的限制与对应的富媒体消息一致。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMMultipleMessageLiteInfo
组合消息的简要信息对象。
详情
标识一条组合消息。
Declared in ZIMDefines.cs
属性
messageInfoList
public List<ZIMMessageLiteInfo> messageInfoList组合消息的元素列表。
ZIMPushConfig
详情描述:离线推送配置。
详情
发送离线推送前的配置。
Declared in ZIMDefines.cs
属性
title
public string title用于设置推送标题。
- 是否必填:非必填。
content
public string content用于设置离线推送的内容。
- 是否必填:非必填。
payload
public string payload用于设置离线推送的透传字段。
- 是否必填:非必填。
resourcesID
public string resourcesID由开发者自定义,长度不超过 32 个字符的字符串,用于映射多个厂商进阶配置的离线推送字段,将多个厂商的推送配置抽象为一种您自定的推送策略。详细介绍与配置步骤请参考 resourcesID 说明。
- 默认值:在未设置 resourceID 的情况下,推送类型为普通弹窗推送(APNs 为 Alert,FCM 为 Notification Message)。
- 是否必填:非必填。
enableBadge
public bool enableBadge推送是否携带角标信息开关。
badgeIncrement
public int badgeIncrement推送携带的增量角标数。
voIPConfig
public ZIMVoIPConfig voIPConfig如果您使用 Flutter、RN ZPNs, 离线推送接收端设备有 iOS 且使用了 VoIP 推送类型,可以通过该参数来自定义一些 VoIP 的选项。
privateMessageTemplate
public ZIMOfflinePushPrivateMessageTemplate privateMessageTemplate如果您使用 OPPO 推送,可以通过该结构来应用 OPPO 私信模版,否则可以忽略,默认为空。
ZIMRevokeMessage
撤回消息对象基类。
详情
标识一条撤回消息。
- 注意事项:该基类是所有撤回消息的基础,包含撤回消息所需要的属性。
Declared in ZIMDefines.cs
属性
revokeType
revokeStatus
revokeTimestamp
public int revokeTimestamp撤回时间戳。
operatedUserID
public string operatedUserID撤回操作者的用户 ID。
revokeExtendedData
public string revokeExtendedData撤回附带的消息。
originalMessageType
originalTextMessageContent
public string originalTextMessageContent原始消息内容。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
ZIMRevokeMessageLiteInfo
撤回消息的简要信息对象。
Declared in ZIMDefines.cs
ZIMRoomAdvancedConfig
房间高级属性配置。
详情
房间的高级属性配置。
Declared in ZIMDefines.cs
属性
roomAttributes
public std::unordered_map<std::string, std::string> & roomAttributes房间中的房间属性,用户可以自定义
- 是否必填:是。
roomDestroyDelayTime
public uint roomDestroyDelayTime房间延迟销毁时间,单位为秒。最长房间延迟销毁时间是3小时。
- 业务场景:房间人数为0时,设置房间时间,保证这段时间内房间的存在。
- 是否必填:非必填。
ZIMRoomAttributesBatchOperationConfig
房间属性设置的行为属性。
详情
房间属性设置的行为属性。
Declared in ZIMDefines.cs
属性
isDeleteAfterOwnerLeft
public bool isDeleteAfterOwnerLeft- 业务场景:语聊房场景中,麦位上的人被踢出后,自动删除麦位信息。
- 是否必填:非必填。
- 默认值:false。
isForce
public bool isForce是否可以强制修改其他用户的房间属性。如果为true,则可以修改其他用户的房间属性,如果为false,则不允许修改其他用户的房间属性。
- 业务场景:语聊房场景中,房主强制修改麦位信息。
- 是否必填:非必填。
- 默认值:false。
isUpdateOwner
public bool isUpdateOwner是否更新涉及到的房间属性的拥有者。
- 业务场景:强行变更该房间属性的拥有人为操作者。
- 是否必填:非必填。
- 默认值:false。
ZIMRoomAttributesDeleteConfig
房间属性删除的行为属性。
详情
房间属性删除的行为属性。
Declared in ZIMDefines.cs
属性
isForce
public bool isForce是否可以强制删除其他用户的房间属性。如果为true,则可以删除其他用户的房间属性,如果为false,则不允许删除其他用户的房间属性。
- 业务场景:语聊房场景中,房主强制删除麦位信息。
- 是否必填:非必填。
- 默认值:false。
ZIMRoomAttributesSetConfig
房间属性设置的行为属性。
详情
房间属性设置的行为属性。
Declared in ZIMDefines.cs
属性
isDeleteAfterOwnerLeft
public bool isDeleteAfterOwnerLeft房间属性在拥有者离开房间后自动删除。
- 业务场景:语聊房场景中,麦位上的人被踢出后,自动删除麦位信息。
- 是否必填:非必填。
- 默认值:false。
isForce
public bool isForce是否可以强制修改其他用户的房间属性。如果为true,则可以修改其他用户的房间属性,如果为false,则不允许修改其他用户的房间属性。
- 业务场景:语聊房场景中,房主强制修改麦位信息。
- 是否必填:非必填。
- 默认值:false。
isUpdateOwner
public bool isUpdateOwner是否更新涉及到的房间属性的拥有者。
- 业务场景:强行变更该房间属性的拥有人为操作者。
- 是否必填:非必填。
- 默认值:false。
ZIMRoomAttributesUpdateInfo
房间属性变更通知。
详情
房间属性变更通知。
Declared in ZIMDefines.cs
属性
action
roomAttributes
public std::unordered_map<std::string, std::string> roomAttributes房间属性。
- 是否必填:否。
ZIMRoomFullInfo
房间详细资料对象。
详情
标识一个房间的详细资料。
Declared in ZIMDefines.cs
属性
baseInfo
ZIMRoomInfo
房间资料基础对象。
详情
标识一个唯一房间。
Declared in ZIMDefines.cs
属性
roomID
public string roomID房间 ID,最大 128 字节的字符串,由开发者自定义生成。
- 是否必填:必填。
- 取值范围:最大 128 字节的字符串。仅支持数字,英文字符 和 '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'。
roomName
public string roomName房间名,由开发者自定义生成,最大长度不超过 64 字节的字符串。
- 是否必填:必填。
ZIMRoomMemberQueryConfig
用于查询房间成员的配置。
详情
查找成员时,需要配置此对象。
Declared in ZIMDefines.cs
属性
nextFlag
public string nextFlag分页查询的标识位,首次查询时,将此字段设为空字符串。若回调的 "nextFlag" 字段不是空字符串,说明还没结束,需要将其设置到此处以继续下一页的查询。
- 业务场景:开发者可根据该字段进行分页查询成员列表,第一次查询传空。
- 是否必填:非必填。
- 默认值:空。
count
public uint count一次获取多少房间成员。
- 业务场景:开发者可以根据该参数来决定一次需要查询多少房间成员。
- 是否必填:必填。
- 注意事项:分页获取房间成员以降低开销,建议单次获取 100 人以内。若该处填写值为 0,SDK 会默认查询 100 人。
ZIMTextMessage
普通文本消息对象。
详情
标识一条普通文本消息。
- 注意事项:回调时若基类的 Type 参数为 Text,可将基类消息对象强转为此类。
Declared in ZIMDefines.cs
属性
message
public string message消息的内容,支持任意数据。如果此消息的类型为 Text 文本消息,则应当为标准 UTF-8 字符串。
- 是否必填:发送端必填,否则消息会发送失败。
type
messageID
public long messageID标识这条消息的唯一 ID。
- 业务场景:可用于索引其他消息。
- 注意事项:开发者主动创建一条消息时,不需要修改这个参数,此参数仅在回调时有值。
timestamp
public ulong timestamp标识一条消息的发送时间。
- 业务场景:用于呈现一条消息的发送时间,并可用于消息排序。
- 注意事项:此为标准 UNIX 时间戳,单位为毫秒。
message_length
public uint message_length消息的长度。如果此消息的类型为 Text 文本消息,则应当为字符串的长度。
- 是否必填:必填。
senderUserID
public string senderUserID展示本条消息发送者的 userID。
conversationID
public string conversationID会话的 ID,相同会话类型下的 ID 是唯一的。
direction
sentStatus
conversationType
conversationSeq
public ulong conversationSeq表示该消息在会话中的序号。
orderKey
public long orderKeyorderKey 越大消息越新,可用于消息排序。
localMessageID
public long localMessageIDSDK 本地生成的 MessageID,开发者无需关注。
isUserInserted
public bool isUserInserted该消息是否是开发者通过 [insertMessageToLocalDB] 接口插入的消息。
- 默认值:false。
receiptStatus
extendedData
public string extendedData消息拓展字段。
- 业务场景:可为消息附加拓展字段,然后发送给对端。
- 是否必填:否。
- 支持版本:2.6.0 及以上。
- 注意事项:长度为1k,可联系技术支持进行配置。
localExtendedData
public string localExtendedData仅本端可见的消息拓展字段,可附带额外的信息存储到本地,可通过 [updateMessageLocalExtendedData] 修改,目前长度的限制是 128K。如有特殊需求,可联系 ZEGO 技术支持进行配置。
isBroadcastMessage
public bool isBroadcastMessage该消息是否是全员推送消息。
- 是否必填:SDK内部赋值。
isMentionAll
public bool isMentionAll是否需要提醒所有人。业务表现可为“@所有人”。
- 业务场景:例如在群或者房间可使用。
- 是否必填:否。
- 默认值:false。
- 建议值:如果需要提醒所有人,可以设置为 true。
- 注意事项:该值并不会在消息文本上增加 @所有人 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
mentionedUserIDs
public ArrayList\<String> mentionedUserIDs提醒一批相关的用户。业务表现可为“@某用户”。
- 业务场景:发消息时可以带上
- 是否必填:否。
- 注意事项:该值并不会在消息文本上增加 @某用户 的字样,需要开发者自行实现。
支持版本 : 2.14.0 及以上。
messageSeq
public ulong messageSeq表示该消息在会话中的序号。
rootRepliedCount
public uint rootRepliedCount回复消息树对应的根消息的回复消息数量。
repliedInfo
editorUserID
public string editorUserID本条消息最新的编辑者的 userID。
editedTime
public ulong editedTime本条消息最新的编辑时间戳。
isGroupTargetedMessage
public bool isGroupTargetedMessage标识该消息是否为群定向消息。
方法
ZIMTextMessage
ZIMTextMessageLiteInfo
普通文本消息简要信息对象。
详情
标识一条普通文本消息的简要信息。
- 注意事项:回调时若基类的 Type 参数为 Text,可将基类消息简要信息对象强转为此类。
Declared in ZIMDefines.cs
属性
message
public string message消息的内容,支持任意数据。如果此消息的类型为 Text 文本消息,则应当为标准 UTF-8 字符串。
- 是否必填:发送端必填,否则消息会发送失败。
方法
ZIMTextMessageLiteInfo
ZIMUserFullInfo
用户详细资料对象。
详情
标识一个唯一用户。
- 注意事项:注意 userID 在同一个 appID 下需唯一,否则会出现互踢的情况。强烈建议 userID 与业务 APP 的用户 ID 一一对应,即一个 userID 与一个真实用户是固定且唯一的,而不应该是以随机的 userID 的方式传给 SDK 的方式。因为唯一且固定的 userID 可以让 ZEGO 技术人员快速定位线上问题。
Declared in ZIMDefines.cs
属性
baseInfo
userAvatarUrl
public string userAvatarUrl用户头像 URL。
- 是否必填:非必填。
- 使用限制:最大 500 字节,无特殊字符限制。
extendedData
public string extendedData用户扩展信息。
- 是否必填:非必填。
- 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
ZIMUserInfo
用户资料对象。
详情
标识一个唯一用户。
- 注意事项:注意 userID 在同一个 appID 下需唯一,否则会出现互踢的情况。强烈建议 userID 与业务 APP 的用户 ID 一一对应,即一个 userID 与一个真实用户是固定且唯一的,而不应该是以随机的 userID 的方式传给 SDK 的方式。因为唯一且固定的 userID 可以让 ZEGO 技术人员快速定位线上问题。
Declared in ZIMDefines.cs
属性
userID
public string userID用户 ID,由开发者自定义生成。
- 是否必填:必填。
- 取值范围:最大 32 字节的字符串。仅支持数字,英文字符 和 '!', '#', '$', '%', '&', '(', ')', '+', '-', ':', ';', '<', '=', '.', '>', '?', '@', '[', ']', '^', '_', '{', '}', '|', '~'。
- 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 注意事项:注意 userID 在同一个 appID 下需唯一,否则会出现互踢的情况。 强烈建议 userID 与业务 APP 的用户 ID 一一对应,即一个 userID 与一个真实用户是固定且唯一的,而不应该是以随机的 userID 的方式传给 SDK 的方式。因为唯一且固定的 userID 可以让 ZEGO 技术人员快速定位线上问题。
userName
public string userName用户 name,由开发者自定义生成。
- 是否必填:非必填。
- 取值范围:2.0.0 及以后版本,支持最大 256 字节的字符串。
- 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
userAvatarUrl
public string userAvatarUrl用户头像,由开发者自定义生成。
- 是否必填:非必填。
- 取值范围:特殊字符不受限制,最大长度为500字节。
- 隐私保护声明:不要传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 支持版本:2.13.0 及以上。
- 注意事项:房间成员列表需要在 2.18.0 版本后才会返回该值。
userExtendedData
public string userExtendedData用户的扩展字段信息。
- 注意事项:仅房间用户时,该属性有值。
ZIMUsersInfoQueryConfig
用户信息查询配置。
详情
详细描述:用户信息查询配置,可以选择从本地查询或者从服务端查询。从本地查询无限频约束,从服务端查询有限频约束,10 s 内最多只能查询 10 个用户详细配置。
Declared in ZIMDefines.cs
属性
isQueryFromServer
public bool isQueryFromServer是否从服务端查询用户详细信息。从本地查询无限频约束,从服务端查询有限频约束,10 s 内最多只能查询 10 个用户详细配置。
- 是否必填:非必填。
- 默认值:false。
