Build communication experiences with better control and structure
Published Oct 17 2022 04:53 PM 3,658 Views

This week we are releasing a public preview of Virtual Rooms in Azure Communication Services. In this blog post, we will discuss Rooms’ capabilities, target scenarios, and will set you up with next steps to try Virtual Rooms. Using Virtual Rooms, you can now build rich communication experiences with a higher degree of control and structure. Rooms primarily focus on two scenarios:


  1. Virtual appointments, such as a virtual visit to your doctor or financial advisor.
  2. Virtual events such as webinars and all-hands meetings.


What is a Virtual Room?

A Virtual Room is a container that manages activity between Azure Communication Services end-users and offers application developers better control over who can join a call, when they meet and how they collaborate:


  1. Control who can join the conversation. Virtual rooms can be configured to allow only invited users to join the conversation. This roster management enables secure private communication, appropriate for a call between a patient and their doctor. Alternatively, a virtual room could be open and allow any Azure Communication Services identity to join.
  2. Schedule meeting times. Virtual rooms become available at specific points in time and have a configurable duration. Controlling room availability allows Azure Communication Services to serve a calendar function, storing the future timing of appointments and webinars. And Room’s enforcement of these time windows helps you deliver graceful application behavior, for example informing an end-user why they can’t join an appointment 3 hours early.
  3. Assign roles and permissions. Virtual rooms allow application developers to assign a role to each participant. Roles are pre-defined by a Virtual Rooms API and limit what end-users can do in a virtual room's associated video call. For example, you can ensure only presenters speak and share content. Any scenario where end-users need to be protected from each other, like virtual classrooms, virtual courtrooms, or large corporate meetings, can benefit from assigned roles and permissions.

Virtual Rooms can also facilitate the capabilities listed above through its server SDK, available for .NET, Java, Python or JavaScript. Client-side operations such as joining a VoIP call are carried out from the Calling JavaScript SDK for web browsers or the native Mobile Calling SDKs for iOS and Android.



When to use Virtual Rooms

Virtual Rooms are ideal for applications that make use of any of the following behaviors:


  • Strict control over which participants are allowed to join calls,
  • Scheduling/coordinates that are enabled and then expire at a specified time and date,
  • Protecting end-users from each other by limiting their abilities in a call using roles and permissions.

How to use Virtual Rooms

Follow the steps below to create a room and join a virtual room call:



The quick start documentation will help you get started with Azure Communication Services Virtual Rooms and set up the server-side component. GitHub samples are available for .NET, Java, Python or JavaScript.  Joining a Virtual Room-associated video call using the Calling SDK is straightforward, please check out the Virtual Rooms call quick start guide.


If you try out Virtual Rooms, please comment on this blog directly or ask questions on Microsoft Q&A!


Learn more about Virtual Rooms

Version history
Last update:
‎Jul 14 2023 12:03 PM
Updated by: