HMRHummerStateObserver

didUpdateStateFrom:toState:

- (void)didUpdateStateFrom:(HMRHummerState)oldState toState:(HMRHummerState)newState;

Hummer SDK 状态变更回调

参数
参数描述
oldState变更前状态,详见 HMRHummerState
newState当前状态,详见 HMRHummerState

didHummerTokenInvalid:withDescription:

- (void)didHummerTokenInvalid:(HMRTokenInvalidCode)code withDescription:(NSString *)desc;

废弃

注意事项

该方法已弃用,请改用 didHummerPreviousTokenExpired

鉴权 Token 无效通知

参数
参数描述
code无效类型,详见 HMRTokenInvalidCode
desc无效原因

didHummerPreviousTokenExpired

- (void)didHummerPreviousTokenExpired;

Token 过期时候的通知,仅在断线重连时触发,收到该通知后,请调用 refreshToken1 接口更新Token


HMRChannelStateObserver

didChangeChannelStateFrom:toState:

- (void)didChangeChannelStateFrom:(HMRChannelState)fromState
                          toState:(HMRChannelState)toState;

SDK 连接状态变更通知

注意事项 该方法已弃用,请改用 didConnectionStateChanged

参数
参数描述
fromState变更前状态,详见 HMRChannelState
toState当前状态,详见 HMRChannelState

HMRHummerObserver

didConnectionStateChanged:toState:withReason:

- (void)didConnectionStateChanged:(HMRConnectionState)fromState toState:(HMRConnectionState)toState withReason:(NSString *)reason;

SDK与服务器连接状态变更通知。

当因网络断开、Token过期等导致SDK和服务器的连接状态变化均会触发该回调,告知用户变更前状态、当前状态和状态变化原因。

参数
参数描述
fromState变更前状态,详见 HMRConnectionState
toState当前状态,详见 HMRConnectionState
reason变化的原因

didHummerTokenWillExpire

- (void)didHummerTokenWillExpire;

Token 即将过期的通知。

当Token还有30s过期时,会触发该回调。收到该通知后,请调用 refreshToken1 刷新Token。


didForceoutOffline:withReason:

- (void)didForceoutOffline:(NSInteger)code withReason:(NSString *)reason;

账号被踢的通知,当业务收到该通知后,当前账户已被踢下线,业务可自定义账号被踢后的处理逻辑,例如弹框提示、跳出主界面等。

注意事项

该通知触发策略,根据服务后台互踢策略配置而决定。

参数
参数描述
code被踢错误码,详见 HMRErrorCode
reason被踢原因

didP2PTextMessageReceived:fromUser:

- (void)didP2PTextMessageReceived:(HMRTextMessage *)message fromUser:(HMRUser *)user;

点对点消息回调。

当收到点对点(P2P)消息时,会收到该通知回调,由 sendP2PMessage 触发。

参数
参数描述
message接收到的消息,详见 HMRTextMessage
user该消息的发送者,详见 HMRUser

HMRChatRoomObserver

chatRoom:didDismissByOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom didDismissByOperator:(HMRUser *)operatorUser;

当聊天室被解散时发生的回调通知,成员会自动离开聊天室

注意事项

该方法通过调用 dismissChatRoom 发生回调。

参数
参数描述
chatRoom聊天室的标识
operatorUser解散聊天室的管理员

chatRoom:didChangeBasicInfo:byOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom didChangeBasicInfo:(NSDictionary<NSNumber *, NSString *> *)propInfo byOperator:(HMRUser *)operatorUser;

当聊天室基础信息发生变化时的回调

注意事项

该方法通过调用 changeBasicInfo 发生回调。

参数
参数描述
chatRoom聊天室的标识
propInfo变化的键值对,其中key值参见枚举详见:HMRChatRoomBasicInfoType
operatorUser修改聊天室信息的管理员

chatRoom:didRoomBasicAttributesUpdated:byOperator:atTime:

- (void)chatRoom:(HMRChatRoom *)chatRoom didRoomBasicAttributesUpdated:(NSDictionary<NSString *, NSString *> *)attributes
      byOperator:(HMRUser *)operatorUser
          atTime:(NSTimeInterval)latestUpdateTs;

当更新聊天室基础信息时的回调,通过调用 updateRoomBasicAttributes 发生回调。

参数
参数描述
chatRoom聊天室的标识
attributes变化的键值对,其中key值参见枚举详见:
kHMRChatRoomBasicInfoTypeName
kHMRChatRoomBasicInfoTypeDescription
kHMRChatRoomBasicInfoTypeBulletin
operatorUser修改聊天室信息的管理员
latestUpdateTs最后一次操作的时间戳,单位:毫秒

chatRoom:didRoomInfoAddedOrUpdated:byOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom didRoomInfoAddedOrUpdated:(NSDictionary<NSString *, NSString *> *)propInfo
      byOperator:(HMRUser *)operatorUser;

当聊天室信息新增或更新时发生的回调

说明

该通知从 v2.14.0 开始已废弃删除

注意:

该方法通过调用 addOrUpdateChatRoomInfo 发生回调。

参数
参数描述
chatRoom聊天室的标识
propInfo变化的键值对
operatorUser修改聊天室信息的管理员

chatRoom:didRoomExtraAttributesSet:byOperator:atTime:

- (void)chatRoom:(HMRChatRoom *)chatRoom didRoomExtraAttributesSet:(NSDictionary<NSString *, NSString *> *)attributes
      byOperator:(HMRUser *)operatorUser
          atTime:(NSTimeInterval)latestUpdateTs;

房间扩展属性被设置通知。

该回调通知由 setRoomExtraAttributes 触发,房间内用户均会收到该回调通知。

参数
参数描述
chatRoom聊天室的标识,详见 HMRChatRoom
attributes对应的属性值
operatorUser最后一次操作的用户,详见 HMRUser
latestUpdateTs最后一次操作的时间戳,单位:毫秒

chatRoom:didRoomExtraAttributesUpdated:byOperator:atTime:

- (void)chatRoom:(HMRChatRoom *)chatRoom didRoomExtraAttributesUpdated:(NSDictionary<NSString *, NSString *> *)attributes
      byOperator:(HMRUser *)operatorUser
          atTime:(NSTimeInterval)latestUpdateTs;

房间扩展属性被更新通知。

该回调通知由 updateRoomExtraAttributes 触发,聊天室内用户均会收到该回调通知。

参数
参数描述
chatRoom聊天室的标识,详见 HMRChatRoom
attributes对应的属性值
operatorUser最后一次操作的用户,详见 HMRUser
latestUpdateTs最后一次操作的时间戳,单位:毫秒

chatRoom:didRoomExtraAttributesDeleted:byOperator:atTime:

- (void)chatRoom:(HMRChatRoom *)chatRoom didRoomExtraAttributesDeleted:(NSDictionary<NSString *, NSString *> *)attributes
      byOperator:(HMRUser *)operatorUser
          atTime:(NSTimeInterval)latestUpdateTs;

房间扩展属性被删除通知。

该回调通知由 deleteRoomExtraAttributes 触发,聊天室内用户均会收到该回调通知。

参数
参数描述
chatRoom聊天室的标识,详见 HMRChatRoom
attributes对应的属性值
operatorUser最后一次操作的用户,详见 HMRUser
latestUpdateTs最后一次操作的时间戳,单位:毫秒

chatRoom:didRoomExtraAttributesCleared:byOperator:atTime:

- (void)chatRoom:(HMRChatRoom *)chatRoom didRoomExtraAttributesCleared:(NSDictionary<NSString *, NSString *> *)attributes
      byOperator:(HMRUser *)operatorUser
          atTime:(NSTimeInterval)latestUpdateTs;

房间扩展属性被清空通知。

该回调通知由 clearRoomExtraAttributes 触发,聊天室内用户均会收到该回调通知。

参数
参数描述
chatRoom聊天室的标识,详见 HMRChatRoom
attributes对应的属性值
operatorUser最后一次操作的用户,详见 HMRUser
latestUpdateTs最后一次操作的时间戳,单位:毫秒

HMRChatRoomMemberObserver

chatRoom:didJoinMembers:

- (void)chatRoom:(HMRChatRoom *)chatRoom
  didJoinMembers:(NSSet<HMRUser *> *)members;

当有成员进入聊天室时的回调

注意事项

该方法通过调用 joinChatRoom 发生回调。

参数
参数描述
chatRoom聊天室的标识
members进入聊天室的成员

chatRoom:didLeaveMembers:reason:leavingType:

- (void)chatRoom:(HMRChatRoom *)chatRoom
 didLeaveMembers:(NSSet<HMRUser *> *)members
          reason:(NSString *)reason
     leavingType:(NSInteger)type;

当有成员离开聊天室时的回调

注意事项

参数
参数描述
chatRoom聊天室的标识
members离开聊天室的成员
reason离开聊天室的原因
type离开聊天室的操作类型:
0:LEAVING
1:DISCONNECTED

didChatRoomMemberOffline:

- (void)didChatRoomMemberOffline:(HMRChatRoom *)chatRoom;

当前用户因为断网超时离开聊天室时的回调

注意事项

该方法仅在当前用户本地断网超时发生回调。

参数
参数描述
chatRoom聊天室的标识

didChatRoomMemberLeave:ofChatRoom:

- (void)didChatRoomMemberLeave:(NSSet<HMRUser *> *)members
                    ofChatRoom:(HMRChatRoom *)chatRoom;

当有成员离开聊天室时的回调

注意事项

该方法通过调用 leaveChatRoom 发生回调。

参数
参数描述
members离开聊天室的成员
chatRoom聊天室的标识

chatRoom:didChangeMemberCount:

- (void)chatRoom:(HMRChatRoom *)chatRoom didChangeMemberCount:(NSUInteger)count;

当聊天室成员数量发生变化时的回调

注意事项

该方法通过调用 joinChatRoom 以及 leaveChatRoom 发生回调。

参数
参数描述
chatRoom聊天室的标识
count变化后的数量

chatRoom:didKickMembers:byOperator:reason:

- (void)chatRoom:(HMRChatRoom *)chatRoom
  didKickMembers:(NSSet<HMRUser *> *)members
      byOperator:(HMRUser *)operatorUser
          reason:(NSString *)reason;

当聊天室成员被踢出聊天室时的回调。

注意事项

参数
参数描述
chatRoom聊天室的标识
members被踢出聊天室的成员
operatorUser执行踢出操作的管理员
reason被踢出聊天室的原因

chatRoom:didKickMembers:byOperator:reason:kickOffType:

- (void)chatRoom:(HMRChatRoom *)chatRoom
  didKickMembers:(NSSet<HMRUser *> *)members
      byOperator:(HMRUser *)operatorUser
          reason:(NSString *)reason
     kickOffType:(NSInteger)type;

当聊天室成员被踢出聊天室时的回调

说明

  • 该通知从 v2.15.0 开始已废弃,被踢者接收通知请改用 didUserKicked

注意事项

该方法通过调用 kickMember 发生回调。

参数
参数描述
chatRoom聊天室的标识
members被踢出聊天室的成员
operatorUser执行踢出操作的管理员
reason被踢出聊天室的原因
type被踢出聊天室的类型:0: KICK_OFF 1: BAN_ID 2: BAN_IP 3: BAN_PC

chatRoom:didUserKicked:extraInfo:byOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom
   didUserKicked:(HMRChatRoomKickOutReason)reason
       extraInfo:(NSDictionary<NSString *, NSString *> *)extraInfo
      byOperator:(HMRUser *)operatorUser;

当聊天室成员被踢出聊天室时,被踢者收到的通知

注意事项

该方法通过调用 kickUser 发生回调。

参数
参数描述
chatRoom聊天室的标识
reason被踢出聊天室的标准定义原因,枚举值详见 HMRChatRoomKickOutReason
extraInfo执行踢人操作时的额外信息,包含自定义 reason,操作者可不填
operatorUser执行踢出操作的管理员

chatRoom:didAddRole:forMember:byOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom
      didAddRole:(NSString *)role
       forMember:(HMRUser *)member
      byOperator:(HMRUser *)operatorUser;

当聊天室成员被赋予角色时的回调,该方法通过调用 addRole 发生回调。

说明

  • 该通知从 v2.15.0 开始已废弃,请使用 didUserRoleSet 代替
参数
参数描述
chatRoom聊天室的标识
role被赋予的角色
member被赋予角色的成员
operatorUser赋予角色的管理员

chatRoom:didUserRoleSet:forUser:byOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom
  didUserRoleSet:(NSString *)role
         forUser:(HMRUser *)user
      byOperator:(HMRUser *)operatorUser;

当聊天室成员被赋予角色时的回调,该方法通过调用 setUserRole 发生回调。

参数
参数描述
chatRoom聊天室的标识
role被赋予的角色
user被赋予角色的用户
operatorUser赋予角色的管理员

chatRoom:didRemoveRole:forMember:byOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom
   didRemoveRole:(NSString *)role
       forMember:(HMRUser *)member
      byOperator:(HMRUser *)operatorUser;

当聊天室成员被移除角色时的回调,该方法通过调用 removeRole 发生回调。

说明

  • 该通知从 v2.15.0 开始已废弃,请使用 deleteUserRole代替
参数
参数描述
chatRoom聊天室的标识
role被移除的角色
member被移除角色的成员
operatorUser移除角色的管理员

chatRoom:didUserRoleDeleted:forUser:byOperator:

- (void)chatRoom:(HMRChatRoom *)chatRoom
didUserRoleDeleted:(NSString *)role
         forUser:(HMRUser *)user
      byOperator:(HMRUser *)operatorUser;

当聊天室成员被移除角色时的回调,该方法通过调用 deleteUserRole 发生回调。

参数
参数描述
chatRoom聊天室的标识
role被移除的角色
user被移除角色的成员
operatorUser移除角色的管理员

chatRoom:didMuteMembers:byOperator:reason:

- (void)chatRoom:(HMRChatRoom *)chatRoom
  didMuteMembers:(NSSet<HMRUser *> *)members
      byOperator:(HMRUser *)operatorUser
          reason:(NSString *)reason;

当聊天室成员被禁言时的回调

注意事项

该方法通过调用 muteMember 发生回调。

参数
参数描述
chatRoom聊天室的标识
members被禁言的成员
operatorUser禁言的管理员
reason禁言原因

chatRoom:didUnmuteMembers:byOperator:reason

- (void)chatRoom:(HMRChatRoom *)chatRoom
didUnmuteMembers:(NSSet<HMRUser *> *)members
      byOperator:(HMRUser *)operatorUser
          reason:(NSString *)reason;

当聊天室成员被解除禁言时的回调

注意事项

该方法通过调用 unmuteMember 发生回调。

参数
参数描述
chatRoom聊天室的标识
members被解除禁言的成员
operatorUser解除禁言的管理员
reason原因

chatRoom:didUserInfoSet:infos:

- (void)chatRoom:(HMRChatRoom *)chatRoom
  didUserInfoSet:(HMRUser *)user
           infos:(NSDictionary<NSString *, NSString *> *)infos;

当聊天室成员信息被设置时的回调

注意事项

该方法通过调用 setUserInfo 发生回调。

参数
参数描述
chatRoom聊天室的标识
user信息变更的成员
infos设置后的用户信息

chatRoom:didUserInfoDeleted:infos:

- (void)  chatRoom:(HMRChatRoom *)chatRoom
didUserInfoDeleted:(HMRUser *)user
             infos:(NSDictionary<NSString *, NSString *> *)infos;

当聊天室成员信息被删除时的回调

注意事项

该方法通过调用 deleteUserInfo 发生回调。

参数
参数描述
chatRoom聊天室的标识
user信息变更的成员
infos被删除的用户信息

chatRoom:didUserInfoAddedOrUpdated:infos:

- (void)chatRoom:(HMRChatRoom *)chatRoom didUserInfoAddedOrUpdated:(HMRUser *)user
           infos:(NSDictionary<NSString *, NSString *> *)infos;

当添加或更新聊天室成员信息时的回调

注意事项

该方法通过调用 addOrUpdateUserInfo 发生回调。

参数
参数描述
chatRoom聊天室的标识
user信息变更的成员
infos被删除的用户信息

HMRChannelServiceDelegate

didP2CTextMessageReceived:message:fromUser:

- (void)didP2CTextMessageReceived:(HMRChannelId *)channelId
                          message:(HMRTextMessage *)message
                         fromUser:(HMRUser *)user;

通道广播消息通知。

当通道内收到广播消息时,会收到该通知回调,由 sendP2CMessage 触发。

参数
参数描述
channelId消息通道ID,详见 HMRChannelId
message消息对象,仅支持文本消息,详见 HMRTextMessage
user该消息的发送者,详见 HMRUser

HMRMessageObserver

willSendMessage:

- (void)willSendMessage:(HMRMessage *)message;

即将发送聊天消息前会收到该事件的回调通知

注意事项

  • 它一般用于在发送消息前将其添加到会话渲染界面,或者是消息入库等
  • 该方法通过调用 sendMessage 发生回调。
参数
参数描述
message发送的消息

didSendMessage:

- (void)didSendMessage:(HMRMessage *)message;

发送完成聊天消息完成后会收到该事件的回调通知(无论发送消息成功或失败)

注意事项

该方法通过调用 sendMessage 发生回调。

参数
参数描述
message发送的消息

willReceiveMessage:

- (void)willReceiveMessage:(HMRMessage *)message;

在消息接收、处理前,会执行该回调。

参数
参数描述
message接收的消息

didReceiveMessage:

- (void)didReceiveMessage:(HMRMessage *)message;

当接收到新的消息时,会通过该方法进行回调。

参数
参数描述
message接收的消息

文档是否有解决您的问题?

有帮助 没帮助
提交成功,非常感谢您的反馈!

反馈

TOP