【发布时间】:2018-11-05 14:06:59
【问题描述】:
查看 SignalR 绑定的 docs 以向指定用户发送消息,您在消息中包含 UserId 属性 -
[FunctionName("SendMessage")]
public static Task SendMessage(
[HttpTrigger(AuthorizationLevel.Anonymous, "post")]object message,
[SignalR(HubName = "chat")]IAsyncCollector<SignalRMessage> signalRMessages)
{
return signalRMessages.AddAsync(
new SignalRMessage
{
// the message will only be sent to these user IDs
UserId = "userId1",
Target = "newMessage",
Arguments = new [] { message }
});
}
此示例直接取自文档,但注释暗示您向 多个 用户 ID 发送消息,即使该属性是字符串而不是数组。
如何指定多个用户? (例如,如果他们一起在私人聊天频道中)或者是评论措辞中的错误,您需要为每个用户发送消息?
对于其他版本的 SignalR,我会将它们放在一个组中,但函数不存在对此的绑定。
【问题讨论】:
-
你的意思是这段文字,它说的是连接? “通过设置 SignalR 消息的 UserId 属性,您只能将消息发送到已通过用户身份验证的连接。”
-
@anthony-chu 您能分享您对此的见解吗?谢谢。
-
@KarishmaTiwari-MSFT 与其他 SignalR 库一起,可以将经过身份验证的用户添加到通讯组,然后使用组名调用 signalr,它将为您处理所有这些客户端的广播。
标签: azure azure-functions signalr-service