anynode - REST
This chapter describes the configuration of an AnyNode Session Border Controller for caller search in the XPhone Connect Directory and name display in Microsoft Teams using the REST interface.
Requirements
- To use number resolution, the Direct Routing telephony variant must be used for Microsoft Teams.
We assume that Direct Routing for Microsoft Teams is set up and functional.
The resolution does not work with Operator Connect.
Phone number resolution is only possible for incoming calls. No phone number resolution can be configured for outgoing calls from Microsoft Teams.
Corresponding documentation on direct routing can be found in the TE-Systems partner portal or on the Microsoft website:
- The AnyNode version was tested:
4.10.14
- At least XPhone Connect Directory in the version:
9.0.344
Contacts by XPhone must be licensed for the maximum number of users who can make calls via the telephone network.
XPhone Connect Directory configuration
First set up the XPhone Connect Directory according to Documentation.
Complete the dialing parameters that are listed under Settings.
Create API Secret
Create the user name and password for REST access via your directory administration as follows:
Click on the Cloud connection button.
Navigate to Licensing and click on OPEN ADMIN PORTAL.
The Admin Portal opens in a new browser window.
Open the Caller ID API page and click on the Create API Secret button.
This combination of user name and password is required for further :ref:` configuration in the Anynode SBC <conf-anynode-rest>`.
anynode configuration
Set up AnyNode according to the TE-Systems documentation for Teams-Direct-Routing.
Activate Route Supervision in the route to the SIP trunk provider (here Sipgate) by selecting the route and switching to edit mode:
Add a new route of type REST client under supervision:
The URI of the REST server: https://cbx-release-api.c4b.com/api/v1
To determine the user name/password, proceed as described in the section Create API Secret.
Create a new HTTP client:
Check whether the certificate for the API access point has been recognized correctly:
Define the REST access as follows (URL suffix: /caller-info/any-node):
Leave the call status settings as shown:
The same applies to object rewriting:
Test the correct functioning of the configuration using the test function. Note that the phone number must be assigned to a contact in the directory and the data source must be authorized for the Teams client interface. Perform the test in the phone number format that the SIP trunk also uses:
The caller name must appear in brackets in the Source address line in the call response:
Routing Forward Profiles
For the last relevant configuration steps, open the Routing Forward Profiles menu on the left. There is already an entry MS Teams Direct Routing, which was automatically created when the corresponding node was created. Navigate to Telephony Forwarding and change the entry Forward the changes of dial strings to Disabled.
The so-called Routing Forward Profile must then be assigned in Standard Routing. This is done for the route towards the provider. In this example: To CompanyFlex SIP-Trunk for MS Teams Direct Routing.
Open this by selecting it and clicking on Edit… Then click on the Establishment area and then on Configure.
Go to Routing forward profile and select the previously edited profile from the drop-down menu.
Close all open dialogs again.
After all configuration steps have been carried out, click on Commit so that anynode accepts the settings.
Advanced settings
Customize display
This chapter shows the configuration of the LDAP attribute displayName in the format:
<Name> <Vorname>, <Firma>
This configuration must be carried out for each data source. This method allows the display format to be adapted to the data source and independently of the configuration of the SBC.
Open the field link of the corresponding data source:
Link the desired fields with the display name. Hold down the Ctrl key to perform a multiple assignment:
Click on the funnel symbol to open the following dialog window. Move the source fields into the desired order and define the separators. There is a space in the text element between first name and last name (invisible in the screenshot).
Troubleshooting
API Test
To test the function of the API independently of the Session Border Controller, the tool Postman can be used, for example.
Replace the values in the angle brackets with your test data:
https://cbx-release-api.c4b.com/api/v1/caller-info?MicrosoftTenantID=<tenant-id>&CallingPartyNumber=<%2B49891234567>&CalledPartyNumber=<%2B49891234568>
Suggestions for improvement welcome