Communications platform as a service (CPaaS) je cloudový model poskytování komunikační backendové platformy pro využití real-time videa, hlasu nebo textu. Pomocí CPaaS mohou vývojáři tvořit nebo vkládat funkcionalitu do vlastních aplikací a ovládat ji přes API. Do skupiny firem nabízející takovou službu patří nově i Microsoft s Azure Communication Services.
Azure Comunication Services
Azure Communication Services (ACS) vám umožní snadno přidat hlasovou, video a textovou komunikaci v reálném čase do vašich aplikací využitím připravených SDK a API. Aby byl přehled úplný, tak do celé skupiny patří také SMS služby a PSTN telefonie, tyto dvě však nyní, kdy je služba v Public Preview zatím jen pro US.
Podstatné je, že Azure Communication Services není vázaná na využití Microsoft identit a tak máte úplnou kontrolu nad tím, jak jsou koncoví uživatelé identifikováni a ověřeni. Můžete připojit prakticky kohokoli, lidi, roboty, jakékoli zařízení.
Jakékoli aplikace pro jakoukoli platformu a propojení na Microsoft Teams
Každá aplikace kterou budete tvořit, bude obsahovat klientskou a serverovou část. Zde jsou příklady. Backendovou část ACS a infrastrukturu samozřejmě nevyvíjel Microsoft od začátku ale využil zkušenosti které má s Microsoft Teams. API a SDK na Githubu pro vývojáře jsou ale připraveny tak, aby byli použitelné prakticky v jakékoli klientské UI architektuře, na webu, PC, Macu, telefonu, … Přesto, že z vnějšího pohledu nemá ACS s Microsoft Teams nic společného, již existuje velmi úzké propojení s Microsoft Teams pomocí Graph API.
Kde a jak začít
Asi nejlepší způsob jak se s Azure Communication Services seznámit je:
- Přečíst si informace na hlavní produktové stránce
- Seznámit se s dostupnou dokumentací na Microsoft docs
- Vyzkoušet si hotové sample demo aplikace, které vytvoří funkční prostředí
Vyzkoušejte si svoji vlastní aplikaci
Pokud si chcete bez jakéhokoli velkého studování vyzkoušet Azure Comminication Services sami a živě, existuje několik hotových ukázkových aplikací, různé funkčnosti, platformy, programovací jazyky,…
Doporučuji si nejprve zkusit webovou verzi Group Calling Hero Sample, aplikace která udělá příklad video chatu. Na Githubu zde jsou její zdrojáky a také tam najdete „kouzelné tlačítko Deploy To Azure“ s json předpisem co se má stát.
Tímto si vygenerujete do vaší Azure Subskripce (klidně i trialu a free verze) pomocí připraveného template hotový sample projekt s webovým UI, který můžete začít používat. Template připraví a rozeběhne:
- Službu Azure Communication Services
- Webovou backendovou část, (pozor defaultně free F1 s časovým omezením) která komunikuje s ACS a vystrkuje i veřejnou klientskou UI stránku pro přihlašování a komunikaci. Využívá se React/Redux, .NET Core a C# s propojením na ACS.
U mne v Azure Subskripci to potom vypadá takto:
Appservice mi vysrčil veřejnou webovou adresu tohoto sample sem:
https://buricomservis.azurewebsites.net/ … asi si můžete zkusit, ono mi to z mého interní Azure moc nesežere a časem to asi stejně vypnu.
Vygeneruje to unikátní komunikační kanál a čeká na připojení uživatele:
… po „Start a call“ se ukáže uvodní nastavení pro tuto session :
A konečně pak kýžená webová aplikace, kam můžete zvát další uživatele pomocí linku
Cena a Dostupnost
V současné době je ACS služba v Public Preview fázi, a neplatí se za ní. Myslím si, že finální ceny budou přibližně srovnatelné s ostatními poskytovateli CPaaS. Uživatelé licencováni Microsoft Teams budou mít komunikaci zvýhodněnu nebo zdarma. Na ACS pricing stránce se časem objeví více. Také si můžete ověřit za co se bude platit a za co nikoli.