网易云信服务端支持发送单聊消息和群聊消息,消息类型包括文本消息、图片消息、语音消息、视频消息、地理位置消息、文件消息、提示消息和自定义消息。各类消息及相关功能的更多介绍,请参见消息概述。
本文介绍如何使用服务端 API 发送一条单聊/群聊消息和批量发送多条单聊消息,以及不同类型消息的格式示例。
单个应用默认最高调用频率:100 次/秒。如超限,将被屏蔽 10 秒,之后才可再次调用。
仅可传入 0 或 1,0:单聊消息,1:群消息(高级群),传入其他值都将报错(状态码:414)
消息的接收方,ope 为 0 时需填入接收消息用户的的云信 IM 账号(accid),ope 为 1 时需填入接收消息的群的 ID(即 tid),最大 32 字符
对于未开通安全通(即易盾反垃圾)功能的应用,自定义消息不会过内容审核。
自定义的反垃圾检测内容, JSON 格式,长度限制同 body 字段,不能超过 5000 字符,要求 antispamCustom 格式如下:
roam: 该消息是否需要漫游,默认 true(需要已为应用开通漫游消息功能)
push: 该消息是否需要 APNs 推送或 系统通知栏推送,默认 true
route: 该消息是否需要抄送至指定的应用服务器;默认 true (需要已为应用开通消息抄送功能);
needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认 true
persistent: 是否需要存离线消息,不设置该参数时默认 true。离线消息指不在线时其他人发来的消息。如果存离线,在用户下次登录时,IM 服务端会自动将离线期间暂存的离线消息自动下发到客户端SDK。单聊场景下发最近 30 天内的最新的 5000 条离线消息,且每个会线 条最新的离线消息;群聊场景下发最近 30 天内的离线消息,且每个群聊会线 条最新的离线消息IM电竞。
sessionUpdate: 是否将本消息更新到会话列表服务里本会话的最后一条消息(lastmsg),默认 true
推送文案,最长 500 个字符。option 选项中允许推送(push=true)后才能配置推送文案。更多说明请参见推送配置参数详解
推送对应的 payload,必须是 JSON 格式,不能超过 2000 字符。更多说明请参见推送配置参数详解
发送群消息时,强推(@操作)列表是否为群里除发送者外的所有有效成员,默认为 false
发送群消息时的强推(@操作)用户列表,格式为JSONArray,如[accid1,accid2]。若 forcepushall 为 true,则 forcepushlist 为除发送者外的所有有效群成员
发送群消息时,针对强推列表forcepushlist中的用户,强制推送的内容,最大 500 字符
单条消息(包括自定义消息)是否使用安全通(即易盾反垃圾),只能传 0,传其他值相当于不传
若不填此字段,即在默认情况下,若应用开通了易盾反垃圾功能,则使用易盾反垃圾来进行垃圾消息的判断
安全通业务 ID,可以指定当前消息过安全通某个检测配置,若不填则使用原来的检测配置
透传给易盾的反作弊检测参数,格式为 JSON,长度限制 1024 字符(具体请参见易盾的反垃圾防刷版专属字段)
反作弊相关的emailim资讯、phone、token、extensionIM电竞,抄送到yidunAntiCheating。其他用户增值信息,抄送到yidunAntiSpamExt
透传给易盾的反垃圾增强版的检测参数,格式为 JSON,长度限制 1024 字符(具体请参见易盾的反垃圾增强版用户可扩展字段)
反作弊相关的email、phone、IM电竞token、extension,抄送到 yidunAntiCheating。其他用户增值信息,抄送到 yidunAntiSpamExt。
发送方是否无感知。0-有感知,1-无感知。默认 0,若无感知,则消息发送者无该消息的多端、漫游、历史记录等
可设置是否在历史记录查询结果中包含无感知消息,具体参见单聊云端历史消息查询群聊云端历史消息查询。
接受方是否无感知。0-有感知,1-无感知。默认 0,若无感知,则消息接收者者无该消息的多端、漫游、历史记录等
可设置是否在历史记录查询结果中包含无感知消息,具体参见单聊云端历史消息查询群聊云端历史消息查询。
当前消息需要抄送到的环境的名称,对应您在云信控制台中配置的自定义抄送的环境名称(如下图),IM电竞最大 32 个字符
该接口在 HTTPS Body 中返回请求的状态码,以下仅列出与接口业务相关的状态码。完整状态码请参见状态码。
消息描述文本,只对文本消息和提示消息以外的消息类型有效,最大长度 500 字符。该描述信息可用于云端历史消息关键词检索
发消息时特殊指定的行为选项,JSON 格式,可用于指定消息的漫游,存云端历史,发送方多端同步,推送,消息抄送等特殊行为; option 中字段不填时表示默认值 option示例:
roam: 该消息是否需要漫游,默认 true(需要已为应用开通漫游消息功能)
push: 该消息是否需要 APNs 推送或 系统通知栏推送,默认 true
route: 该消息是否需要抄送至指定的应用服务器;默认 true (需要已为应用开通消息抄送功能);
needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认 true
persistent: 是否需要存离线消息,不设置该参数时默认 true
sessionUpdate: 是否将本消息更新到会话列表服务里本会话的最后一条消息(lastmsg),默认 true
推送对应的 payload,必须是 JSON 格式,最多 2000 字符,更多推送相关说明请参见推送配置参数详解
单条消息(包括自定义消息)是否使用安全通(即易盾反垃圾),只能传 0,传其他值相当于不传
若不填此字段,即在默认情况下,若应用开通了易盾反垃圾功能,则使用易盾反垃圾来进行垃圾消息的判断
安全通业务 ID,可以指定当前消息过安全通某个检测配置,若不填则使用原来的检测配置
透传给易盾的反作弊检测参数IM电竞,格式为 JSON,长度限制 1024 字符(具体请参见易盾的反垃圾防刷版专属字段)
反作弊相关的email、phone、token、extension,抄送到 yidunAntiCheating。其他用户增值信息,抄送到 yidunAntiSpamExt
透传给易盾的反垃圾增强版的检测参数,格式为 JSON,长度限制 1024 字符。(具体请参见易盾的反垃圾增强版用户可扩展字段)。
反作弊相关的email、phone、token、extension,抄送到 yidunAntiCheating。其他用户增值信息,抄送到 yidunAntiSpamExt
该接口在 HTTPS Body 中返回请求的状态码,以下仅列出与接口业务相关的状态码。完整状态码请参见状态码。