Howto:Microsoft Lync 2010 - TestReport: Difference between revisions

From innovaphone wiki
Jump to navigation Jump to search
 
(154 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<!-- {{Template:3rd Party Input}}-->
<!-- {{Template:3rd Party Input}}-->
{{FIXME|reason=Working in progress}}
==Summary==
==Summary==
SIP trunking between innovaphone PBX and Microsoft Lync 2010. Following the certification plan [http://technet.microsoft.com/en-us/lync/gg131938 Unified Communications Open Interoperability Program – Lync Server].
 
Test report of innovaphone PBX and Microsoft Lync Server 2010 according the '''Microsoft® Lync Server 2010 Open Interoperability (CS2010-OIP) IP PBX Program test plan'''.
 
The test were successful and all required tests were passed. As a result the Microsoft Lync Server 2010 is qualified as a [[Howto:What_is_a_%22recommended_product%22%3F#3rd_Party_PBX | Engineered Product]].
 
The '''optional''' test including call transfers using the SIP Refer-method were not passed, since innovaphone is not supporting using this method for call transfers. However this is just an optional test, call transfer are possible using another SIP Method supported by both systems. The user experience is not affected by this.
 
Theses tests have been conducted both by innovaphone and by Microsoft's official test lab for Lync certification, tekVizion. Here is [[Media:tekVizionLabs-MSFT-Lync Server 2010 InnovaPhone IP3010 IP-PBX TestReport 1.3.pdf|tekVizion's test report]].
 
<!--
 
Von: Gerry Pearson [mailto:gpearson@tekvizion.com]
Gesendet: Montag, 3. Dezember 2012 19:23
An: Christoph Künkel
Cc: Chris Freeman
Betreff: RE: Lync direct SIP test ###91424###
 
Hi Christoph,
Yes, you may share this with your customers.
Thanks,
Gerry Pearson
O:214/242-5926
C:972/897-9268
gpearson@tekvizon.com
www.tekvizion.com
From: Christoph Künkel [mailto:ckl@innovaphone.com]
Sent: Monday, December 03, 2012 9:40 AM
To: Gerry Pearson
Cc: Chris Freeman
Subject: AW: Lync direct SIP test ###91424###
Hi Gerry,
one question: once in a while, our partners ask for a copy of your test report.  So far, we have denied this, as it states
“This document is the property of, and is proprietary to tekVizion.  It is not to be disclosed in whole or in part without the express written authorization of tekVizion, shall not be duplicated or used, in whole or in part, for any purpose other than to evaluate the proposed scope of testing under contemplation.”
To me it appears as if this has just been copied from the test plan to the final document erroneously.  After all, we have paid some money to get it ;-)
Now, we have some customers who really insist on having a look at it. Can we show it to customers?
Best Regards, Christoph
-->


==Certification Status==
==Certification Status==
Line 9: Line 55:
   - update date below
   - update date below
   -->
   -->
<!-- {{Template:Compat Status "planned"}} -->
{{Template:Compat_Status_"engineered_prod."|certificate=Microsoft_-_Lync_Server_2010_-_3rd_Party_Product_-_Desc-microsoft-cert.pdf‎}}
<!-- {{Template:Compat Status "in progress"}} -->
{{Template:Compat Status "certified"|certificate=Product_-_Vendor_-_3rd_Party_Product_-_Desc-product-cert.pdf}}
<!-- {{Template:Compat Status "tested"(sip provider)}} -->
<!-- {{Template:Compat Status "rejected"}} -->
<!-- {{Template:Compat Status "customer-testimonial"}} -->


Testing of this product has been finalized October, 2011.
Testing of this product has been finalized October, 2011.
The product is certified according to the [http://technet.microsoft.com/en-us/lync/gg131938 Unified Communications Open Interoperability Program – Lync Server program].


==Applies To==
==Applies To==
This information applies to
This information applies to


* Innovaphone PBX V9 build 90733
* Innovaphone PBX V9 build 90733 and higher


<!-- Keywords: siemens interworking -->
* Microsoft Lync Server 2010 v4.0.7577.0


==More Information==
==More Information==


This document is intended to support you with the Microsoft Lync 2010 (Version 4.0.7577.0) into an existing environment of the innovaphone PBX (Version 9 build 90733). In the following sections we describe the essential steps of configuration to allow for optimal cooperation of the Microsoft Lync 2010 and the innovaphone PBX on a Direct SIP connection.
* All tests were made with Microsoft Lync Server 2010 Media Bypass feature ON, so RTP traffic goes directly from Lync endpoints to the innovaphone PBX.
 
* Tests were made with a real Lync Server installation and not with the 'Lync IT Tool', due to some compatibility issues with this tool.
 
* The "Enable REFER support" was disabled during the tests, since the innovaphone PBX doesn't uses this method to transfer calls.


The SIP connection is made between Innovaphone Gateway and Microsoft Mediation Server and could be done using TCP (TSIP) or TLS (SIPS). Use of SRTP is supported too.  
* A Cisco Router 3840 was used to simulate the PSTN connection, a E1 trunk with protocol QSIG was used.


Microsoft Lync 2010 have a new feature called [http://technet.microsoft.com/en-us/library/gg398703.aspx Media Bypass] that was not present on the previous Microsoft OCS 2007. When this feature is ON permits direct Audio termination on the Lync Client instead of on the Mediation Server, this could be useful in some scenarios.
* An IP3010 was the gateway used as PBX platform during the tests, together with IP110 IP-phones.


Note: In order to use Microsoft Lync Media Bypass feature it's required to set [http://wiki.innovaphone.com/index.php?title=Reference:Administration/Relay/VOIP/GW#Coder_Preferences Media-Relay] and exclusive codec options on the Innovaphone Gateway. In this article we will separate the two different possible configurations.
* The certification tests were conducted by 'tekVizion Labs'.


== Configuration of Innovaphone with Microsoft Lync 2010 - Media Bypass ON and TSIP Mode ==
== Test Setup Topology ==
 
* Here is the topology of the setup used during the certification tests:
 
[[Image:Lync_topology_example2.png]]
 
== Test Results ==
 
{| border="1"
!Tested feature
!Required
!Result
|----
| Audio Test Cases || Yes || Pass 
|----
| Basic Call Scenario Test Cases || Yes || Pass 
|----
| Conference Test cases || Yes || Pass
|----
| Failover Test Cases || Optional || Pass 
|----
| DTMF Test Cases || Yes || Pass 
|----
| Early Media Test cases || Yes || Pass
|----
| Hairpin Test Cases || Yes || Pass 
|----
| Hold Test Cases || Yes || Pass 
|----
| ISDN Test cases || Yes || Pass
|----
| Media Bypass Test Cases || Optional || Pass 
|----
| Options Test Cases || Optional || Pass
|----
| REFER Test Cases || Optional || Not Pass 
|----
| Security Test Cases || Optional || Pass   
|}
 
 
== Test Notes ==
 
* Audio Tests - Innovaphone Gateways support Comfort Noise (Payload 13) and accepts from Lync but doesn't generate CN packets (neither phone neither Gateway), instead during silence RTP packets are always sent expect if the option "Silence Suppression" it's enable.
 
* Basic Call Tests - When PBX user rejects a call from Lync it retuns "SIP 486 Busy here" and not "SIP 603 Decline". This behavior it's intentional to provide a "polite" message to the remote end.
 
* Failover Tests - In order to achieve load balancing from the Innovaphone PBX multiple GWX Interfaces were registered using the same Gateway Object to distribute the calls. Then was configured different Interfaces for each Mediation Pool with failover maps. If we set a Interface to a Mediation Server Pool Gateway will not do load balancing of the calls but only failover if the primary server address it's down.
 
* Options - In order to send Options messages to Lync the config option should be added to the config file: ''!config change add TSIP /options-interval 30'' or ''!config change add SIPS /options-interval 30'' so every 30 seconds Options message will be generated to Lync.
* REFER Tests - Innovaphone doesn't do transfer using REFER Method. Even if supports Refer Method this should be disable with Lync since not all REFER tests were passed.
 
== Test Configuration ==


=== Innovaphone Configuration ===
=== Innovaphone Configuration ===


In order to establish communications between the Lync 2010 and the innovaphone PBX using the SIP protocol, you have to create a new PSTN Gateway in the Microsoft Mediation Server and set up a connection to the innovaphone Gateway.
==== 1. Create a Gateway Object in the PBX ====


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


* First, we start to configure the innovaphone PBX by creating a Gateway or TrunkLine Object with prefix to reach Lync Mediation Server.
# Long Name: LyncGW
# Name: LyncGW
# Number: choose a number in order to allow innovaphone users dialing out to the Lync users
# Enable the '''Prefix''' checkbox (if it's a gateway object).
# Click '''Ok''' when finished to save the object.


[[Image:Lync_Trunkline.png]]
[[Image:Lync_Trunkline.png]]


* After that we register this object in the Innovaphone Gateway GK Interfaces as "Register as Gateway" using H.323 Protocol.
==== 2. H.323 interface to the PBX ====
 
Go to: Gateway -> GK -> GW1 and configure these settings:
 
# Protocol: '''H.323'''
# Mode: '''Register as Gateway'''
# Gatekeeper Address: Enter the innovaphone PBX '''IP - address'''
# Alias List: Enter as '''Name''' LyncGW.
# Media Properties: Change the '''General Coder Preference''' to G.711A and enable the '''exclusive''' checkbox.
# Media Properties: Change both '''Framesize''' values to 20ms.
# Click '''Ok''' when finished to save your settings.
 
'''Note''': Of course you will need at least one port license to register the GW-object at the PBX.
 
[[Image:Lync_GWX_PBX_MediaBypassON_NO_SRTP1.png]]
 
==== 3. SIP interface to Mediation Server ====
 
Go to: Administration -> Gateway -> GK -> GW2 and configure these settings:
 
# Protocol: '''TSIP'''
# Mode: '''Gateway without Registration'''
# Proxy: Enter the Mediation Server '''IP - address'''
# Media Properties: Change the '''General Coder Preference''' to G.711A and enable the '''exclusive''' checkbox.
# Media Properties: Change both '''Framesize''' values to 20ms.
# Media Properties: Activate the '''Media-Relay''' checkbox.
# Click '''Ok''' when finished to save your settings.
 
[[Image: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:
 
# For incoming CGPNs ('''CGPN-IN''') map the '''International''' flag to its e.164 format'''00'''.
# For incoming CGPNs ('''CGPN-IN''') map the '''National''' flag to its e.164 format '''0'''.
# For incoming CDPNs ('''CDPN-IN''') map the '''International''' flag to its e.164 format '''00'''.
# For incoming CDPNs ('''CDPN-IN''') map the '''National''' flag to its e.164 format '''0'''.
# For outgoing CGPNs ('''CGPN-OUT''') map ''00'' to the ISDN format '''International'''.
# For outgoing CGPNs ('''CGPN-OUT''') map ''0'' to the ISDN format '''National'''.
# For outgoing CDPNs ('''CDPN-OUT''') map '' Lync Extension'' to the ISDN format '''International'''.
# Click '''Ok''' when finished to save the first route.
 
[[Image:Lync_MAPStoLync1.png]]
 
==== 5. Routing between SIP interface and PBX ====
 
* The routes could be very simple, it's important to check the flag "Interworking(QSIG,SIP)" always, for incoming routes from Lync to PBX we have some Prefix too like 5 to reach internal PBX extensions and 0 to reach the PSTN Trunkline on the PBX. Note that in the example we have an extra SIPS Trunk that we will see later how to configure it.
 
Go to: Gateway -> Routes and configure these settings:
 
# Create a route '''from GW1 to GW2'''. Activate the '''Interworking(QSIG,SIP)''' checkbox.
# Click '''Ok''' when finished to save the first route.
# Create a route '''from GW2 to GW1'''. Activate the '''Interworking(QSIG,SIP)''' checkbox.
# Click '''Ok''' when finished to save the second route.
 
[[Image:Lync_Routes_1.png]]
 
=== Microsoft Lync Server 2010 Configuration ===
 
 
==== 1. Set Media Bypass ====
 
Go to: Voice Routing -> Trunk Configuration -> Edit '''Global''' Trunk and configure these settings:
 
# Enable the '''Enable Media bypass''' checkbox.
# Disable the '''Enable Refer support''' checkbox.
# Click '''Ok''' when finished and then '''Commit All'''to save your settings.
 
[[Image:Lync_MediaBypassON_Menu1.png]]
 
 
Go to: Network Configuration -> Global -> Edit '''Global''' and configure these settings:
 
# Enable the '''Enable Media bypass''' checkbox.
# Check the '''Always Bypass''' checkbox.
# Click '''Commit''' when finished to save your settings.
 
[[Image:Lync_MediaBypassON_Menu2.png]]
 
==== 2. Set IP/PSTN Gateway & Mediation Server at Topology Builder ====
 
* The creation and edit of Trunks at Lync are made at Topology builder tool, after create new changes we must publish the modifications. Usually during the Wizards we are able to configure the PSTN Gateways but we can skip and do this configuration manually afterwards in the Topology Builder.
 
Go to: Topology Builder "Site" -> PSTN Gateway -> Add '''New IP/PSTN Gateway''' and configure these settings:
 
# Gateway FQDN or IP Address: Enter the Innovaphone Gateway IP - address or FQDN.
# Listenning Port for IP/PSTN Gateway: Enter the SIP Port set on GW2 Interface (Default 5060 for TSIP).
# SIP Transport Protocol: Choose the '''TCP''' option.
# Click '''Ok''' when finished to save your settings.
 
[[Image:Lync_PSTGateway_TCP.png]]
 
 
Go to: Topology Builder "Site" -> Mediation Pools -> Edit the Mediation Server and configure these settings:
 
# On the Gateway list not associated to the Mediation Server choose the Innovaphone Gateway and then '''Add''' Button.
# Listenning ports: Ensure that TCP Port it's the same we configured on the GW2 Interface at Proxy (5068 our example).
# Click '''Ok''' when finished to save your settings.
 
[[Image:Lync_MediationServer_GWS.png]]
 
=== 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 ====
 
Go to: Microsoft Certificate Services Webpage -> Download a CA certificate, certificate chain, or CRL and:
 
# Choose '''CA Certificate'''.
# Encryption method: Choose '''DER''' mode.
# Click '''Download CA certificate''' and save the certificate file.
 
[[Image:Lync_Certificates_root.png]]
 
 
* Then we upload this file to Innovaphone Gateway.
 
Go to: General -> Certificates and :
 
# Trust List: Click on '''Choose File''' button to upload the certificate obtained from CA Server.
# This certificate should appear next in the Trust list.
 
[[Image:Lync_Certificates_upload_trust.png]]


[[Image:Lync_GWX_PBX_MediaBypassON_NO_SRTP.png]]


* Finally we create the GW Interface to Microsoft Mediation Server using TSIP, we can set the IP address or the FQDN of the Mediation Server plus the listening port.
* Now we need to make Certificate Signing Request to CA Server of the Innovaphone Gateway.


[[Image:Lync_GWX_TSIP_MediaBypassON_NO_SRTP.png]]
Go to: General -> Certificates and -> Device Certifacate -> Click on '''Create New''' and configure the settings:


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


[[Image:Lync_Certificates_requestcert.png]]




===Route Patterns===
Go to: Microsoft Certificate Services Webpage -> Request a Certificate -> advance certificate request -> Click on '''Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file, or submit a renewal request by using a base-64-encoded PKCS #7''' file and:


Please select the Routes dialog from the Administration - Gateway menu for configuring a route pattern. Here you have to create one route for each direction, from the IP-Trunk Gateway to the HG3550 GW and the other way round. Start with the route from the  IP-Trunk interface to the HG3550. Please click the small icon with the arrow pointing to the right. A new dialog will appear where you can set the route pattern and its direction. In the Description field, you may enter a meaningful description for this route. In this example, we enter the value IP-Trunk -> HG 3550. From the list of checkboxes to the left, select the incoming interface, i.e. the interface from where the calls for this route originate. Please activate the option GW HG3550. The two text areas that are connected with an arrow are used for the route pattern. The left text area describes the incoming number, whereas the right text area describes the outgoing number that is delivered to the innovaphone PBX. If, for example, the HG3550 interface can be reached using the trunk number 3 and you want to configure a pattern of numbers beginning with 31000 and ending with 31999, simply enter 31 in both fields. If you would like to truncate the trunk number from the route pattern, enter 31 in the left field and 1 in the right field. This means that the route pattern can be reached when dialling any number beginning with 31, but only the part of the extension beginning with the second 1 will be delivered to the HG3550. From the list to the right, please select the Gateway we have configured earlier (HG3550).
# Open the request certificate file created before with text editor and copy all information on it.
Finally, confirm the settings with the APPLY button and close the window.
# Paste that information on the '''Saved Request''' box.
# Certificate Template: Choose MTLS or Webserver (or similar).
# Click Submit to apply this request to the CA Server, after that we need to Issue this certificate request on the Pending List and then we can download the certificate file from the Microsoft Certificate Services Webpage.


==Configuration in the HiPath==
[[Image:Lync_Certificates_submitrequest.png]]


===Configuring the HG3550===


The STIM2 had to be configurde as HG3550V2. The Q2316-X is the Unit with 60 B-Channels. Under FCID=2 you'll get 2 lines each with 30 channels for IP-Trunking:
* To finish this setup we just need to upload the previous file on the Innovaphone Device Certificate list.


EINRICHTEN-BCSU:TYP=PER,LTG=1,LTU=1,EBT=1,SACHNR="Q2316-X",FCTID=2;
Go to: General -> Certificates and -> Device Certifacate and:


Configuring the IP-Adress, Subnetmask and Trunkingprotocol:
# Click on '''Choose File''' and select the Certificate File downloaded previous and then Upload.
# The new certificate should appear on the Device Certificate List like in our example.


EINRICHTEN-STMIB:MTYP=STMI2IGW,LTU=1,EBT=1,CUSIP=192.168.100.43,SNETMASK=255.255.255.0,TRKPROT=H323;
[[Image:Lync_Certificates_device_cert.png]]


Set the Default-Router in your Net:
==== 2. SIPS Interface to Mediation Server ====


AENDERN-STMIB:MTYP=STMI2IGW,LTU=1,EBT=1,TYP=IFDATA,DGWIP=192.168.100.254;


For the internal LEGK you have to configure a unique ID (Alias):
Go to: Administration -> Gateway -> GK -> GW2 and configure these settings:  


AENDERN-STMIB:MTYP=STMI2IGW,LTU=1,EBT=1,TYP=GWDATA,GWID="HGGW01";
# Protocol: '''SIPS'''
# Mode: '''Gateway without Registration'''
# Remote Domain: Enter the '''Mediation Server FQDN'''.
# Local Domain: Enter the '''Innovaphone Gateway FQDN'''.
# Proxy: Enter the Mediation Server '''IP - address'''
# Local Signaling Port: Set the Port where Lync Server will contact (by default Innovaphone GW uses 5061 for SIPS).
# Media Properties: Change the '''General Coder Preference''' to G.711A.
# Media Properties: Change both '''Framesize''' values to 20ms.
# Click '''Ok''' when finished to save your settings.


Also you need a Nuber (GWRNR) for the TSC-Connection. This Number has to be unique, too:
[[Image:Lync_GWX_SIPS_MediaBypassOFF_NO_SRTP.png]]


AENDERN-STMIB:MTYP=STMI2IGW,LTU=1,EBT=1,TYP=LEGKDATA,GWNR=1,GWRNR=899901;


In the next Step we create a Trunk to the HG3550:
==== 3. Innovaphone PBX System Name ====


EINRICHTEN-BUEND:BUNUM=44,NAME="IP-TRUNK"ANZ=30;
* 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.


Now we configure the Line to the HG3550. Here are the following Parameters necessary:  
Go To: PBX-> Config and setup:


*the class of trunk defines pust include the parameter TSCS
# System Name: Enter the '''FQDN''' of the Gateway.
*the parameters Destination Number and Node Number have to be unique
# Activate the '''Use as Domain''' Checkbox.
*as protocol variant we use ECMAV2 with Segmentation 8
*as Trunk is to choose the Trunk-Line you have configured before
*the search mode has to be in descending order
*the device type has to be HG3550IP
*the b-channel negotiation must be no
*in the Loadware parameter bloc is to look for the settings <code>COPPER CABLE,MASTER=YES,SMD=YES</code>


===Configuring the TSC-Connection===
[[Image:Lync_System_name.png]]


To configure the TSC-Connection you have to create the <code>GWRNR</code> as <code>WABE-Index</code>:
EINRICHTEN-WABE:RNR=899901,KZP=QUER;


==== 4. Create IP/PSTN Gateway at Lync Topology Builder ====


You have to route this Index to the IP-Trunk:
EINRICHTEN-RICHT:ART=LRTGNEU,LRTG=45,LDIENST=ALLE,NAME="HG3550GW1",BUNUM=44,ZKNNR=1-1-44,MFVTEXT="",ROUTATT=NEIN,
EMCYRTT=NEIN,INFO="",PZKNNR=0,ZEICHUM=NEUTRAL,CONFTON=NEIN,RERINGRP=NEIN,KPRCAUL=NEIN,KATG=NEIN,CLNAMEDL=NEIN;
EINRICHTEN-LODR:LWR=45,LWREL=ECHOFELD,FELD=1;
EINRICHTEN-LODR:LWR=45,LWREL=ENDE;
EINRICHTEN-LODR:LWR=45,INFO="TSC";
EINRICHTEN-LDAT:LRTG=45,LDIENST=ALLE,LWERT=1,BUNUM=44,LWR=45,LBER=1,CARRIER=1,ZONE=LEER,LATTR=KEINE,VCCYK=4,GW1=1-0;
EINRICHTEN-LDPLN:LCRCONF=LCRMUST,WAPLNUM=0,LWM="899901",LRTG=45,LBER=1,PINDP=NEIN;


The <code>LEGK</code> must be configured in the <code>AMO GKREG</code>. First configure HG3550 as local Gateway, and then create a external Gatway for the innovaphone GW.
Go to: Topology Builder "Site" -> PSTN Gateway -> Add '''New IP/PSTN Gateway''' and configure these settings:


===Configuring the Gateways===
# Gateway FQDN or IP Address: Enter the Innovaphone Gateway '''FQDN'''.
# Listenning Port for IP/PSTN Gateway: Enter the SIP Port set on GW2 Interface (Default 5061 for SIPS).
# SIP Transport Protocol: Choose the '''TLS''' option.
# Click '''Ok''' when finished to save your settings.


EINRICHTEN-GKREG:GWNR=1,GWATTR=INTGW&REGGW&HG3550V2&H323,WAPLNUM=0,WABE=0,LBER=1;
[[Image:Lync_PSTGateway_TLS.png]]
EINRICHTEN-GKREG:GWNR=2,GWATTR=EXTGW&H323,GWIPADR=192.168.100.70,GWRNR=899902,WAPLNUM=0,WABE=0,LBER=1,INFO="INNOVAPHONE";


===Configuring the Call-Routing===
'''Note''': The example screenshot used it's from another Gateway, but to match the previous setup of the GW2 SIPS Interface the FQDN should be PBX.innovaphone.compat


At least the calls from the HG3550 to the innovaphone PBX have to be routed. In this Example we use the prefix 44 and a 4-digit calling number in en bloc dialing:
=== Use SRTP with Microsoft Lync Server 2010 ===


EINRICHTEN-RICHT:ART=LRTGNEU,LRTG=44,LDIENST=ALLE,NAME="INNOVAPHONE",BUNUM=44,ZKNNR=44,MFVTEXT="",ZLNR=44,ROUTATT=NEIN,
* 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).
EMCYRTT=NEIN,INFO="",PZKNNR=44,ZEICHUM=NEUTRAL,CONFTON=NEIN,RERINGRP=NEIN,KPRCAUL=NEIN,KATG=NEIN,CLNAMEDL=NEIN;
* Use of SRTP could be used either with TSIP/SIPS Trunk and either with Media Bypass ON/OFF.
EINRICHTEN-LODR:LWR=44,LWREL=ECHOFELD,FELD=2;
EINRICHTEN-LODR:LWR=44,LWREL=ENDE;
EINRICHTEN-LODR:LWR=44,INFO="INNOVAPHONE";
EINRICHTEN-LDAT:LRTG=44,LDIENST=ALLE,LWERT=1,BUNUM=44,LWR=44,LBER=1,CARRIER=1,ZONE=LEER,LATTR=KEINE,VCCYK=4,GW1=2-0;
EINRICHTEN-LDPLN:LCRCONF=LCRMUST,WAPLNUM=0,LWM="44-XXXX",LRTG=44,LBER=1,PINDP=NEIN;


Here is an example:


==Related Articles==
[[Image:Lync_GWX_PBX_MediaBypassON_SRTP.png]]




Line 146: Line 372:
[[Category:Compat|{{PAGENAME}}]]
[[Category:Compat|{{PAGENAME}}]]


<!-- == Known Problems == -->


== Known Problems ==
== Related Articles ==


[[Howto:Microsoft_Lync_2010_-_Quickstart_Guide|Microsoft Lync Server 2010 - Quickstart Guide]]


* 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, this way no PROGRESS is sent to PSTN. Calls between Lync clients and Innovaphone PBX Users will not have this issue.
[[Howto:Microsoft_-_Lync_Server_2010_-_3rd_Party_Product|Microsoft Lync Server 2010 - 3rd Party Product]]

Latest revision as of 10:13, 25 November 2014

Summary

Test report of innovaphone PBX and Microsoft Lync Server 2010 according the Microsoft® Lync Server 2010 Open Interoperability (CS2010-OIP) IP PBX Program test plan.

The test were successful and all required tests were passed. As a result the Microsoft Lync Server 2010 is qualified as a Engineered Product.

The optional test including call transfers using the SIP Refer-method were not passed, since innovaphone is not supporting using this method for call transfers. However this is just an optional test, call transfer are possible using another SIP Method supported by both systems. The user experience is not affected by this.

Theses tests have been conducted both by innovaphone and by Microsoft's official test lab for Lync certification, tekVizion. Here is tekVizion's test report.


Certification Status

EngineeredProd.png The tests for this product have been completed and it has been approved as a engineered product (Certification document).

Testing of this product has been finalized October, 2011.

The product is certified according to the Unified Communications Open Interoperability Program – Lync Server program.

Applies To

This information applies to

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

More Information

  • All tests were made with Microsoft Lync Server 2010 Media Bypass feature ON, so RTP traffic goes directly from Lync endpoints to the innovaphone PBX.
  • Tests were made with a real Lync Server installation and not with the 'Lync IT Tool', due to some compatibility issues with this tool.
  • The "Enable REFER support" was disabled during the tests, since the innovaphone PBX doesn't uses this method to transfer calls.
  • A Cisco Router 3840 was used to simulate the PSTN connection, a E1 trunk with protocol QSIG was used.
  • An IP3010 was the gateway used as PBX platform during the tests, together with IP110 IP-phones.
  • The certification tests were conducted by 'tekVizion Labs'.

Test Setup Topology

  • Here is the topology of the setup used during the certification tests:

Lync topology example2.png

Test Results

Tested feature Required Result
Audio Test Cases Yes Pass
Basic Call Scenario Test Cases Yes Pass
Conference Test cases Yes Pass
Failover Test Cases Optional Pass
DTMF Test Cases Yes Pass
Early Media Test cases Yes Pass
Hairpin Test Cases Yes Pass
Hold Test Cases Yes Pass
ISDN Test cases Yes Pass
Media Bypass Test Cases Optional Pass
Options Test Cases Optional Pass
REFER Test Cases Optional Not Pass
Security Test Cases Optional Pass


Test Notes

  • Audio Tests - Innovaphone Gateways support Comfort Noise (Payload 13) and accepts from Lync but doesn't generate CN packets (neither phone neither Gateway), instead during silence RTP packets are always sent expect if the option "Silence Suppression" it's enable.
  • Basic Call Tests - When PBX user rejects a call from Lync it retuns "SIP 486 Busy here" and not "SIP 603 Decline". This behavior it's intentional to provide a "polite" message to the remote end.
  • Failover Tests - In order to achieve load balancing from the Innovaphone PBX multiple GWX Interfaces were registered using the same Gateway Object to distribute the calls. Then was configured different Interfaces for each Mediation Pool with failover maps. If we set a Interface to a Mediation Server Pool Gateway will not do load balancing of the calls but only failover if the primary server address it's down.
  • Options - In order to send Options messages to Lync the config option should be added to the config file: !config change add TSIP /options-interval 30 or !config change add SIPS /options-interval 30 so every 30 seconds Options message will be generated to Lync.
  • REFER Tests - Innovaphone doesn't do transfer using REFER Method. Even if supports Refer Method this should be disable with Lync since not all REFER tests were passed.

Test Configuration

Innovaphone Configuration

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.

Note: Of course you will need at least one port license to register the GW-object at the PBX.

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

  • The routes could be very simple, it's important to check the flag "Interworking(QSIG,SIP)" always, for incoming routes from Lync to PBX we have some Prefix too like 5 to reach internal PBX extensions and 0 to reach the PSTN Trunkline on the PBX. Note that in the example we have an extra SIPS Trunk that we will see later how to configure it.

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

Microsoft Lync Server 2010 Configuration

1. Set Media Bypass

Go to: Voice Routing -> Trunk Configuration -> Edit Global Trunk and configure these settings:

  1. Enable the Enable Media bypass checkbox.
  2. Disable the Enable Refer support checkbox.
  3. Click Ok when finished and then Commit Allto save your settings.

Lync MediaBypassON Menu1.png


Go to: Network Configuration -> Global -> Edit Global and configure these settings:

  1. Enable the Enable Media bypass checkbox.
  2. Check the Always Bypass checkbox.
  3. Click Commit when finished to save your settings.

Lync MediaBypassON Menu2.png

2. Set IP/PSTN Gateway & Mediation Server at Topology Builder

  • The creation and edit of Trunks at Lync are made at Topology builder tool, after create new changes we must publish the modifications. Usually during the Wizards we are able to configure the PSTN Gateways but we can skip and do this configuration manually afterwards in the Topology Builder.

Go to: Topology Builder "Site" -> PSTN Gateway -> Add New IP/PSTN Gateway and configure these settings:

  1. Gateway FQDN or IP Address: Enter the Innovaphone Gateway IP - address or FQDN.
  2. Listenning Port for IP/PSTN Gateway: Enter the SIP Port set on GW2 Interface (Default 5060 for TSIP).
  3. SIP Transport Protocol: Choose the TCP option.
  4. Click Ok when finished to save your settings.

Lync PSTGateway TCP.png


Go to: Topology Builder "Site" -> Mediation Pools -> Edit the Mediation Server and configure these settings:

  1. On the Gateway list not associated to the Mediation Server choose the Innovaphone Gateway and then Add Button.
  2. Listenning ports: Ensure that TCP Port it's the same we configured on the GW2 Interface at Proxy (5068 our example).
  3. Click Ok when finished to save your settings.

Lync MediationServer GWS.png

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

Go to: Microsoft Certificate Services Webpage -> Download a CA certificate, certificate chain, or CRL and:

  1. Choose CA Certificate.
  2. Encryption method: Choose DER mode.
  3. Click Download CA certificate and save the certificate file.

Lync Certificates root.png


  • 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


Go to: Microsoft Certificate Services Webpage -> Request a Certificate -> advance certificate request -> Click on Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file, or submit a renewal request by using a base-64-encoded PKCS #7 file and:

  1. Open the request certificate file created before with text editor and copy all information on it.
  2. Paste that information on the Saved Request box.
  3. Certificate Template: Choose MTLS or Webserver (or similar).
  4. Click Submit to apply this request to the CA Server, after that we need to Issue this certificate request on the Pending List and then we can download the certificate file from the Microsoft Certificate Services Webpage.

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

Go to: Topology Builder "Site" -> PSTN Gateway -> Add New IP/PSTN Gateway and configure these settings:

  1. Gateway FQDN or IP Address: Enter the Innovaphone Gateway FQDN.
  2. Listenning Port for IP/PSTN Gateway: Enter the SIP Port set on GW2 Interface (Default 5061 for SIPS).
  3. SIP Transport Protocol: Choose the TLS option.
  4. Click Ok when finished to save your settings.

Lync PSTGateway TLS.png

Note: The example screenshot used it's from another Gateway, but to match the previous setup of the GW2 SIPS Interface the FQDN should be PBX.innovaphone.compat

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


Related Articles

Microsoft Lync Server 2010 - Quickstart Guide

Microsoft Lync Server 2010 - 3rd Party Product