服务端
API 参考
圈组

发送聊天室定向消息

更新时间: 2024/03/15 14:31:52

网易云信 IM 服务端支持发送聊天室定向消息。

功能描述

用户可以在聊天室中,向指定成员发送聊天室消息。消息类型包括消息类型包括文本消息、图片消息、语音消息、视频消息、地理位置消息、文件消息、提示消息和自定义消息。

  • 重发聊天室定向消息与发送聊天室定向消息都可通过本 API 实现,通过设置 resendFlag 进行区分。详情请参见下文请求参数中该参数的说明。
  • 不支持将聊天室定向消息保存为历史消息。

URL

httpPOST https://api.netease.im/nimserver/chatroom/sendMsgToSomeone.action HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8

请求参数

  • POST 请求中 Headers 的设置请参考API 调用方式

  • POST 请求中 Body 的设置如下:

参数类型必填说明
roomid Long 聊天室 ID
msgId String 消息 ID,使用 uuid 等随机串,msgId 相同的消息会被客户端去重
attach String 消息内容,格式同消息格式示例中的 body 字段,最大长度 4096 位字符
fromAccid String 发送消息的用户账号,accid
toAccids String 消息接收者 accid 列表,JSONArray,最多 100 个账号
msgType Integer消息类型:
0: 文本消息,1:图片,2:语音,3:视频,4:地理位置信息,6:文件,10:提示消息(Tips),100: 自定义消息对于未对接易盾反垃圾功能的应用,自定义消息不会提交反垃圾系统检测
subType Integer自定义消息子类型,大于0
resendFlag Integer重发消息标记,0:非重发消息,1:重发消息,如重发消息会按照 msgId 检查去重逻辑
route Integer消息是否需要抄送
0:不需要;1:需要(默认)
ext String 消息扩展字段,内容可自定义,JSON 格式,最大长度 4096 位字符
useYidun Integer 单条消息(包括自定义消息)是否使用安全通(即易盾反垃圾),只能传 0,传其他值相当于不传
0:(在开通安全通的情况下)不使用安全通
若不填此字段,即在默认情况下,若应用开通了安全通,则使用安全通来进行垃圾消息的判断
yidunAntiCheating String 透传给易盾的反作弊检测参数,JSON,最大长度 1024 位字符,(具体请参见易盾的反垃圾防刷版专属字段
yidunAntiSpamExt String 透传给易盾的反垃圾含圈组版的检测参数,JSON,最大长度 1024 位字符(具体请参见易盾的反垃圾含圈组版用户可扩展字段
bid String 安全通的自定义反垃圾(即内容审核)业务的 ID。自定义反垃圾业务主要用来针对单条消息进行除了默认反垃圾业务以外的内容审核。如需配置自定义反垃圾,请通过云信官网首页提供的微信、在线聊天和电话等方式联系商务经理进行配置,并获取对应的业务 ID
antispam Boolean 对于开通了安全通(易盾反垃圾)功能的应用,本消息是否需要指定经由易盾检测的内容(antispamCustom),默认 false
只对自定义消息(消息类型:100)生效
antispamCustom String自定义的反垃圾检测内容,在 antispam 参数为 true 时生效,JSON,长度限制同 body 字段,最大长度 5000 位字符,要求 antispamCustom 格式如下:
{"type":1,"data":"custom content"}
字段说明:
type: 1:文本,2:图片
data: 文本内容或图片地址
env String 消息需要抄送到的环境的名称,对应您在云信控制台中配置的自定义抄送的环境名称(如下图),最大 32 个字符

自定义抄送环境.png

返回参数

参数类型说明
code Integer状态码
desc String发送的消息体的详细信息

desc 中的参数说明

参数类型说明
time Long发送消息的时间戳,毫秒级
fromAvatorString发送消息用户的头像
msgid_clientLong客户端的消息 ID
fromClientTypeString发送消息用户的客户端类型
roomId Long聊天室 ID
fromAccount String 发送消息的用户账号,accid
fromNick String 发送消息的用户昵称
attach String消息内容
type Integer 消息类型
ext String扩展字段

示例

请求示例(curl)

curlcurl -X POST -H "CheckSum: 51eb13ea**1c65c7866c366" -H 'AppKey: fe416640c***e1847ad2547' -H "Nonce: 1" -H "CurTime: 1451207708" -H 'Content-Type: application/x-www-form-urlencoded' -d 'roomid=36&fromAccid=zhangsan&msgType=0&attach=This+is+test+msg&msgId=c9e6c306-804f-4ec3-b8f0-573778829419&toAccids=["acc1","acc2"]' 'https://api.netease.im/nimserver/chatroom/sendMsgToSomeone.action'

请求成功返回示例

json"Content-Type": "application/json; charset=utf-8"
{
"code":200,
"desc":{
  "time": "1456396333115",
  "fromAvator": "http://b12026.nos.netease.com/MTAxMTAxMA==/bmltYV84NDU4OF8xNDU1ODczMjA2NzUwX2QzNjkxMjI2LWY2NmQtNDQ3Ni0E2LTg4NGE4MDNmOGIwMQ==",
  "msgid_client": "111139",
  "fromClientType": "REST",
  "attach": "这是消息",
  "roomId": "36",
  "fromAccount": "zhansan",
  "fromNick": "张三",
  "type": "0",
  "ext": ""
}
}

请求失败返回示例

"Content-Type": "application/json; charset=utf-8"
{
    "code":414
    "desc":"msgContents size exceed" //消息内容大小超出限制
}

状态码

该接口在 HTTPS Body 中返回请求的状态码,以下仅列出与接口业务相关的状态码。完整状态码请参见状态码

状态码 说明 处理建议
200 请求成功 -
414 参数错误 根据提示信息,检查传入参数的格式和限制条件
403 禁止操作 聊天室名称等违规,未过审核或者未开启聊天室权限
419 聊天室数量超出 -
500 服务错误 -
此文档是否对你有帮助?
有帮助
去反馈
  • 功能描述
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • 请求示例(curl)
  • 请求成功返回示例
  • 请求失败返回示例
  • 状态码