服务端
API 参考
圈组

批量发送聊天室定向消息

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

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

功能描述

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

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

URL

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

请求参数

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

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

参数类型必填说明
roomid Long聊天室 ID
msgList String 需要发送的消息列表,JSONArray,最多可发送 10 条消息,每条消息的字段如下:
  • msgId:消息 ID,String,必填
  • msgType:消息类型,Integer,必填
    0: 文本消息,1: 图片,2: 语音,3: 视频,4: 地理位置信息,6: 文件,10: 提示消息(Tips),100: 自定义消息对于未对接易盾反垃圾功能的应用,自定义消息不会提交反垃圾系统检测
  • attach:消息内容,String,格式同消息格式示例中的 body 字段,最大长度 4096 位字符
  • ext:扩展字段,String,可自定义内容,JSON 格式,最大长度 4096 位字符
  • subType:自定义消息子类型,Integer,大于 0
  • resendFlag:重发消息标记,Integer
    0:非重发消息,1:重发消息,如重发消息会按照 msgId 检查去重逻辑
请参考以下示例:
[{"attach":"oadsjfadhsfis89d","ext":"fidsuf9a8dhsigsfdj","msgId":"adfdas8fua8d9g","msgType":0,"subType": 1,"resendFlag":0}]
fromAccid String 发送消息的用户账号,accid
toAccids String 消息接收者 accid 列表,JSONArray,最多 100 个账号
route Integer消息是否需要抄送
0:不需要;1:需要(默认)
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状态码
fail String发送失败的消息说明,JSONArray,以“客户端消息 ID:发送失败原因描述”的格式返回
success String发送成功的消息说明的详细信息,JSONArray,以“客户端消息 ID:发送成功的消息详情”的格式返回,每个发送成功的消息的详细信息,请参考上述发送单条定向消息的返回参数说明

示例

请求示例(curl)

curlcurl -X POST -H "CheckSum: 18f5435a7bf28***8797f75265495034" -H "AppKey: fe41664****7ad2547" -H "Nonce: 12345" -H "CurTime: 1508481877" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'roomid=765788&msgList=[{"attach":"oadsjfadhsfis89d","ext":"fidsuf9a8dhsigsfdj","msgId":"adfdas8fua8d9g","msgType":0,"resendFlag":0}]&fromAccid=fromAccid&toAccids=["accid1","accid2"]' 'https://api.netease.im/nimserver/chatroom/batchSendMsgToSomeone.action'

请求成功返回示例

json"Content-Type": "application/json; charset=utf-8"
{
  "fail": [
    {
      "57gadfgsdhlaisfjlaskdmfa": "parameter resendFlag should be used for RESEND!"
    }
  ],
  "code": 200,
  "success": [
    {
      "gsfdgs45hd15h1s56safda": {
        "ext": "fadsfag80ad7fg98s9giapo[ga",
        "fromNick": "yx2",
        "msgid_client": "gsfdgs45hd15h1s56safda",
        "fromAccount": "yx2",
        "fromClientType": "REST",
        "attach": "afsdfaf807sadf98asdfl;ajskdflasd",
        "time": "1668566975724",
        "type": "2",
        "highPriorityFlag": "1",
        "roomId": "72"
      }
    },
    {
      "akdsuhfaiuofyai7syfhakjds": {
        "ext": "fadsfag80ad7fg98s9giapo[ga",
        "fromNick": "yx2",
        "msgid_client": "akdsuhfaiuofyai7syfhakjds",
        "fromAccount": "yx2",
        "fromClientType": "REST",
        "attach": "",
        "time": "1668566975825",
        "type": "1",
        "highPriorityFlag": "1",
        "roomId": "72"
      }
    }
  ]
}

请求失败返回示例

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

状态码

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

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