浏览 SDKs · React Native
平台
SDKsReact Native

发送已上传的媒体消息

OpenIM React Native SDK 发送已上传的媒体消息。

复制

用于发送已经包含公网可访问 URL 的图片、音频、视频或文件等媒体消息。当应用层拥有自己独立的文件存储或已提前完成媒体文件上传时,调用此方法可直接将带有远端地址的消息发送至单聊或群聊会话,跳过 SDK 内部的文件上传逻辑。

const sentMessage = await OpenIMSDK.sendMessageNotOss({
  recvID: receiverUserID,
  groupID: '',
  message: uploadedMessage,
});

参数说明

参数类型必填含义
recvIDstring条件必填单聊接收方的用户 ID;群聊时传入空字符串 ""。
groupIDstring条件必填目标群组 ID;单聊时传入空字符串 ""。
messageMessageItem是通过 URL 型消息创建接口构造的待发送消息对象。
offlinePushInfoOfflinePush否自定义离线推送标题、内容与透传参数配置。
isOnlineOnlyboolean否是否仅向当前在线客户端投递;为 true 时不计入服务端离线历史存储。

返回结果

调用成功后返回发送成功的 MessageItem。返回对象包含服务端确认的 serverMsgID、sendTime 以及更新后的消息状态 status。

状态变更与三阶段划分

  1. Promise 成功:代表携带远端媒体 URL 的消息已成功入库并投递至服务端队列。
  2. 事件到达:由于不需要客户端上传媒体文件,该操作不会触发媒体上传进度事件;消息送达时对端将收到新消息通知。
  3. 重新查询校准:弱网断连情况下,可通过加载历史消息重新校准会话状态。

客户端在本地列表维护消息状态时,应以 clientMsgID 为合并标识更新消息状态。对于本地路径型且需要由 SDK 负责上传资源的媒体文件,请使用发送消息。