自定义房间信令

更新时间: 2024/09/02 14:03:55

本文主要介绍如何通过 NERoom SDK 实现自定义房间信令的收发,后续用户实现实时字幕展示。

自定义房间信令的收发涉及以下两个场景。

  • 给目标用户发送自定义信令。此时不会校验对应房间以及成员是否在房间,即可以给房间内/外的用户发送自定义信令。
  • 给目标房间发送自定义信令。房间内的所有人都会收到自定义信令。

发送自定义房间信令

可以通过客户端和 服务端 API 实现自定义房间信令的发送。

本文主要介绍如何通过客户端 API 发送自定义房间信令。

给目标用户发送自定义信令

调用 sendCustomMessage 方法给目标用户发送自定义消息,包括房间内/房间外消息。

java/**
 * 给[userUuid]发送自定义消息,包括房间内/房间外消息。
 * 如果需要发送聊天消息请使用[NERoomChatController]。
 * @param [roomUuid] 房间ID。如果为空,不会校验对应房间以及房间成员是否存在,此时可以给房间外的用户发送消息
 * @param [userUuid] 用户ID
 * @param [commandId] 消息类型,可用区间为 10000-19999
 * @param [data] 自定义的消息内容
 * @param [callback] 回调
 */
NERoomKit.getInstance().getService(NEMessageChannelService.class)
    .sendCustomMessage(String roomUuid, String userUuid, int commandId, String data,
NECallback<Unit> callback);

给目标房间发送自定义信令

调用 sendCustomMessageToRoom 方法目标房间发送自定义信令。

java/**
 * 向房间内发送自定义消息,如房间内信令。
 * 如果需要发送聊天消息请使用[NERoomChatController]。
 * @param [roomUuid] 房间ID
 * @param [commandId] 消息类型,可用区间为 10000-19999
 * @param [data] 自定义的消息内容
 * @param [callback] 回调
 */
NERoomKit.getInstance().getService(NEMessageChannelService.class)
    .sendCustomMessageToRoom(String roomUuid, int commandId, String data,
NECallback<Unit> callback)

接收自定义房间信令

  1. 调用如下接口添加自定义房间信令接收的监听。

    javaNERoomKit.getInstance().getService(NEMessageChannelService.class)
        .addMessageChannelListener(messageListener);
    
  2. 调用如下接口实现自定义房间信令的接收,并处理接收到的自定义房间信令。

    javaprivate NEMessageChannelListener messageListener =
        new NEMessageChannelListener() {
          @Override
          public void onCustomMessageReceived(@NotNull NERoomCustomMessage message) {
            ALog.i(TAG, "onCustomMessageReceived:" + message);
          }
        };
    

相关API文档

方法 功能描述
addMessageChannelListener 添加消息事件监听。
NEMessageChannelListener 消息监听器
onCustomMessageReceived 接收自定义房间信令消息
sendCustomMessage 给目标用户发送自定义消息,包括房间内/房间外消息
sendCustomMessageToRoom 给目标房间发送自定义信令
此文档是否对你有帮助?
有帮助
去反馈
  • 发送自定义房间信令
  • 接收自定义房间信令
  • 相关API文档