为增添实时音视频互动的趣味性,你可以结合云信令(RTM)SDK 实现虚拟礼物发送功能。观众可以向主播发送虚拟礼物,且直播间中所有用户都可以看到礼物。
下文展示如何通过 RTM SDK 实现礼物发送功能。使用前,请确保你的项目中已经集成了 RTM SDK。具体的集成文档,请参考 RTM SDK 快速开始。
使用 RTM SDK 发送礼物的基本 API 时序图如下:
具体步骤如下:
sendMessageToPeer
向服务端发送点对点消息,标记礼物请求和类型。sendMessageToPeer
向客户端发送点对点消息,标记礼物类型。sendMessage
发送频道消息实现礼物发送功能。客户端根据接收到的频道消息渲染礼物画面。onSuccess
回调后,调用 sendMessageToPeer
通知服务端频道消息已成功发送。为了保证频道消息可以成功发送,你可以增加代码逻辑,使服务端在未及时收到 onMessageReceived
回调时提醒客户端重新发送频道消息。本文提及的方法名均为 Java 语言。其他语言对应的方法名如下表所示:
Java | C++ | Objective-C | JavaScript |
---|---|---|---|
sendMessageToPeer |
sendMessageToPeer |
sendMessage |
sendMessageToPeer |
sendMessage |
sendMessage |
sendMessage |
sendMessage |
onSuccess |
onSendMessageResult |
AgoraRtmSendPeerMessageBlock |
PeerMessageSendResult |
onMessageReceived |
onMessageReceivedFromPeer |
messageReceived |
MessageFromPeer |