@@ -16,9 +16,10 @@ zone_pivot_groups: programming-languages-set-functions-lang-workers
16
16
Use the * SignalR* output binding to send one or more messages using Azure SignalR Service. You can broadcast a message to:
17
17
18
18
- All connected clients
19
+ - Connected clients in a specified group
19
20
- Connected clients authenticated to a specific user
20
21
21
- The output binding also allows you to manage groups.
22
+ The output binding also allows you to manage groups, such as adding a client or user to a group, removing a client or user from a group .
22
23
23
24
For information on setup and configuration details, see the [ overview] ( functions-bindings-signalr-service.md ) .
24
25
@@ -44,9 +45,9 @@ The following example shows a function that sends a message using the output bin
44
45
[FunctionName (" SendMessage" )]
45
46
public static Task SendMessage (
46
47
[HttpTrigger (AuthorizationLevel .Anonymous , " post" )]object message ,
47
- [SignalR (HubName = " chat " )]IAsyncCollector < SignalRMessage > signalRMessages )
48
+ [SignalR (HubName = " hubName1 " )]IAsyncCollector < SignalRMessage > signalROutput )
48
49
{
49
- return signalRMessages .AddAsync (
50
+ return signalROutput .AddAsync (
50
51
new SignalRMessage
51
52
{
52
53
Target = " newMessage" ,
@@ -99,7 +100,7 @@ Here's the JavaScript code:
99
100
100
101
``` javascript
101
102
module .exports = async function (context , req ) {
102
- context .bindings .signalRMessages = [{
103
+ context .bindings .signalROutput = [{
103
104
" target" : " newMessage" ,
104
105
" arguments" : [ req .body ]
105
106
}];
@@ -116,9 +117,9 @@ Complete PowerShell examples are pending.
116
117
Here's the Python code:
117
118
118
119
``` python
119
- def main (req : func.HttpRequest, outMessage : func.Out[str ]) -> func.HttpResponse:
120
+ def main (req : func.HttpRequest, signalROutput : func.Out[str ]) -> func.HttpResponse:
120
121
message = req.get_json()
121
- outMessage .set(json.dumps({
122
+ signalROutput .set(json.dumps({
122
123
' target' : ' newMessage' ,
123
124
' arguments' : [ message ]
124
125
}))
@@ -129,7 +130,7 @@ def main(req: func.HttpRequest, outMessage: func.Out[str]) -> func.HttpResponse:
129
130
130
131
``` java
131
132
@FunctionName (" sendMessage" )
132
- @SignalROutput (name = " $return" , hubName = " chat " )
133
+ @SignalROutput (name = " $return" , HubName = " hubName1 " )
133
134
public SignalRMessage sendMessage(
134
135
@HttpTrigger (
135
136
name = " req" ,
@@ -161,9 +162,9 @@ You can send a message only to connections that have been authenticated to a use
161
162
[FunctionName (" SendMessage" )]
162
163
public static Task SendMessage (
163
164
[HttpTrigger (AuthorizationLevel .Anonymous , " post" )]object message ,
164
- [SignalR (HubName = " chat " )]IAsyncCollector < SignalRMessage > signalRMessages )
165
+ [SignalR (HubName = " hubName1 " )]IAsyncCollector < SignalRMessage > signalROutput )
165
166
{
166
- return signalRMessages .AddAsync (
167
+ return signalROutput .AddAsync (
167
168
new SignalRMessage
168
169
{
169
170
// the message will only be sent to this user ID
@@ -192,9 +193,9 @@ Complete PowerShell examples are pending.
192
193
Here's the Python code:
193
194
194
195
``` python
195
- def main (req : func.HttpRequest, outMessages : func.Out[str ]) -> func.HttpResponse:
196
+ def main (req : func.HttpRequest, signalROutput : func.Out[str ]) -> func.HttpResponse:
196
197
message = req.get_json()
197
- outMessage .set(json.dumps({
198
+ signalROutput .set(json.dumps({
198
199
# message will only be sent to this user ID
199
200
' userId' : ' userId1' ,
200
201
' target' : ' newMessage' ,
@@ -207,7 +208,7 @@ def main(req: func.HttpRequest, outMessages: func.Out[str]) -> func.HttpResponse
207
208
208
209
``` java
209
210
@FunctionName (" sendMessage" )
210
- @SignalROutput (name = " $return" , hubName = " chat " )
211
+ @SignalROutput (name = " $return" , HubName = " hubName1 " )
211
212
public SignalRMessage sendMessage(
212
213
@HttpTrigger (
213
214
name = " req" ,
@@ -260,7 +261,7 @@ Here's the JavaScript code:
260
261
261
262
``` javascript
262
263
module .exports = async function (context , req ) {
263
- context .bindings .signalRMessages = [{
264
+ context .bindings .signalROutput = [{
264
265
" target" : " newMessage" ,
265
266
" arguments" : [ req .body ],
266
267
" userId" : " userId1" ,
@@ -286,9 +287,9 @@ You can send a message only to connections that have been added to a group by se
286
287
[FunctionName (" SendMessage" )]
287
288
public static Task SendMessage (
288
289
[HttpTrigger (AuthorizationLevel .Anonymous , " post" )]object message ,
289
- [SignalR (HubName = " chat " )]IAsyncCollector < SignalRMessage > signalRMessages )
290
+ [SignalR (HubName = " hubName1 " )]IAsyncCollector < SignalRMessage > signalROutput )
290
291
{
291
- return signalRMessages .AddAsync (
292
+ return signalROutput .AddAsync (
292
293
new SignalRMessage
293
294
{
294
295
// the message will be sent to the group with this name
@@ -342,7 +343,7 @@ Here's the JavaScript code:
342
343
343
344
``` javascript
344
345
module .exports = async function (context , req ) {
345
- context .bindings .signalRMessages = [{
346
+ context .bindings .signalROutput = [{
346
347
" target" : " newMessage" ,
347
348
" arguments" : [ req .body ],
348
349
" groupName" : " myGroup" ,
@@ -360,9 +361,9 @@ Complete PowerShell examples are pending.
360
361
Here's the Python code:
361
362
362
363
``` python
363
- def main (req : func.HttpRequest, outMessage : func.Out[str ]) -> func.HttpResponse:
364
+ def main (req : func.HttpRequest, signalROutput : func.Out[str ]) -> func.HttpResponse:
364
365
message = req.get_json()
365
- outMessage .set(json.dumps({
366
+ signalROutput .set(json.dumps({
366
367
# message will only be sent to this group
367
368
' groupName' : ' myGroup' ,
368
369
' target' : ' newMessage' ,
@@ -376,7 +377,7 @@ def main(req: func.HttpRequest, outMessage: func.Out[str]) -> func.HttpResponse:
376
377
377
378
``` java
378
379
@FunctionName (" sendMessage" )
379
- @SignalROutput (name = " $return" , hubName = " chat " )
380
+ @SignalROutput (name = " $return" , HubName = " hubName1 " )
380
381
public SignalRMessage sendMessage(
381
382
@HttpTrigger (
382
383
name = " req" ,
@@ -414,7 +415,7 @@ Specify `GroupAction` to add or remove a member. The following example adds a us
414
415
public static Task AddToGroup (
415
416
[HttpTrigger (AuthorizationLevel .Anonymous , " post" )]HttpRequest req ,
416
417
ClaimsPrincipal claimsPrincipal ,
417
- [SignalR (HubName = " chat " )]
418
+ [SignalR (HubName = " hubName1 " )]
418
419
IAsyncCollector < SignalRGroupAction > signalRGroupActions )
419
420
{
420
421
var userIdClaim = claimsPrincipal .FindFirst (ClaimTypes .NameIdentifier );
@@ -523,8 +524,8 @@ Complete PowerShell examples are pending.
523
524
The following example adds a user to a group.
524
525
525
526
``` python
526
- def main (req : func.HttpRequest, action : func.Out[str ]) -> func.HttpResponse:
527
- action .set(json.dumps({
527
+ def main (req : func.HttpRequest, signalROutput : func.Out[str ]) -> func.HttpResponse:
528
+ signalROutput .set(json.dumps({
528
529
' userId' : ' userId1' ,
529
530
' groupName' : ' myGroup' ,
530
531
' action' : ' add'
@@ -534,8 +535,8 @@ def main(req: func.HttpRequest, action: func.Out[str]) -> func.HttpResponse:
534
535
The following example removes a user from a group.
535
536
536
537
``` python
537
- def main (req : func.HttpRequest, action : func.Out[str ]) -> func.HttpResponse:
538
- action .set(json.dumps({
538
+ def main (req : func.HttpRequest, signalROutput : func.Out[str ]) -> func.HttpResponse:
539
+ signalROutput .set(json.dumps({
539
540
' userId' : ' userId1' ,
540
541
' groupName' : ' myGroup' ,
541
542
' action' : ' remove'
@@ -549,7 +550,7 @@ The following example adds a user to a group.
549
550
550
551
``` java
551
552
@FunctionName (" addToGroup" )
552
- @SignalROutput (name = " $return" , hubName = " chat " )
553
+ @SignalROutput (name = " $return" , HubName = " hubName1 " )
553
554
public SignalRGroupAction addToGroup(
554
555
@HttpTrigger (
555
556
name = " req" ,
@@ -569,7 +570,7 @@ The following example removes a user from a group.
569
570
570
571
``` java
571
572
@FunctionName (" removeFromGroup" )
572
- @SignalROutput (name = " $return" , hubName = " chat " )
573
+ @SignalROutput (name = " $return" , HubName = " hubName1 " )
573
574
public SignalRGroupAction removeFromGroup(
574
575
@HttpTrigger (
575
576
name = " req" ,
0 commit comments