Teams\Skype Phone Tab or Dial Pad Missing

August 6, 2019 | by iaur | posted as App\Client, Teams (formerly S4B)


Step 1. Check if user configuration and provisioning status
  •  Always verify the deployment/environment (Pure Onine, SfB Hybrid, Direct Routing etc.)
  • Phone Systems and Calling Plans
  • Get the results of Get-CsOnlineUser from SfBO PowerShell look for MCO Validation Errors, Provisioning Timestamp & Counters.
  • Some common data issues that result in the MCOValidationError being populated are:
    • Duplicate User Principal Name detected within the tenant.
    • SIP address already in use by another account within the tenant.
    • SIP address or lineuri not being in the correct format.
    • Common hybrid related DNS issues that could break federation for onprem customers​​​​​​​.
    • LastSyncTimeStamp (Timestamp of when the last Sync process completed) 
    • LastProvisionTimeStamp (Timestamp of when the last Provisioning process completed) 
    • LastPublishTimeStamp (Timestamp of when the last Publish process completed) 
    • LastSubProvisionTimeStamp (Timestamp of when the last Sub-provisioning process completed) 
    • ProvisioningStamp  (A value in this field implies that a Provisioning step is outstanding) 
    • SubProvisioningStamp (A value in this field implies that a Sub-provisioning step is outstanding) 
    • PublishingStamp (A value in this field implies that a Publishing step is outstanding) 
    • ProvisioningCounter (Tracks how many times a Provision process has been attempted.  A value greater than 3-5 usually indicates a problem requiring Microsoft Support engagement) 
    • SubProvisioningCounter (Tracks how many times a Sub-provision process has been attempted.  A value greater than 3-5 usually indicates a problem requiring Microsoft Support engagement) 
    • PublishingCounter (Tracks how many times a Publishing process has been attempted.  A value greater than 3 usually indicates a problem requiring Microsoft Support engagement) 
    • MCOValidationError (If a value is present, indicates that the provisioning system has detected an issue with the user data that needs to be addressed by tenant admin before provisioning can complete.) 
    • SIPAddress and SIPProxyAddress (Helps verify that the SIP address and Proxy SIP Address are as desired, a core component before a user can sign-in). 
    • Enabled – Verifies that the system believes the user is enabled for service. 
    • RegistrarPool – the specific Skype for Business Online pool where the user resides.  User sign-in cannot happen if there is no RegistrarPool defined. 
    • HostingProvider – Indicates where the user is homed.  SRV: represents on-prem, whereas indicates the user is homed online. 
Step 2.  Are all users affected or just selected users? Either way, get one affected user and run through the next steps
Step 3.  Do test calls to the affected users. See if they are able to receive calls.
Step 4.  Check Teams and Skype Admin Center > Users
  • See if Phone System is set to “on” or if there is a phone number assigned to the user
Step 5. Check also Teams and Skype Admin Center > Legal Portal > Voice > Voice Users
  • See if affected user is listed
Step 6. Run Get-CSOnlineUser and see if EnterpriseVoiceEnabled is set to True
Step 7. Try and log in to other machines for isolation
Step 8. Log in to Skype for Business client and see if Dial Tab is showing (only if they have not been upgraded to Teams or if they are still set to Islands)
Step 9. Login to the web version of MS Teams (
  •  Press “CTRL+ALT+SHIFT+1” (note: make sure to use the numbers found on the upper part of your keyboard instead of the numpad)

To identify if it’s a working account, we should have the following values below:












  •  If not proceed on the next step: PowerShell
Step 10. Create a custom policy and assign to affected user
  1. New-CsOnlineVoiceRoutingPolicy -Identity “name_of_policy”
  2. Get-CsOnlineVoiceRoutingPolicy
  3. Get-CsOnlineUser -Identity “” | fl *onlinevoiceroutingpolicy*
  4. Grant-CsOnlineVoiceRoutingPolicy -PolicyName “name_of_policy” -Identity
    1.  If you are getting an error on the “Grant-CsVoiceRouting Policy, skip this and proceed to #11
  5. [Give ample time to propagate]
  6. Get-CsOnlineUser -Identity “” | fl *onlinevoiceroutingpolicy*
Step 11. Re-assign License (turn off Calling Plan and Phone System ONLY, leave it for hour and re-assign it again), give 4 – 24 hours replication time before reproducing the issue
Step 12. Reset EnterpriseVoice status
  • Set-CsUser -Identity -EnterpriseVoiceEnabled $False
  • Give around 5 minutes propagation
  • Set-CsUser -Identity -EnterpriseVoiceEnabled $True
Steps 13. Recreate App Policies

Go to Microsoft Teams Admin Center > Teams Apps > Setup Policies > Add > Add app setup Policy ( Put a description ) and then highlights everything ( Activity, Chat, Teams, Calendar, Calling and Files ) > SAVE

One done creating a app policy > go to users > select your name > Policies > Edit and set up everything to the policy that you’ve created > Apply

Feedback or Help?

Should you have one, click here

Boring Ads. Pardon me :)