服务端
API 参考
圈组

批量发送自定义系统通知

更新时间: 2024/03/15 14:27:33

网易云信服务端支持批量发送自定义系统通知。

功能描述

系统通知区别于普通消息,SDK 接收系统通知后直接交给应用上层处理,客户端可不做展示。

典型应用场景:某个用户给另一个用户发送好友请求,开发者可自定义该请求的具体内容(建议是 JSON 格式)。

  • 支持收发在线和离线自定义系统通知,且支持接收方多端同步接收自定义系统通知。
  • 自定义系统通知不支持漫游且不支持保存为云端历史记录。

API 使用限制

  • 单个应用最高调用频率:120 次/分。如果超限将报错(状态码:416),并且将被屏蔽 1 分钟,之后才能再次调用。
  • 最多可一次性向 5000 人发送自定义系统通知,如果批量提供的帐号中有未注册的帐号,会提示并返回给用户。

URL

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

请求参数

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

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

参数类型必须说明
fromAccid String 发送者的网易云信 IM 账号(accid),最长 32 个字符,必须保证该账号为应用内唯一
toAccids String 接收者列表, ["aaa","bbb"](JSONArray 对应的 accid,如果解析出错,会报 414 错误),最多 5000 人
attachString 自定义通知内容,开发者自行组装的字符串,建议 JSON 格式,最大长度 4096 字符
pushcontentString 推送文案,最长 500 个字符。更多推送配置说明请参见 推送配置参数详解若未设置 pushcontent 字段,则不会触发推送服务,同时也不会将 payload 字段内容下发给客户端。
payloadString 推送对应的 payload,必须是 JSON 格式,不能超过 2048 字符。更多说明请参见 推送 payload 配置
soundString 如果有指定推送,此属性指定为客户端本地的声音文件名,长度不要超过 30 个字符,如果不指定,会使用默认声音
saveint 1 表示只发在线,2 表示会存离线,其他会报 414 错误。默认会存离线
option String 发消息时特殊指定的行为选项,Json格式,可用于指定系统通知计入未读等特殊行为; option 中字段不填时表示默认值。
option示例:
{"badge":false,"needPushNick":false,"route":false}
字段说明:
  • badge:该系统通知是否需要计入到未读计数中,默认 true
  • needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认 false (注意默认值与sendMsg.action 接口的 needPushNick 有别)
  • route: 该消息是否需要抄送至您指定的应用服务器;默认true (需要应用开通消息抄送功能)
isForcePush boolean 发自定义系统通知时,是否强制推送,默认 false
forcePushContent String 发自定义系统通知时,强制推送文案,最长500个字符
env String 系统通知需要抄送到的环境的名称,对应您在云信控制台中配置的自定义抄送的环境名称(如下图),最大 32 个字符

自定义抄送环境.png

返回参数

参数
类型
说明
unregister String toAccids 列表中存在的未注册用户,示例:["123123","111422"],如果列表中不存在未注册用户则不返回本参数

示例

cURL请求示例

curlcurl -X POST -H "AppKey: go9dnk**lw0803mgq3" -H "Nonce: 4tggge**23t23t" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Content-Type: application/x-www-form-urlencoded" -d 'fromAccid=zhangsan&toAccids=["aaa","bbb"]&attach={"myattach":"test"}' 'https://api.netease.im/nimserver/msg/sendBatchAttachMsg.action'

请求成功返回示例

http 响应:json

json"Content-Type": "application/json; charset=utf-8"
{
  "code":200,
  "unregister":["123123","111422"] 
}

请求失败返回示例

"Content-Type": "application/json; charset=utf-8"
{
    "code":414
    "desc":""more than 5000 accids!""  // 接收者上限 5000
}

状态码

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

状态码 说明 处理建议
200 请求成功 -
403 请求失败原因可能为:
  • 应用专属集群检查不通过
  • 应用不可用
查看对应提示信息做出处理
414 参数错误 根据提示信息,检查传入参数的格式和限制条件
500 服务出错 -
此文档是否对你有帮助?
有帮助
去反馈
  • 功能描述
  • API 使用限制
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • cURL请求示例
  • 请求成功返回示例
  • 请求失败返回示例
  • 状态码