NIM PC Cross Platform SDK
nim_res_code_def.h File Reference

NIM SDK提供给外部使用的错误号定义(包含客户端自定义和服务器返回的所有错误号) More...

Go to the source code of this file.

Enumerations

enum  NIMResCode {
  kNIMResError = 0 , kNIMResSuccess = 200 , kNIMResVersionError = 201 , kNIMResUidPassError = 302 ,
  kNIMResForbidden = 403 , kNIMResNotExist = 404 , kNIMResNoModify = 406 , kNIMResTimeoutError = 408 ,
  kNIMResParameterError = 414 , kNIMResConnectionError = 415 , kNIMResFrequently = 416 , kNIMResExist = 417 ,
  kNIMResOverrun = 419 , kNIMResAccountBlock = 422 , kNIMResUnknownError = 500 , kNIMResServerDataError = 501 ,
  kNIMResTooBuzy = 503 , kNIMResExceedLimit = 508 , kNIMResInvalid = 509 , kNIMResTeamECountLimit = 801 ,
  kNIMResTeamENAccess = 802 , kNIMResTeamENotExist = 803 , kNIMResTeamEMemberNotExist = 804 , kNIMResTeamErrType = 805 ,
  kNIMResTeamLimit = 806 , kNIMResTeamUserStatusErr = 807 , kNIMResTeamApplySuccess = 808 , kNIMResTeamAlreadyIn = 809 ,
  kNIMResTeamInviteSuccess = 810 , kNIMResForcePushCountLimit = 811 , kNIMResTeamMemberLimit = 813 , kNIMResInvalidProtocol = 997 ,
  kNIMResEUnpacket = 998 , kNIMResEPacket = 999 , kNIMResInBlack = 7101 , kNIMLocalRes = 10000 ,
  kNIMResRoomLocalNeedRequestAgain = 10001 , kNIMLocalResNetworkError = 10010 , kNIMLocalResMsgNosUploadCancel = 10200 , kNIMLocalResMsgNosDownloadCancel = 10206 ,
  kNIMLocalResMsgNosDownloadCheckError = 10207 , kNIMLocalResMsgFileNotExist = 10404 , kNIMLocalResParameterError = 10414 , kNIMLocalResExist = 10417 ,
  kNIMLocalResMsgSendNosError = 10502 , kNIMLocalResExceedLimit = 10508 , kNIMLocalResCheckMsgDBFailed = 10600 , kNIMLocalResImportMsgDBFailed = 10601 ,
  kNIMLocalResRtsError = 11100 , kNIMLocalResRtsIdNotExist = 11101 , kNIMLocalResRtsVChatExist = 11417 , kNIMLocalResRtsStatusError = 11501 ,
  kNIMLocalResRtsChannelNotExist = 11510 , kNIMResRoomLinkError = 13001 , kNIMResRoomError = 13002 , kNIMResRoomBlackBeOut = 13003 ,
  kNIMResRoomBeMuted = 13004 , kNIMResRoomAllMuted = 13006 , kNIMLocalResAPIErrorInitUndone = 20000 , kNIMLocalResAPIErrorLoginUndone = 20001 ,
  kNIMLocalResAPIErrorLogined = 20002 , kNIMLocalResAPIErrorVersionError = 20003 , kNIMLocalResAPIErrorChatroomMixError = 20004 , kNIMResError = 0 ,
  kNIMResSuccess = 200 , kNIMResVersionError = 201 , kNIMResUidPassError = 302 , kNIMResForbidden = 403 ,
  kNIMResNotExist = 404 , kNIMResNoModify = 406 , kNIMResTimeoutError = 408 , kNIMResParameterError = 414 ,
  kNIMResConnectionError = 415 , kNIMResFrequently = 416 , kNIMResExist = 417 , kNIMResOverrun = 419 ,
  kNIMResAccountBlock = 422 , kNIMResUnknownError = 500 , kNIMResServerDataError = 501 , kNIMResTooBuzy = 503 ,
  kNIMResExceedLimit = 508 , kNIMResInvalid = 509 , kNIMResTeamECountLimit = 801 , kNIMResTeamENAccess = 802 ,
  kNIMResTeamENotExist = 803 , kNIMResTeamEMemberNotExist = 804 , kNIMResTeamErrType = 805 , kNIMResTeamLimit = 806 ,
  kNIMResTeamUserStatusErr = 807 , kNIMResTeamApplySuccess = 808 , kNIMResTeamAlreadyIn = 809 , kNIMResTeamInviteSuccess = 810 ,
  kNIMResForcePushCountLimit = 811 , kNIMResTeamMemberLimit = 813 , kNIMResInvalidProtocol = 997 , kNIMResEUnpacket = 998 ,
  kNIMResEPacket = 999 , kNIMResInBlack = 7101 , kNIMLocalRes = 10000 , kNIMResRoomLocalNeedRequestAgain = 10001 ,
  kNIMLocalResNetworkError = 10010 , kNIMLocalResMsgNosUploadCancel = 10200 , kNIMLocalResMsgNosDownloadCancel = 10206 , kNIMLocalResMsgNosDownloadCheckError = 10207 ,
  kNIMLocalResMsgAccessDenied = 10403 , kNIMLocalResMsgFileNotExist = 10404 , kNIMLocalResParameterError = 10414 , kNIMLocalResFrequently = 10416 ,
  kNIMLocalResExist = 10417 , kNIMLocalResMsgSendNosError = 10502 , kNIMLocalResExceedLimit = 10508 , kNIMLocalResCheckMsgDBFailed = 10600 ,
  kNIMLocalResImportMsgDBFailed = 10601 , kNIMLocalResRtsError = 11100 , kNIMLocalResRtsIdNotExist = 11101 , kNIMLocalResRtsVChatExist = 11417 ,
  kNIMLocalResRtsStatusError = 11501 , kNIMLocalResRtsChannelNotExist = 11510 , kNIMResRoomLinkError = 13001 , kNIMResRoomError = 13002 ,
  kNIMResRoomBlackBeOut = 13003 , kNIMResRoomBeMuted = 13004 , kNIMResRoomAllMuted = 13006 , kNIMLocalResAPIErrorInitUndone = 20000 ,
  kNIMLocalResAPIErrorLoginUndone = 20001 , kNIMLocalResAPIErrorLogined = 20002 , kNIMLocalResAPIErrorVersionError = 20003 , kNIMLocalResAPIErrorChatroomMixError = 20004 ,
  kNIMLocalResAPIErrorRunOutOfLinkAddress = 20005 , kNIMResError = 0 , kNIMResSuccess = 200 , kNIMResVersionError = 201 ,
  kNIMResUidPassError = 302 , kNIMResForbidden = 403 , kNIMResNotExist = 404 , kNIMResNoModify = 406 ,
  kNIMResTimeoutError = 408 , kNIMResParameterError = 414 , kNIMResConnectionError = 415 , kNIMResFrequently = 416 ,
  kNIMResExist = 417 , kNIMResOverrun = 419 , kNIMResAccountBlock = 422 , kNIMResUnknownError = 500 ,
  kNIMResServerDataError = 501 , kNIMResTooBuzy = 503 , kNIMResExceedLimit = 508 , kNIMResInvalid = 509 ,
  kNIMResTeamECountLimit = 801 , kNIMResTeamENAccess = 802 , kNIMResTeamENotExist = 803 , kNIMResTeamEMemberNotExist = 804 ,
  kNIMResTeamErrType = 805 , kNIMResTeamLimit = 806 , kNIMResTeamUserStatusErr = 807 , kNIMResTeamApplySuccess = 808 ,
  kNIMResTeamAlreadyIn = 809 , kNIMResTeamInviteSuccess = 810 , kNIMResForcePushCountLimit = 811 , kNIMResTeamMemberLimit = 813 ,
  kNIMResTeamGetInfoListPartSuccess = 816 , kNIMResInvalidProtocol = 997 , kNIMResEUnpacket = 998 , kNIMResEPacket = 999 ,
  kNIMResInBlack = 7101 , kNIMResRoomNotExists = 10404 , kNIMResRoomHasExists = 10405 , kNIMResRoomMemberNotExists = 10406 ,
  kNIMResRoomMemberHasExists = 10407 , kNIMResRoomInviteNotExists = 10408 , kNIMResRoomInviteHasReject = 10409 , kNIMResRoomInviteHasAccept = 10410 ,
  kNIMResPeerNimOffline = 10201 , kNIMResPeerPushOffline = 10202 , kNIMResRoomUidConflict = 10417 , kNIMResRoomMemberExceed = 10419 ,
  kNIMResRoomMemberHasExistsOtherClient = 10420 , kNIMLocalRes = 10000 , kNIMResRoomLocalNeedRequestAgain = 10001 , kNIMLocalResNetworkError = 10010 ,
  kNIMLocalResMsgNosUploadCancel = 10200 , kNIMLocalResMsgNosDownloadCancel = 10206 , kNIMLocalResMsgNosDownloadCheckError = 10207 , kNIMLocalResMsgFileNotAccess = 10403 ,
  kNIMLocalResMsgFileNotExist = 10404 , kNIMLocalResParameterError = 10414 , kNIMLocalResExist = 10417 , kNIMLocalResParaError = 10450 ,
  kNIMLocalResMsgSendNosError = 10502 , kNIMLocalResExceedLimit = 10508 , kNIMLocalResCheckMsgDBFailed = 10600 , kNIMLocalResImportMsgDBFailed = 10601 ,
  kNIMLocalResTMembersSyncUndone = 10602 , kNIMLocalResRtsError = 11100 , kNIMLocalResRtsIdNotExist = 11101 , kNIMLocalResRtsVChatExist = 11417 ,
  kNIMLocalResRtsStatusError = 11501 , kNIMLocalResRtsChannelNotExist = 11510 , kNIMResRoomLinkError = 13001 , kNIMResRoomError = 13002 ,
  kNIMResRoomBlackBeOut = 13003 , kNIMResRoomBeMuted = 13004 , kNIMResRoomAllMuted = 13006 , kNIMLocalResAPIErrorInitUndone = 20000 ,
  kNIMLocalResAPIErrorLoginUndone = 20001 , kNIMLocalResAPIErrorLogined = 20002 , kNIMLocalResAPIErrorVersionError = 20003 , kNIMLocalResAPIErrorChatroomMixError = 20004
}
 

Detailed Description

NIM SDK提供给外部使用的错误号定义(包含客户端自定义和服务器返回的所有错误号)

Author
Harrison
Date
2015/2/1

Enumeration Type Documentation

◆ NIMResCode

enum NIMResCode

返回的错误号(只定义需要客户端处理的)

Enumerator
kNIMResError 

错误

kNIMResSuccess 

没有错误,一切正常

kNIMResVersionError 

客户端版本不正确

kNIMResUidPassError 

用户名或密码错误

kNIMResForbidden 

禁止操作

kNIMResNotExist 

请求的目标(用户或对象)不存在

kNIMResNoModify 

数据自上次查询以来未发生变化(用于增量更新)

kNIMResTimeoutError 

请求过程超时

kNIMResParameterError 

参数错误

kNIMResConnectionError 

网络连接出现错误

kNIMResFrequently 

操作太过频繁

kNIMResExist 

对象已经存在/重复操作

kNIMResOverrun 

超限

kNIMResAccountBlock 

帐号被禁用

kNIMResUnknownError 

未知错误,或者不方便告诉你

kNIMResServerDataError 

服务器数据错误

kNIMResTooBuzy 

服务器太忙

kNIMResExceedLimit 

超过配置有效期

kNIMResInvalid 

协议无效, 不允许访问的协议

kNIMResTeamECountLimit 

已达到人数限制

kNIMResTeamENAccess 

没有权限

kNIMResTeamENotExist 

群不存在

kNIMResTeamEMemberNotExist 

用户不在兴趣组里面

kNIMResTeamErrType 

群类型不对

kNIMResTeamLimit 

创建群数量限制

kNIMResTeamUserStatusErr 

群成员状态不对

kNIMResTeamApplySuccess 

申请成功

kNIMResTeamAlreadyIn 

已经在群里

kNIMResTeamInviteSuccess 

邀请成功

kNIMResForcePushCountLimit 

强推列表账号数量超限

kNIMResTeamMemberLimit 

操作成功,但部分成员的群数量超限

kNIMResInvalidProtocol 

协议已失效

kNIMResEUnpacket 

解包错误

kNIMResEPacket 

打包错误

kNIMResInBlack 

被接收方加入黑名单 SDK版本大于2.5.0支持

kNIMLocalRes 

值大于该错误号的都是客户端自定义的错误号。不能随意更改其值!

kNIMResRoomLocalNeedRequestAgain 

客户端本地错误号,需要重新向IM服务器获取进入聊天室权限

kNIMLocalResNetworkError 

客户端本地错误号,本地网络错误,需要检查本地网络

kNIMLocalResMsgNosUploadCancel 

(发送文件消息或者stop_upload_ex)HTTP upload to NOS上传暂停

kNIMLocalResMsgNosDownloadCancel 

(收到文件消息或者stop_download_ex)HTTP download from NOS下载暂停

kNIMLocalResMsgNosDownloadCheckError 

收到文件消息,NOS下载完成后本地文件检查错误,一般为下载的文件大小与文件信息不符

kNIMLocalResMsgFileNotExist 

本地资源不存在

kNIMLocalResParameterError 

本地错误码,参数错误,(收到消息,资源下载地址无效,无法下载)

kNIMLocalResExist 

本地错误码,对象已经存在/重复操作,(收到消息,本地资源已存在,不需要重复下载)

kNIMLocalResMsgSendNosError 

发送消息,上传NOS失败

kNIMLocalResExceedLimit 

本地错误码,超过配置有效期或者所需参数不存在

kNIMLocalResCheckMsgDBFailed 

导入消息历史时验证身份和加密密钥不通过

kNIMLocalResImportMsgDBFailed 

导入消息历史时写记录失败

kNIMLocalResRtsError 

rts会话 未知错误

kNIMLocalResRtsIdNotExist 

rts会话 id不存在

kNIMLocalResRtsVChatExist 

rts会话 音视频已存在

kNIMLocalResRtsStatusError 

rts会话 通道状态不正确

kNIMLocalResRtsChannelNotExist 

rts会话 通道不存在

kNIMResRoomLinkError 

主链接错误

kNIMResRoomError 

聊天室状态异常

kNIMResRoomBlackBeOut 

黑名单用户禁止进入

kNIMResRoomBeMuted 

被禁言

kNIMResRoomAllMuted 

聊天室处于整体禁言状态,只有管理员能发言

kNIMLocalResAPIErrorInitUndone 

还未初始化或初始化未正常完成

kNIMLocalResAPIErrorLoginUndone 

还未登陆或登录未完成

kNIMLocalResAPIErrorLogined 

已经登录

kNIMLocalResAPIErrorVersionError 

SDK版本不对,可能会引发其他问题

kNIMLocalResAPIErrorChatroomMixError 

聊天室模式混用错误,不支持同时以登陆状态和匿名状态登陆聊天室

kNIMResError 

错误

kNIMResSuccess 

没有错误,一切正常

kNIMResVersionError 

客户端版本不正确

kNIMResUidPassError 

用户名或密码错误

kNIMResForbidden 

禁止操作

kNIMResNotExist 

请求的目标(用户或对象)不存在

kNIMResNoModify 

数据自上次查询以来未发生变化(用于增量更新)

kNIMResTimeoutError 

请求过程超时

kNIMResParameterError 

参数错误

kNIMResConnectionError 

网络连接出现错误

kNIMResFrequently 

操作太过频繁

kNIMResExist 

对象已经存在/重复操作

kNIMResOverrun 

超限

kNIMResAccountBlock 

帐号被禁用

kNIMResUnknownError 

未知错误,或者不方便告诉你

kNIMResServerDataError 

服务器数据错误

kNIMResTooBuzy 

服务器太忙

kNIMResExceedLimit 

超过配置有效期

kNIMResInvalid 

协议无效, 不允许访问的协议

kNIMResTeamECountLimit 

已达到人数限制

kNIMResTeamENAccess 

没有权限

kNIMResTeamENotExist 

群不存在

kNIMResTeamEMemberNotExist 

用户不在兴趣组里面

kNIMResTeamErrType 

群类型不对

kNIMResTeamLimit 

创建群数量限制

kNIMResTeamUserStatusErr 

群成员状态不对

kNIMResTeamApplySuccess 

申请成功

kNIMResTeamAlreadyIn 

已经在群里

kNIMResTeamInviteSuccess 

邀请成功

kNIMResForcePushCountLimit 

强推列表账号数量超限

kNIMResTeamMemberLimit 

操作成功,但部分成员的群数量超限

kNIMResInvalidProtocol 

协议已失效

kNIMResEUnpacket 

解包错误

kNIMResEPacket 

打包错误

kNIMResInBlack 

被接收方加入黑名单 SDK版本大于2.5.0支持

kNIMLocalRes 

值大于该错误号的都是客户端自定义的错误号。不能随意更改其值!

kNIMResRoomLocalNeedRequestAgain 

客户端本地错误号,需要重新向IM服务器获取进入聊天室权限

kNIMLocalResNetworkError 

客户端本地错误号,本地网络错误,需要检查本地网络

kNIMLocalResMsgNosUploadCancel 

(发送文件消息或者stop_upload_ex)HTTP upload to NOS上传暂停

kNIMLocalResMsgNosDownloadCancel 

(收到文件消息或者stop_download_ex)HTTP download from NOS下载暂停

kNIMLocalResMsgNosDownloadCheckError 

收到文件消息,NOS下载完成后本地文件检查错误,一般为下载的文件大小与文件信息不符

kNIMLocalResMsgAccessDenied 

禁止访问

kNIMLocalResMsgFileNotExist 

本地资源不存在

kNIMLocalResParameterError 

本地错误码,参数错误,(收到消息,资源下载地址无效,无法下载)

kNIMLocalResFrequently 

本地错误码,操作太过频繁

kNIMLocalResExist 

本地错误码,对象已经存在/重复操作,(收到消息,本地资源已存在,不需要重复下载)

kNIMLocalResMsgSendNosError 

发送消息,上传NOS失败

kNIMLocalResExceedLimit 

本地错误码,超过配置有效期或者所需参数不存在

kNIMLocalResCheckMsgDBFailed 

导入消息历史时验证身份和加密密钥不通过

kNIMLocalResImportMsgDBFailed 

导入消息历史时写记录失败

kNIMLocalResRtsError 

rts会话 未知错误

kNIMLocalResRtsIdNotExist 

rts会话 id不存在

kNIMLocalResRtsVChatExist 

rts会话 音视频已存在

kNIMLocalResRtsStatusError 

rts会话 通道状态不正确

kNIMLocalResRtsChannelNotExist 

rts会话 通道不存在

kNIMResRoomLinkError 

主链接错误

kNIMResRoomError 

聊天室状态异常

kNIMResRoomBlackBeOut 

黑名单用户禁止进入

kNIMResRoomBeMuted 

被禁言

kNIMResRoomAllMuted 

聊天室处于整体禁言状态,只有管理员能发言

kNIMLocalResAPIErrorInitUndone 

还未初始化或初始化未正常完成

kNIMLocalResAPIErrorLoginUndone 

还未登陆或登录未完成

kNIMLocalResAPIErrorLogined 

已经登录

kNIMLocalResAPIErrorVersionError 

SDK版本不对,可能会引发其他问题

kNIMLocalResAPIErrorChatroomMixError 

聊天室模式混用错误,不支持同时以登陆状态和匿名状态登陆聊天室

kNIMLocalResAPIErrorRunOutOfLinkAddress 

连接地址用完了

kNIMResError 

错误

kNIMResSuccess 

没有错误,一切正常

kNIMResVersionError 

客户端版本不正确

kNIMResUidPassError 

用户名或密码错误

kNIMResForbidden 

禁止操作

kNIMResNotExist 

请求的目标(用户或对象)不存在

kNIMResNoModify 

数据自上次查询以来未发生变化(用于增量更新)

kNIMResTimeoutError 

请求过程超时

kNIMResParameterError 

参数错误

kNIMResConnectionError 

网络连接出现错误

kNIMResFrequently 

操作太过频繁

kNIMResExist 

对象已经存在/重复操作

kNIMResOverrun 

超限

kNIMResAccountBlock 

帐号被禁用

kNIMResUnknownError 

未知错误,或者不方便告诉你

kNIMResServerDataError 

服务器数据错误

kNIMResTooBuzy 

服务器太忙

kNIMResExceedLimit 

超过配置有效期

kNIMResInvalid 

协议无效, 不允许访问的协议

kNIMResTeamECountLimit 

已达到人数限制

kNIMResTeamENAccess 

没有权限

kNIMResTeamENotExist 

群不存在

kNIMResTeamEMemberNotExist 

用户不在兴趣组里面

kNIMResTeamErrType 

群类型不对

kNIMResTeamLimit 

创建群数量限制

kNIMResTeamUserStatusErr 

群成员状态不对

kNIMResTeamApplySuccess 

申请成功

kNIMResTeamAlreadyIn 

已经在群里

kNIMResTeamInviteSuccess 

邀请成功

kNIMResForcePushCountLimit 

强推列表账号数量超限

kNIMResTeamMemberLimit 

操作成功,但部分成员的群数量超限

kNIMResTeamGetInfoListPartSuccess 

批量查询群信息部分成功

kNIMResInvalidProtocol 

协议已失效

kNIMResEUnpacket 

解包错误

kNIMResEPacket 

打包错误

kNIMResInBlack 

被接收方加入黑名单 SDK版本大于2.5.0支持

kNIMResRoomNotExists 

房间不存在

kNIMResRoomHasExists 

房间已存在

kNIMResRoomMemberNotExists 

不在房间内

kNIMResRoomMemberHasExists 

已经在房间内

kNIMResRoomInviteNotExists 

邀请不存在或已过期

kNIMResRoomInviteHasReject 

邀请已经拒绝

kNIMResRoomInviteHasAccept 

邀请已经接受了

kNIMResPeerNimOffline 

对方云信不在线

kNIMResPeerPushOffline 

对方推送亦不可达

kNIMResRoomUidConflict 

uid冲突

kNIMResRoomMemberExceed 

房间人数超限

kNIMResRoomMemberHasExistsOtherClient 

已经在房间内(自己的其他端)

kNIMLocalRes 

值大于该错误号的都是客户端自定义的错误号。不能随意更改其值!

kNIMResRoomLocalNeedRequestAgain 

客户端本地错误号,需要重新向IM服务器获取进入聊天室权限

kNIMLocalResNetworkError 

客户端本地错误号,本地网络错误,需要检查本地网络

kNIMLocalResMsgNosUploadCancel 

(发送文件消息或者stop_upload_ex)HTTP upload to NOS上传暂停

kNIMLocalResMsgNosDownloadCancel 

(收到文件消息或者stop_download_ex)HTTP download from NOS下载暂停

kNIMLocalResMsgNosDownloadCheckError 

收到文件消息,NOS下载完成后本地文件检查错误,一般为下载的文件大小与文件信息不符

kNIMLocalResMsgFileNotAccess 

本地文件无访问权限

kNIMLocalResMsgFileNotExist 

本地资源不存在

kNIMLocalResParameterError 

本地错误码,参数错误,(收到消息,资源下载地址无效,无法下载)

kNIMLocalResExist 

本地错误码,对象已经存在/重复操作,(收到消息,本地资源已存在,不需要重复下载)

kNIMLocalResParaError 

调用api,传入的参数有误

kNIMLocalResMsgSendNosError 

发送消息,上传NOS失败

kNIMLocalResExceedLimit 

本地错误码,超过配置有效期或者所需参数不存在

kNIMLocalResCheckMsgDBFailed 

导入消息历史时验证身份和加密密钥不通过

kNIMLocalResImportMsgDBFailed 

导入消息历史时写记录失败

kNIMLocalResTMembersSyncUndone 

群成员尚同步完成

kNIMLocalResRtsError 

rts会话 未知错误

kNIMLocalResRtsIdNotExist 

rts会话 id不存在

kNIMLocalResRtsVChatExist 

rts会话 音视频已存在

kNIMLocalResRtsStatusError 

rts会话 通道状态不正确

kNIMLocalResRtsChannelNotExist 

rts会话 通道不存在

kNIMResRoomLinkError 

主链接错误

kNIMResRoomError 

聊天室状态异常

kNIMResRoomBlackBeOut 

黑名单用户禁止进入

kNIMResRoomBeMuted 

被禁言

kNIMResRoomAllMuted 

聊天室处于整体禁言状态,只有管理员能发言

kNIMLocalResAPIErrorInitUndone 

还未初始化或初始化未正常完成

kNIMLocalResAPIErrorLoginUndone 

还未登陆或登录未完成

kNIMLocalResAPIErrorLogined 

已经登录

kNIMLocalResAPIErrorVersionError 

SDK版本不对,可能会引发其他问题

kNIMLocalResAPIErrorChatroomMixError 

聊天室模式混用错误,不支持同时以登陆状态和匿名状态登陆聊天室