Author Archives: Deep Kumar

Connect to Microsoft Graph using Client Secret

This is most common method used to avoid interactive login & when you want to run an script in unattended mode. Let’s start by Registering an application in Azure. Below are the steps to register an application in Azure AD: … Continue reading

Posted in MS Teams, Powershell | Leave a comment

M365 Licensing

In this post we will show you how to use Microsoft Graph PowerShell to view and manage Microsoft 365 Licenses. Let’s say you decided to start using M365 services. You created a new M365 Tenant & purchased required M365 product … Continue reading

Posted in MS Teams | Leave a comment

VS Code Autocomplete for Azure Terraform

Azure Terraform extension for vscode will allow autocomplete. But in case we want the resource to be pouplated with required attributes then we need to add below line of code onto settings.json file. Open Visual Studio Code. Then open settings.json … Continue reading

Posted in Azure | Leave a comment

Azure AD Roles vs Azure RBAC Roles

Inside Microsoft Azure environment, we see two kind of permission granting mechanism – Azure roles and Azure AD roles. They play their own role as per your requirement as M365 administrator OR as as a Azure Tenant Administrator. We will … Continue reading

Posted in Azure | Leave a comment

Azure Identity Objects aka Security Principal’s

A security principal represents a user, group, or service principal that can be used to assign permission on various Azure Resources. Users (User Principal): These are basically our normal users with UPN and password. We create a user object in … Continue reading

Posted in Azure | Leave a comment

Azure Terraform Module

A Terraform module is a container for creating azure resources with modular approach. Every Terraform configuration has at least a root module & it consists of the resources defined in the terraform .tf files in the main working directory.

Posted in Azure | Leave a comment

Demystifying Teams Call flow using Wireshark

In this post we will try to analyze Teams call flow using Wireshark tool. For this demonstration we will take 2 users (User1 & User2). User1 will try to establish call with User2 and based on their location (direct connection, … Continue reading

Posted in MS Teams | 1 Comment

SDP

SDP (Session Description Protocol) is as good as saying like how I am reachable & what all we can use to communicate with each other. To compare it with real life analogy, let’s say someone want to reach us. We … Continue reading

Posted in MS Teams | Leave a comment

M365 Teams Calling Components for Direct Routing

Call Controller (CC)– This component take care of various call related operation in O365, this includes Reverse number lookup, call progress, routing calls to/from PSTN.  Sends a roster of connected callers & if required then ring multiple endpoints.  Coordinates Call Me … Continue reading

Posted in MS Teams | 1 Comment

VoIP & MS Teams

VoIP is a way of transferring audio and even video information all-across the Internet. But sending this type of real time data over the internet isn’t as simple as attaching a file to your email or sharing it via OneDrive etc… … Continue reading

Posted in MS Teams | 1 Comment

Azure Resource group using Terraform

Any resource we create in Azure need to be part of Resource group. So we will write-up a very basic code to create a Azure Resource group. Below is our sample code to create the resource group “Demo-RG” in “eastus” … Continue reading

Posted in Azure | Leave a comment

MS Teams Direct Routing call flow with LBR config

In a previous blog post we walked through the steps to configure Microsoft Teams environment for Location Based routing for PSTN calling. In this blog post, we will try to understand the call flow in LBR Setup. Below flow-chart depict the call … Continue reading

Posted in MS Teams | Leave a comment

AudioCodes SBC config for MS Teams Direct Routing

Direct routing is a feature where you can bring your own telecom carrier for making PSTN call from Teams client. Logically most of the certified SBC follow same logic. But the option & terminology is slightly different. Audiocodes SBC are … Continue reading

Posted in MS Teams | Leave a comment

Call routing decision when Direct Routing/ Operator Connect/ MS calling plan co-exist

Often we come across scenario where we have direct routing setup for few users, additionally we have also bought few number with MS calling plans. Now we also have another option of operator connect to buy calling plans from MS … Continue reading

Posted in MS Teams | Leave a comment

Use “Enter” key to copy data in Windows Terminal

While working at PowerShell , we have the option of copying text by selecting it and pressing Enter key. Later, we can paste the text whenever required by right-clicking anywhere inside the window. Unfortunately Windows Terminal does not allow us … Continue reading

Posted in Powershell | Leave a comment

Voice Protocols & Codec

Signaling Description: These protocols are responsible for the establishment, preservation and tearing down of call sessions. They are also responsible for the negotiation of session parameters such as codecs, tones, bandwidth capabilities, etc. Media Description: A protocol is designed to … Continue reading

Posted in MS Teams | Leave a comment

E911 Call flow in Microsoft Teams

Very often we come across scenario where we need to configure E911 for Teams. Especially in US, after introduction of two laws (Ray/Baum act & Kari law). It is very important to understand the E911 call flow for its proper … Continue reading

Posted in MS Teams | Leave a comment

Porting a MS calling Plan user number to Direct Routing

One among the interesting scenario is port-out number from MS calling to Direct routing. Scenario will be where currently you are using MS calling plan. You have purchased Domestic and International calling plan from Microsoft. So today your users are … Continue reading

Posted in MS Teams | Leave a comment

SIP Protocol

SIP (Session Initiation Protocol) is the protocol used for signaling in VOIP communication. When 2 sip User agent want to communicate with each other, first they need to initiate the session. SIP is the protocol which will help in establishing … Continue reading

Posted in MS Teams | 1 Comment

Microsoft Teams Common Area Phone

Organization are migrating from legacy phone system to Microsoft Teams by adopting Teams Phone System as a replacement for their traditional PBX systems. There are general scenario where organizations are having common area phones such as at reception. In these … Continue reading

Posted in MS Teams | 2 Comments

Media bypass in Microsoft Teams

Microsoft Teams leverage Media Bypass benefit with Direct Routing configuration. This is basically to shorten the path between Teams client and SBC/PSTN gateway. Normally, voice traffic or media traffic will travel from the Teams client to Media Relay servers in … Continue reading

Posted in MS Teams | Leave a comment

Dial Plan in Microsoft Teams

Dial Plan are set of rules which translate the phone number dialed by user to E.164 format. E.164 is the international telephone numbering plan that ensures each device on the PSTN has globally unique number. This number allows phone calls … Continue reading

Posted in MS Teams | Leave a comment

Location Based Routing in Microsoft Teams

Sometime we come across a scenario where we need to ensure that calls going outside the country/region need to go out through local carrier PSTN gateway. This is basically to meet the telecom regulation of that country/region. While leveraging teams … Continue reading

Posted in MS Teams | 4 Comments

Troubleshooting MS Teams

Generate logs in MS Teams: Open MS Teams, then Press Ctrl + Alt + Shift + 1 This will generate logs in Downloaded folder of your Windows PC. Folder will be generated with timestamp and it will contain 3 folders.

Posted in MS Teams | Leave a comment

E911 Dynamic Emergency calling in Microsoft Teams

Dynamic emergency calling is a mechanism to notify emergency help services during an emergency scenario & this will be based on the location of the Teams Client. This will work with Microsoft Calling plan, Operator connect & Direct Routing. The … Continue reading

Posted in MS Teams | 1 Comment

M365 Licensing using msol and AzureAD powershell

M365 licensing can be tricky sometime. Below cmdlt flow will help you sort out your tenant licensing information properly. PS C:\> Install-Module AzureAD PS C:\> Connect-AzureAD PS C:\> Install-Module MSOnline PS C:\> Connect-MSolservice Next lets get the list of all … Continue reading

Posted in Azure, Powershell | Leave a comment

Script to get MS Team user information

You will come across requirement where you need to fetch users MS Teams related information e.g. you are going to enable voice services for the users, so you need to get the required information whether user have required license, usage … Continue reading

Posted in MS Teams, Powershell | Leave a comment

MS Teams Auto-Attendant call forwarding to External PSTN number with Direct Routing

We have a situation where MS Teams auto attendant call need to be get forwarded to external PSTN numbers. As we know Auto-attendant make use of number assigned to resource account. So basically when we are configuring forwarding in Auto … Continue reading

Posted in MS Teams, Powershell | Leave a comment

Caller ID policies to mask user number with Resource account number in MS Teams

Masking caller id is one among the standard phone system feature. When MS Teams user call someone on PSTN number, organization want to show the the common phone number e.g. call from reception should show reception desk number instead of … Continue reading

Posted in MS Teams, Powershell | Leave a comment

Connect various M365 services from VScode

Install PowerShell extension in VSCode Connect to MS Teams from VSCode: Connect to Exchange online from VSCode: Connect to AzureAD from VSCode: Connect to Azure from VSCode:

Posted in Powershell | Leave a comment

Script to connect MS Teams

Sometime you may want to avoid entering user-name and password every time. Below is the small script you can use it to connect to MS Teams. Last line of the below code is just to change the PowerShell title. This … Continue reading

Posted in MS Teams, Powershell | 2 Comments

Exchange PowerShell script to convert DL to contact

Recently I have came across a requirement where customer want to remove few of the DL but they want to keep the email-id mapped to a new contact. All the existing attribute should be stamped to the new contact. LegacyDN … Continue reading

Posted in Exchange Online, Powershell | Leave a comment

AAD Connect flow

Azure AD Connect allows you to sync your on-premises AD forest objects with Azure AD. This sync mainly include Active Directory user accounts & groups. In reverse with a very limited capability Azure AD can sync data back to the … Continue reading

Posted in Azure AD Connect | Leave a comment

MS Teams PSTN call flow with Direct Routing

Lets try to investigate what happens when user dials a PSTN number from their MS Teams client. User launched dial pad in MS Teams. User dialed a number +1-425-765-6xxx Check for the dial plan (policy) assigned to the user. If … Continue reading

Posted in MS Teams | Leave a comment

Auto Attendant in MS Teams

Create Resource account for call queue and auto attendant. Basically this is the account which will be mapped to call queue Or auto-attendant and a phone number will be assigned to these resource accounts. PS C:\>New-CsOnlineApplicationInstance -UserPrincipalName “RA_CQ@domain.com” -DisplayName “Test … Continue reading

Posted in MS Teams | Leave a comment

Handy Cmdlts in Microsoft Teams

Often we come across of scenario where we need small onliner cmdlts to get information quickly. Below are few such onliner. Get the details of all MS Teams users and value stamped to these user properties. PS C:\> get-csonlineuser | … Continue reading

Posted in Powershell | Leave a comment

Azure Terrafy

Infrastructure as code (Iac) is a perfect way to automate your deployment. But sometime it’s difficult to find a point where to start. So here comes Azure Terrafy for rescue. It is an open-source tool that allows you to quickly … Continue reading

Posted in Azure | Leave a comment

Configure Operator Connect in MS Teams

Operator connect provide a way to enhance your Teams calling experience. With the help of operator connect you can call any mobile, landline or PSTN number directly from your Teams app. To configure Operator connect you need to have required … Continue reading

Posted in MS Teams | Leave a comment

Call Routing Method in MS Teams Call queues

Call Routing Method is an important aspect while we configure Call queues in MS teams. Its important to understand so that agent doesn’t gets overloaded and shares equal loads of incoming calls. In MS teams we have 4 type of … Continue reading

Posted in MS Teams | Leave a comment

Use PowerShell ISE in VSCode

Install PowerShell extension onto the VSCode. 2. Open command palette onto the Vscode using Ctrl+Shift+P and search for ISE. You should be able to see below options. Just select PowerShell: Enable ISE Mode. 3. Once you select the mode, you … Continue reading

Posted in Powershell | 2 Comments

Create call queues in MS Teams

Create resource account from MS Teams Admin center. Select the resource account type to Call queue. Assign free license to resource account. Microsoft Team Phone system-Virtual User License assignment need to done from Microsoft 365 admin center.

Posted in MS Teams | Leave a comment