This article explains the two sets of credentials for Netsapiens, RingLogix, United Cloud, and Viirtue PBX platforms that are to be used for PBX calling and End User Portal SSO.
Two Sets of Credentials
It must be noted that there are 2 sets of API Credentials to be used for connecting to the PBX.
Primary Credentials : API Integration Settings
This is for the purpose of user provisioning, device configuration, and call handling. In ConnecttoTeams PBX configuration screens, this primary credential is to be stored in the API Integration Settings sections.Optional Secondary Credentials : End User Portal Settings
This is for the purpose of facilitating single sign-on (SSO) of Teams User to the Netsapiens End User Web Portal. In ConnecttoTeams PBX configuration screens, this secondary credential is to be stored in the End User Portal Settings section. If this credentials is not set, a Teams User will be prompted for PBX username and password when loading the embedded PBX Portal.
For a detailed guide on the fields within API credential and their possible values, refer to Configure Connector for Netsapiens PBX.
Note to the Reseller
For a detailed guide on the fields within API credential templates and their possible values, refer to Manage API Credential Templates - Reseller.
Illustration of where the API credentials are used
The API Integration Settings (primary) are used to integrate with the PBX, reference SIP User, and store device details, as highlighted in the image below.
The End User Portal Settings (secondary) are used to Single Sign-On (SSO) the user to the PBX portal from within Microsoft Teams, as shown in the image below. If this credentials is not set, a Teams User will be prompted for PBX username and password when loading the embedded PBX Portal.
Since this is an iFrame integration, there is an additional requirement to be added to the Netsapiens PBX instance.Update this file in Netsapiens PBX
In the file
/etc/netsapiens/portal_config.php
on the core Netsapiens server(s) add in this line of script:Configure::write('Session.cookie_samesite', 'None');