SOLVED

Send a message to all users (like a broadcast)

Brass Contributor

I would like to inform our users about very urgent things (ie please disconnect from the system), and the best way to do that would be to send a chat message to all of them maybe via powershell or graph api?

 

Is there currently a way to do that?

I know I could create an ORG wide group and post in there...

 

20 Replies
Hi @Thomas_Steibl

There are multiple uservoices here

https://microsoftteams.uservoice.com/forums/555103-public/suggestions/37556605-org-wide-broadcast-me...

No native functionality, however as said you can create an org wide team and then tag the team which would notify everyone. An alternative would be an org wide group chat however you would have issues moderating this

Hope that answers your question

Best, Chris
What Chris said, but group chat has a limit of 100 participants.

Also, if I remember correctly MS released a custom app on GitHub that could do this!
Can’t remember the name but go search for it on Goo...Bing!
best response confirmed by Thomas_Steibl (Brass Contributor)
Solution
You could do it with this given all users install the app

https://github.com/OfficeDev/microsoft-teams-company-communicator-app

Hope that answers your question!

Best, Chris

Just push the app via app policies and you're golden.

@Christopher Hoard - has anyone used Company Communicator to broadcast to 50,000 users in 13 teams?  Would be interested to hear any real life feedback....

I know @Vesa Nopanen is a big proponent of company communicator. I am sure that he will be able to give you some great feedback on this

Best, Chris
It sounds like that you would be sending messages to 13 teams using Company Communicator? That would be just 13 messages which I don't see as a problem.

When sending individual chat messages to 50k users with Company Communicator that will be generating a lots of API traffic. Unfortunately I don't have experience with that large amount of users but I have been thinking/planning how that could be done (when need arises). Company Communicator should be able to make it, but it may take some time due to throttling. The good thing is that it does give you a short report how it goes.

My advice:
- do messages first to teams so they will reach out lots of users FAST (install Company Communicator to those teams so you can target them)
- do a real live test with sending individual messages to all users and gain first hand experience. Use a real message but don't use a critical one. Perhaps letting users know how and from where to gain latest info

If you want to see how Company Communicator works check my webinar recording - I have a section of Company Communicator and there are also demos how to do it with Power Platform: https://youtu.be/0SnQKMHio-A

None of methods is instant and each has limits. Pushing messages to channels is the fastest way to spread info (with team/channel tagging).

@Thomas_Steibl  Yes it's possible, You may create an Incoming webhook available in the App store. The Webhook will give a unique URL to you. You can post the message using that URL. You may use Powershell, Postman or any custom program to send messages to all users.

Please note - This will be bind to any specific Channel. You may create one Team which contain all the user whom you would like to serve the message.

Let me know if you would like to know practically how to achieve this.

@Christopher Hoard 

 

 I wanted to take advantage of the urgent message option 
support.microsoft.com/en-gb/office/mark-a-message-as-important-or-urgent-in-teams-ea99d5b6-1317-4550-8d75-86ff14cd4462?ui=en-us&rs=en-gb&ad=gb

To make sure my message is read, but could not see this option in a channel - only in group chat.

Is this by design or some configuration?

@Christopher Hoard 

 

Also is there a way to add everyone group as a group chat member instead of selecting one by one users?

Urgent messages are only available in chat by design.
You can use tags to start a group chat. all users with that tag will be included. The tags needs to be set up manually though and is per team basis

@adam deltinger 

 

its not currently built into Teams as has been discussed in this thread.

However you can create this with not too much effort using PowerAutomate and optionally a PowerApps as an input form without a need for additional licenses.

 

the flow can 

  1. get the members of any group in Azure AD 
  2. filter the list to get rid of non-enabled users and guest users 
  3. Apply to each, for this  use Settings > Concurrency = On ,
    Set to 20 .. 50 to send messages in parallel
  4. Post a message as the Flow bot to a user 
    here you can set isAlert=true, and a Summary with the alert that is shown in the toast

By using the parallel / concurrent option , the time needed to send individual messages to a many different users is reduced by a factor of 20..50.  each msg post seems to take in the order of 1 second.
Estimated throughput : 
1000 users / 50 = 20 seconds  or about 3.000 users / minute 

Note that while this works well up to a couple of thousand users, I do not think you can just scale this to 100.000 users as other other restrictions will apply , such as the below.
for that scenario some additional logic will be required 


Limits 

Apply to each items - Office 365 and Free licenses 5,000

https://docs.microsoft.com/en-us/power-automate/limits-and-config

Teams request type Limit per app per tenant
Any Graph API calls for Microsoft Teams 15000 requests every 10 seconds

https://docs.microsoft.com/en-us/graph/throttling

and in the licensing guide : 
https://docs.microsoft.com/en-us/power-platform/admin/powerapps-flow-licensing-faq

PowerApps for O365  daily - per license 
Per license capacity Daily API Requests 2.000

 

you can build on this concept by adding logging of success / failure to notify, and ask for acknowledgement and store that in a log (Excel / SPO List) or database of some kind.

 

see attached for a quick Proof of Concept 

@NadirRiyani 

 

Hello Nadir! Can I use the webhook to deliver the same message to multiple people at the same time without creating a group? As I am not planning to purchase Company Communicator, how should I approach building something like it as I am quite new to Microsoft Power Apps and Automate? Hopefully, this thread is still active haha.

@Thomas_Steibl Another option is InformaCast Fusion. You can find the app here:

https://appsource.microsoft.com/en-us/product/office/WA200000080?tab=Overview

 

InformaCast has an integration with Microsoft Teams and is built for both small and enterprise deployments. The best part is it can be deployed very quickly with little effort. Here's a link to an overview: https://www.singlewire.com/blog/emergency-notification/add-microsoft-teams

 

You'll need licensing so it does have a small cost associated with it. That said, it's the easiest and most scalable way of sending the broadcast to all Teams Users. The cool part here is when you license the Teams User you also license the user's desk phone, PC, and mobile device. So you can reach all of your users across all those devices simultaneously if you wanted. Additional functionality is available that allows for things like full-screen takeover on the PC, intrusive audio via their desk phone, SMS, Push, and more. You can of course trigger these notifications right from Microsoft Teams. It's a really cool app. I recommend checking it out. 

Are you talking about Kaizala Mobile App? @adam deltinger 

@Jos Verlinde Why would you use this method instead of just sending to the distribution group in email?  I need to send a notification to all staff and would like to send like a chat teams only allows for 100 members at a time.  Yammer would work but I don't want them to be able to comment back... just a notification?  You would think that Azure would allow you to send a notification to all users?  Are you aware of anything like this?

@TodayDee72 as for the why you can ask the OP.  A Teams is one form of communication but certainly not the only one. same for e-mail , Yammer , or PA systems. each have their own primary use cases. (most, including e-mail, allow for replies though as communication tends to be two-way in most cases. if you do not desire that its quite normal to make it clear that replies will be ignored ) 
Sending a Notification implies that there is a way (and a value and a habit) for the recipients to read that. You can use an app on azure ( or any cloud) send something, but unless that notification arrives on an app or device that I use regularly, it will be pointless. The premise was that all users are using Teams on PC and/or mobile. that allows you to reach all with a single app tool, without needing to install a seperate single-use app on each device.

1 best response

Accepted Solutions
best response confirmed by Thomas_Steibl (Brass Contributor)
Solution
You could do it with this given all users install the app

https://github.com/OfficeDev/microsoft-teams-company-communicator-app

Hope that answers your question!

Best, Chris

View solution in original post