我目前正在使用stream.io,我想为后端发送系统消息。
当我运行下面的代码时,我得到这个错误消息“oth secret and user tokens are not set. Either client.connectUser wasn't called or client.disconnect was called”
const streamChannel = streamClient.getChannelById('livestream', roomId, {});
await streamChannel.sendMessage({
text: `X joined the room`
});
但是当我尝试.connect User时,我得到这个错误“请不要使用connectUser服务器端。connectUser影响MAU和并发连接使用,从而影响您的账单。”
向房间发送系统消息的正确方法是什么?
编辑:获取我仍然得到这个错误. Call connectUser or connectAnonymousUser before creating a channel
错误
const serverClient = StreamChat.getInstance('key', 'key');
const streamChannel = serverClient.channel('messaging', 'roomId');
const {message} = await streamChannel.sendMessage({
user_id: "system_user",
text: `${user?.username} joined the room`,
type: "system"
});
1条答案
按热度按时间vaqhlq811#
这里发生了两件事:
1.您没有使用正确的连接代码。您需要使用服务器端连接(参见文档),而不是客户端连接(如此处所述)。
这是一个如何使用服务器端代码的示例:
为了发送消息,你可以这样做:
1.第二件事是,我们更新了发送系统消息的方式。这是全新的,目前正在部署中,所以你可能需要等待很短的时间才能使用它(如果它还不适合你,请告诉我),但之后你可以像这样发送系统消息(基于前面的代码片段):
希望这对你有帮助,让我知道如果有更多的问题!