Howto:Microsoft Lync 2010 - Quickstart Guide: Difference between revisions

From innovaphone wiki
Jump to navigation Jump to search
Line 45: Line 45:
== Configuration of Innovaphone with Microsoft Lync Server 2010 - Media Bypass ON and TSIP Mode ==
== Configuration of Innovaphone with Microsoft Lync Server 2010 - Media Bypass ON and TSIP Mode ==


* In order to establish communications between the Lync 2010 and the innovaphone PBX we need to establish one SIP Trunk between the Innovaphone Gateway and the MS Mediation Server. All signalling between the two systems are passed by this SIP Trunk without Registration on the Gateway to MS Mediation Server. We could have multiple trunks configured on Mediation Server to multiple Gateways or vice-versa.
* In order to establish communications between the Lync 2010 and the innovaphone PBX we need to establish one SIP Trunk between the innovaphone Gateway and the MS Mediation Server. All signalling between the two systems are passed by this SIP Trunk without Registration on the Gateway to MS Mediation Server. We could have multiple trunks configured on Mediation Server to multiple Gateways or vice-versa.


==== 1. Create a Gateway Object in the PBX ====
==== 1. Create a Gateway Object in the PBX ====
Line 89: Line 89:
==== 4. Number mappings (CGPN/CDPN) ====
==== 4. Number mappings (CGPN/CDPN) ====


* In our example the PBX users dial 5 plus the short extension of Lync Client (ie: 5 + 2655) but since the Lync uses full e164 numbering scheme we need to send the full number to Mediation Server to reach the correct extension in International format. Using CDPN Out Maps we could achieve that, note this is an example, we can set numbers not in e164 format on Lync Server and use other maps.
* In our example the PBX users dial 5 plus the short extension of Lync Client (ie: 5 + 2655) but since the Lync uses full e164 numbering scheme we need to send the full number to Mediation Server to reach the correct extension in international format. Using CDPN Out maps we could achieve that, note this is an example, we can set numbers not in e164 format on Lync Server and use other maps.


Go to: Gateway -> GW2 and edit the CGPN/CDPN mappings:  
Go to: Gateway -> GW2 and edit the CGPN/CDPN mappings:  
Line 123: Line 123:
* Disable the config Option '''Enable REFER Support'''.
* Disable the config Option '''Enable REFER Support'''.
* Change the encryption level of Lync clients like is described in the 'Known Problems' section.
* Change the encryption level of Lync clients like is described in the 'Known Problems' section.
* We should check if the Mediation Server listenning ports match with our innovaphone GWX Interface setup (by default Lync uses 5068 for TCP and 5067 for TLS).   
* We should check if the Mediation Server listening ports match with our innovaphone GWX Interface setup (by default Lync uses 5068 for TCP and 5067 for TLS).   
* Create a '''IP/PSTN Gateway''' to innovaphone Gateway, here we setup the innovaphone Gateway IP Address/FQDN, signalling listening port and transport method (TCP or TLS).  
* Create a '''IP/PSTN Gateway''' for innovaphone, here we setup the innovaphone Gateway IP Address/FQDN, signalling listening port and transport method (TCP or TLS).  


Here is a small example:
Here is a small example:

Revision as of 15:07, 27 October 2011

Tools clipart.png FIXME: Working in progress

Summary

SIP trunking between innovaphone PBX and Microsoft Lync Server 2010. Test have been done following the test in the Unified Communications Open Interoperability Program – Lync Server.

Certification Status

Recprod.PNG The tests for this product have been completed and it has been approved as a recommended product (Certification document).

Testing of this product has been finalized October, 2011.

Applies To

This information applies to

  • Innovaphone PBX V9 build 90733 and higher
  • Microsoft Lync Server 2010 v4.0.7577.0

More Information

This document is intended to support you with the Microsoft Lync Server 2010 (Version 4.0.7577.0) integration into an existing innovaphone PBX environment. In the following sections we describe the configuration steps for a Direct SIP connection between both systems. It's not the goal of this article to describe the complete configuration of a Lync or innovaphone PBX system, but only the required settings to enable the connection of both systems.

The SIP connection is made between an innovaphone gateway and a Microsoft Mediation Server. It can be done using TCP (TSIP) or TLS (SIPS), the use of SRTP is supported in both cases.

The Microsoft Lync Server 2010 has a new feature called Media Bypass. When this feature is activated, it permits a direct audio termination on the Lync client instead of the Mediation Server.

Note: In order to use Microsoft Lync Server 2010 Media Bypass feature it's required to set Media-Relay and exclusive codec options on the Innovaphone Gateway. In this article we will separate the two different possible configurations.


Note2: Some SIP REFER methods are not supported by Innovaphone PBX, in order to have correct work between the two devices the option "Enable REFER Support" on Microsoft Lync Control Panel at Voice Routing-> Trunk Configuration must be disable always. This option could be changed by Powershell Command too: Set-CsTrunkConfiguration -EnableReferSupport $false .

Direct SIP Topology

  • Here is a small example of a Direct SIP deployment.

Lync topology example1.png

Configuration of Innovaphone with Microsoft Lync Server 2010 - Media Bypass ON and TSIP Mode

  • In order to establish communications between the Lync 2010 and the innovaphone PBX we need to establish one SIP Trunk between the innovaphone Gateway and the MS Mediation Server. All signalling between the two systems are passed by this SIP Trunk without Registration on the Gateway to MS Mediation Server. We could have multiple trunks configured on Mediation Server to multiple Gateways or vice-versa.

1. Create a Gateway Object in the PBX

Go to: PBX -> Objects -> Create new Gateway/Trunkline Object and configure these settings:

  1. Long Name: LyncGW
  2. Name: LyncGW
  3. Number: choose a number in order to allow innovaphone users dialing out to the Lync users
  4. Enable the Prefix checkbox (if it's a gateway object).
  5. Click Ok when finished to save the object.

Lync Trunkline.png

2. H.323 interface to the PBX

Go to: Gateway -> GK -> GW1 and configure these settings:

  1. Protocol: H.323
  2. Mode: Register as Gateway
  3. Gatekeeper Address: Enter the innovaphone PBX IP - address
  4. Alias List: Enter as Name LyncGW.
  5. Media Properties: Change the General Coder Preference to G.711A and enable the exclusive checkbox.
  6. Media Properties: Change both Framesize values to 20ms.
  7. Click Ok when finished to save your settings.

Lync GWX PBX MediaBypassON NO SRTP1.png

3. SIP interface to Mediation Server

Go to: Administration -> Gateway -> GK -> GW2 and configure these settings:

  1. Protocol: TSIP
  2. Mode: Gateway without Registration
  3. Proxy: Enter the Mediation Server IP - address
  4. Media Properties: Change the General Coder Preference to G.711A and enable the exclusive checkbox.
  5. Media Properties: Change both Framesize values to 20ms.
  6. Media Properties: Activate the Media-Relay checkbox.
  7. Click Ok when finished to save your settings.

Lync GWX TSIP MediaBypassON NO SRTP1.png

4. Number mappings (CGPN/CDPN)

  • In our example the PBX users dial 5 plus the short extension of Lync Client (ie: 5 + 2655) but since the Lync uses full e164 numbering scheme we need to send the full number to Mediation Server to reach the correct extension in international format. Using CDPN Out maps we could achieve that, note this is an example, we can set numbers not in e164 format on Lync Server and use other maps.

Go to: Gateway -> GW2 and edit the CGPN/CDPN mappings:

  1. For incoming CGPNs (CGPN-IN) map the International flag to its e.164 format00.
  2. For incoming CGPNs (CGPN-IN) map the National flag to its e.164 format 0.
  3. For incoming CDPNs (CDPN-IN) map the International flag to its e.164 format 00.
  4. For incoming CDPNs (CDPN-IN) map the National flag to its e.164 format 0.
  5. For outgoing CGPNs (CGPN-OUT) map 00 to the ISDN format International.
  6. For outgoing CGPNs (CGPN-OUT) map 0 to the ISDN format National.
  7. For outgoing CDPNs (CDPN-OUT) map Lync Extension to the ISDN format International.
  8. Click Ok when finished to save the first route.

Lync MAPStoLync1.png

5. Routing between SIP interface and PBX

  • It's important to check the flag Interworking(QSIG,SIP) always.
  • For incoming routes from Lync to PBX we have prefix too (i.e. 5 to reach internal PBX extensions and 0 to the PSTN Trunkline).

Go to: Gateway -> Routes and configure these settings:

  1. Create a route from GW1 to GW2. Activate the Interworking(QSIG,SIP) checkbox.
  2. Click Ok when finished to save the first route.
  3. Create a route from GW2 to GW1. Activate the Interworking(QSIG,SIP) checkbox.
  4. Click Ok when finished to save the second route.

Lync Routes 1.png

6. Microsoft Lync Server 2010 Configuration

  • Enable Media Bypass option on the Microsoft Lync Server 2010 control panel.
  • Disable the config Option Enable REFER Support.
  • Change the encryption level of Lync clients like is described in the 'Known Problems' section.
  • We should check if the Mediation Server listening ports match with our innovaphone GWX Interface setup (by default Lync uses 5068 for TCP and 5067 for TLS).
  • Create a IP/PSTN Gateway for innovaphone, here we setup the innovaphone Gateway IP Address/FQDN, signalling listening port and transport method (TCP or TLS).

Here is a small example:

Lync PSTGateway TCP.png

Configuration of Innovaphone with Microsoft Lync Server 2010 - Media Bypass OFF

  • When we disable Media Bypass feature on Microsoft Lync Server 2010 all RTP traffic will pass by the Mediation Server, in this mode we don't need to have media-relay or exclusive codec. So we must remove all exclusive codec and media-relay options at the interfaces.
  • All the incoming and outgoing calls from Microsoft Lync Server 2010 will pass/relay on the Mediation Server.
  • The rest of the configuration will be similar to previous example.

Here is an example of GK Interface to Lync:

Lync GWX TSIP MediaBypassOFF NO SRTP1.png

Configuration of Innovaphone with Microsoft Lync Server 2010 - SIP over TLS (SIPS)

  • To set up a SIPS Trunk with Mediation Server we need first to ensure that Innovaphone Gateway have the right Certificates to establish the TLS communication with Lync.
  • This certificates are managed by the Microsoft CA Server of the Domain where is installed the Lync Setup.

1. Set Up Certificates

  • First we need to obtain the CA Root Certificate or Lync Server 2010 Certificate then we upload this file to Innovaphone Gateway.

Go to: General -> Certificates and :

  1. Trust List: Click on Choose File button to upload the certificate obtained from CA Server.
  2. This certificate should appear next in the Trust list.

Lync Certificates upload trust.png


  • Now we need to make Certificate Signing Request to CA Server of the Innovaphone Gateway.

Go to: General -> Certificates and -> Device Certifacate -> Click on Create New and configure the settings:

  1. Type: Signing Request.
  2. Key: 1024, 2048 or 4096 bit.
  3. Common Name: FQDN of the Innovaphone Gateway (Our example PBX.innovaphone.compat).
  4. All other fields are optional and then click OK and wait till the request file is finished.
  5. Click on PEM mode to download the certificate request file.

Lync Certificates requestcert.png

  • Now we create a new advance certificate request at CA Server using MTLS or Webserver Template.

Here is a small example:

Lync Certificates submitrequest.png


  • To finish this setup we just need to upload the previous file on the Innovaphone Device Certificate list.

Go to: General -> Certificates and -> Device Certifacate and:

  1. Click on Choose File and select the Certificate File downloaded previous and then Upload.
  2. The new certificate should appear on the Device Certificate List like in our example.

Lync Certificates device cert.png

2. SIPS Interface to Mediation Server

Go to: Administration -> Gateway -> GK -> GW2 and configure these settings:

  1. Protocol: SIPS
  2. Mode: Gateway without Registration
  3. Remote Domain: Enter the Mediation Server FQDN.
  4. Local Domain: Enter the Innovaphone Gateway FQDN.
  5. Proxy: Enter the Mediation Server IP - address
  6. Local Signaling Port: Set the Port where Lync Server will contact (by default Innovaphone GW uses 5061 for SIPS).
  7. Media Properties: Change the General Coder Preference to G.711A.
  8. Media Properties: Change both Framesize values to 20ms.
  9. Click Ok when finished to save your settings.

Lync GWX SIPS MediaBypassOFF NO SRTP.png


3. Innovaphone PBX System Name

  • In order to have TLS connection and Routing working properly we need to setup the System name as the FQDN. In our example we used PBX.innovaphone.compat, note that this name matches with Common Name used for Certificates and the Local Domain at SIPS Interface.

Go To: PBX-> Config and setup:

  1. System Name: Enter the FQDN of the Gateway.
  2. Activate the Use as Domain Checkbox.

Lync System name.png


4. Create IP/PSTN Gateway at Lync Topology Builder

  • Create once more an IP/PSTN Gateway but now we choose the TLS transport method and insert the FQDN of the innovaphone gateway.

Here is a small example:

Lync PSTGateway TLS.png

Use SRTP with Microsoft Lync Server 2010

  • In order to have SRTP between innovaphone Gateway and Lync we must set the SRTP Crypto AES128/80 in the TSIP/SIPS Interface to Mediation Server and all other interfaces/endpoints that will call to Lync (IP Phones, ISDN Interfaces, GW H.323 Interface to PBX).
  • Use of SRTP could be used either with TSIP/SIPS trunk and either with Media Bypass ON/OFF.

Here is an example:

Lync GWX PBX MediaBypassON SRTP.png

Troubleshooting

In case you encounter problems, you can collect debug traces messages and contact our support team by mail.

To ensure that all important debug options are configured, use the following trace settings:

Go to: Maintenance -> Tracing:

  1. Enable the checkbox that are being used.
  2. Click Ok when finished to save the settings.

Lync troubleshoot tracing.png

If using TLS we should additionally config:

Go to: http://x.x.x.x/debug.xml

  1. Click on Tracking.
  2. Enable TLS Plaintext checkbox.
  3. Click Ok when finished to save the settings.

After that use Remote PCAP to capture the traces.

Lync troubleshoot debug.png

Known Problems

  • No Ringback Tone - If you are calling a Lync Client from outside (ex: PSTN) and don't have Ringback Tone this is caused because of Early Media is negotiated but the Lync Client doesn't provide any local Ringback and some PSTN Carriers could deliver this Early Media to the PSTN Phone and don't play local Ringback Tone. To fix this we can use of "No Early Media" Flag on the GWX Interface configured to Lync, this way no PROGRESS is sent to PSTN. Calls between Lync clients and Innovaphone PBX Users will not have this issue.
  • Media Bypass ON & NO SRTP - By default the Lync clients have as option SRTP Required, so If we desire to use Media Bypass ON and no SRTP we should change this option at Lync Powershell using the command : Set-CsMediaConfiguration -EncryptionLevel SupportEncryption. If not calls will not work.