Call Forwarding Configuration Between Skype for Business and Audiocodes Mediant 800

As you all know, in a PSTN call forwarding scenario, Skype for Business\Lync server always forward the original caller ID to PSTN. In an ISDN, this will be fine as PSTN provider will mask the calling number with the pilot number of the ISDN.

But, in a PSTN SIP Trunk scenario, this will be problematic as SIP Trunk provider will refuse to send any numbers that are unknown to the trunk. Basically, the calling number presentation must have a number that belongs to the SIP trunk.

This issue an be overcome by employing IP-to-IP Outbound number manipulation to manipulate the calling number and replace it with any number that belongs to the SIP Trunk. The downside of this method is that, when ever a call forward configured on Skype for Business\Lync client, the call will get forwarded to the configured destination with the number presentation of pre-configured number and not the original DID of the user. Some organizations accept this as it is but in my experience, most prefer to have the user DID be sent as the calling ID.

With Audiocodes, a SIP header manipulation rule can be configured to cater this requirement. Before doing that, there is a small configuration change need to be done on Skype for Business\Lync server voice routing. In the Skype for Business\Lync control panel, “Trunk Configuration”, enable “Enable forward call history” and save. Let it to replicate the changes. Capture










Once enabled, run a logging on SBC and see if the “Diversion” header appears. The Diversion header will contain the DID of the user that forwarding the call.
Contact: <sip:862712345;ext=12345@;ms-opaque=a30ebed1bacc5eac>
Supported: 100rel
Diversion: <sip:862712345;;user=phone>;reason=unconditional;counter=1
User-Agent: Mediant 800B/v.7.00A.035.012
Privacy: none
P-Asserted-Identity: <;user=phone>
Content-Type: application/sdp
Content-Length: 382
o=- 1673518669 1456751675 IN IP4
c=IN IP4
t=0 0
m=audio 7760 RTP/AVP 8 0 97 18 13 101
c=IN IP4

Now the user DID number is appearing in Diversion SIP header, a message manipulation rule can be configured and assigned to SIP trunks IP Group against “Outbound Message Manipulation Set”

Go in to SBC Configuration and in “Msg policy & Manipulations”, create a Message Manipulation rule as below;


Once the header manipulation has been configured, the “FROM” header will get modified from the content that present in “Diversion” header.

13:37:42.094 : : NOTICE : [S=304817] [SID=8a25e1:12:26893] INVITE;user=phone SIP/2.0
Via: SIP/2.0/UDP;branch=z9hG4bKac819203857
Max-Forwards: 10
From: <sip:862712345;;user=phone>;tag=1c427358178;epid=DBF2EBCAFA
To: <;user=phone>
Call-ID: 6326964502212016133741@
Contact: <sip:862793101;ext=3101@;ms-opaque=a30ebed1bacc5eac>
Supported: 100rel
Diversion: <sip:862712345;;user=phone>;reason=unconditional;counter=1
Authorization: Digest username=”N9744″,realm=””,nc=00000001,nonce=”BroadWorksXijp9b5qgTla8pieBW”,Cnonce=”Default_Cnonce”,uri=””,qop=auth,algorithm=MD5,response=”0fa04b1d8cf108f8f48545baa53362cb”
User-Agent: Mediant 800B/v.7.00A.035.012
Privacy: none
P-Asserted-Identity: <;user=phone>
Content-Type: application/sdp
Content-Length: 382

At this point, the call must be ringing on the forwarded destination and it should be presenting with the forwarded user’s DID number instead of any fixed generic number.

Microsoft’s Cloud PBX based on Office 365

Microsoft have announced bunch of new services to their Skype for Business Preview services that are based on O365. One of the services that was announced, was the preview availability of the cloud PBX with on-premises PSTN Connectivity.  With the cloud PBX service, organizations will now have the ability to leverage their existing on-premises PSTN lines such as ISDN or SIP Trunks to terminate calls to users that are enabled for O365.

What you need to have.

Before jumping on to preview Cloud PBX services, there’s a very important prerequisite that need to be fulfilled. That is having a Lync\Skype for Business Server hybrid setup already in place that configured with Enterprise Voice. Also, you would need to have Office 365 E4 licenses for the number of users that are enabled within Office 365.

This option is available for organizations that are having Lync 2010 servers that are running with CU no earlier than October 2012. But, the catch is that, they need to have Lync server 2013 or Skype for Business Server 2015 Edge servers to support the hybrid integration. So if you’re having Lync Server 2010 and considering Cloud PBX, it’s high time to move to Skype for Business Server 2015.

Features and Drawbacks.

With the Cloud PBX service, you now get to configure Enterprise Voice for O365 enabled users with desired Voice Policies and PSTN Usages. But, not all the features that available for on-premises users be available for Cloud PBX enabled users. Cloud enabled users will miss out on using call park, private line and several other features. Below are the list of Enterprise Voice features that are available for Cloud enabled users;Capture

Even though cloud enable users are losing some of features, most of important and critical features are still available for them which is really good.

How to Make it Better.

Microsoft have announced the availability of Azure Express Route to Office 365 several months ago. Organizations can leverage on this to enhance the connectivity to O365 with assuring a better bandwidth availability and control rather than using the standard internet services. This would also benefit in configuring Quality of Service (QoS) for media traffic that is essential to improve the media quality and overall cloud user experience. On side note, this would improve the user sign in time as well. Below is a sample diagram that illustrate the connectivity between corporate network and O365 over express route. Azure-ExpressRoute-1

Moving users to Cloud PBX and enabling for Enterprise Voice.

Once the Hybrid setup in place, you can move users to O365 and enabled Enterprise Voice for them. Before that, since the service are still in preview, you need to get a promotion code from Microsoft. The promo code can be retried by registering for service using URL. If you have the promo code already, follow the steps to enable uses;

  • Enable users for Enterprise Voice (performed while the users are homed on-premises).
  • Assign a voice routing policy (performed while the users are homed on-premises).
  • Obtain and activate a promo code, so that you can preview this feature.
  • Synchronize users to the cloud and assign licenses (performed using Office 365).
  • Move users to Skype for Business Online (performed using Windows PowerShell on-premises, but using your Office 365 administrator credentials).
  • Enable the users for Enterprise Voice and Cloud PBX Voicemail (performed using Remote PowerShell).

Migration of user accounts should be none intrusive and users will not lose any configuration that they made on their client.

As mentioned above, the service is still on it’s preview stage and it will become GA pretty soon and this would be a one step forward for the organizations that are looking forward to move in to Office 365.

Supported Survivable Branch Appliance (SBA) for Skype for Business

Since the Skype for Business server 2015 public release, one of the concerns that came up when upgrading existing Lync Server platforms to Skype for Business, is the support for SBAs. Microsoft issued a statement mentioning that the existing SBAs that are running with Lync server 2013 image, will be supported for Skype for Business till the hardware vendors come up with the Skype for Business image on their appliances.

Now, Sonus has announced that their newer software version V 5.0 for SBC 1000\2000 that supports Skype for Business Server, will be released on 28th of July 2015.

Audiocodes however, stated that their E-SBC (Enterprise SBC) appliance will fully support Skype for Business server 2015 since 07th of July 2015.

What’s new with Sonus Version 5.0 

Key Features in Release 5.0 in support of Skype for Business deployments include:

  • Presence: The new presence feature provides Skype for Business users with presence reporting when engaged in calls from non-Skype for Business endpoints.
  • Provisioning templates: The updated provisioning templates significantly reduce the complexity of configuring Skype for Business interworking. This feature is designed to enable an enterprise to deploy its Skype for Business application with greater speed-to-market, saving time and money.
  • Survivable Branch Appliance Support: Delivering continued market leading support for Survivable Branch Appliance (SBA) functions, this feature ensures that real-time communications are delivered even if the wide area network (WAN) goes down.

For more information about this software release, please visit;

Audiocodes Enterprise Session Border Controller (E-SBC)

Based on the statement that released on 07th of July, their E-SBC appliance is supported for the Skype for business Server. However, it’s not clear that the SBA image that been used within the SBA, is for Skype for Business Server or just the Lync Server 2013.


For more information about the Audiocodes E-SBC product range, Please visit;

So, if you have plans to upgrade existing Lync server platforms to Skype for Business Server, now you have the SBA component addressed by above product range. Plan the upgrade schedule with keep the software release days in mind.

In-place Upgrade Lync Server 2013 to Skype for Business Server 2015

It has been a while that the Skype for Business server 2015 released for public. I reckon it would be the time to upgrade the existing Lync server 2013 platform to Skype for Business Server 2015.

Before moving forward, there are concerns that need to be addressed upfront. The major one would be the overall downtime that occur because of the upgrade. If the existing deployment have multiple pools, then users can be moved to one of the pools and get the other one upgraded and have services running as usual. But, if there’s only one pool available, then the upgrade could be a potential risk and a lengthy downtime.

Also, it’s important to have an idea of what CU version that the existing Lync server 2013 platform is running. Make sure to upgrade the Lync server pool before moving forward with the Skype for Business upgrade and also plan adequate downtime that incorporate the existing pool CU upgrade as well as the in-place upgrade.

Moving forward with the Skype for Business 2015 upgrade, install the Skype for Business server Admin Tools on a domain joined machine (admin tools would not install on any Lync server 2013 front end servers). Download the topology from existing deployment, upon installing of the admin tools.Capture5

Once downloaded, drill down to the existing Lync server 2013 pool. Right click on the pool and select to “Upgrade to Skype for Business Server 2015”Capture6

Select “Yes” on the confirmation window. Capture7

As soon as selecting “Yes”, the Lync server 2013 pool will be moved to “Skype for Business Server 2015” section. This is as expected and should not be worried. Capture8

Now, publish the topology by selecting “Publish Topology” in “Action” menu.Capture9

The publishing process is as same as Lync Server 2013.  Do not change anything related to the Databases. Leave everything as it is.Capture11

Select “Next” and proceed with the topology publishing process.Capture12

Open up the “to-do list” to check that need to be done next. Capture13

Log in to Lync Server 2013 Front End server and run the Skype for Business Server 2014 set up from media. Capture3

Select to connect to the internet and check for updates. It will download the required windows patches and install. Capture4

Upon completing the download process, select next to proceed with the deployment. As for the first step, it will check the status of the existing pool. It will error out if the pool services are still running.Capture14

Open up the Lync server 2013 management shell and run Stop-CsWindowsServices to stop the Lync server services. This process need to be done on all front end servers. Capture15

Once all the services are down, retry the deployment process. It should continue through the process. It would take up to 45 – 60 minutes to complete the update. The upgrade process can be run on all Lync server 2013 front end servers simultaneously. No need to do it one by one.Capture1

select “Ok” to complete the upgrade process. Capture16

Now, the upgrade process is successfully completed. Wait till the process completed on all front end servers. Upon completion, run the command Start-CsPool -PoolFqdn <pool fqdn> . This is a new command that introduced in Skype for Business Server 2015. This command can be used to stop and start the pool without being worried about messing with the fabric and the quorum.Capture17


Confirm that all the windows services relate to Skype for Business server are up and running.Capture18

The Lync Server 2013 clients should get a prompt that the back end server is changed to Skype for Business and it require to restart the client.Capture20

Upon restarting the Lync 2013 client, the client will change the skin to Skype for Business 2015.


The upgrade process is now completed. Carry out the test plan to verify the features and functionality of the platform.

Integrate Lync Server 2013 with O365 Exchange for Unified Messaging

Lot of clients are now moving away from on premises Exchange and in to O365 these days. Exchange online came a long way and grown up a lot. In terms of Unified Communications, how should we get Voicemail out of O365 exchange?. And what will be the configuration that involves in?. To answer those questions, let’s have a look at what the prerequisites are and what the configuration should be.

Before moving forwards, there’s several critical points need to be addressed and understood;

  • On premises Lync Server 2013 deployment must have Edge servers installed and federation enabled
  • Edge server DNS resolution should be done via the External interface and not over the internal. It must have public DNS servers configured instead of internal DNS.
  • SRV record must be configured in public DNS and resolve against the access edge FQDN (
  • The O365 Tennent domain must be set to “Authoritative” accepted domain

Form above mentioned 2 points, I cannot stress the importance of proper DNS configuration enough. If the DNS wasn’t properly configured, the whole partner federation component will get broken as a result and it will not be a pleasant experience.

To check if the domain is accepted and authoritative within O365, below command can be used

Get-AcceptedDomain  | Format-List

So, to begin with the configuration within Lync Server, verify the configuration of the Access Edge. It should be as mentioned below;Capture4

Next, a Hosting Provider needs to be configured. To configure this, run the command; New-CsHostingProvider -Identity “Exchange Online” -Enabled $True -EnabledSharedAddressSpace $True -HostsOCSUsers $False -ProxyFQDN “” -IsLocal $False -VereficationLevel UseSourceVerificationCapture1

Now, create a Hosted Voicemail Policy. This is the policy that get assigned to a user who needs to be enabled for O365 Unified Messaging. To configure the policy, run the command; New-CsHostedVoicemailPolicy -Identity “CloudUMPolicy” -Destination -Description “Hosted Voicemail Policy for Lync Users” -Organization “”Capture8

In above command, the Organization parameter must be specified as the tenant name and not the shared name space. Ex, (shared name space), (Tenant Name). Then run; Invoke-CsmanagementStoreReplication to replicate the changes.

Now to create UM contact object for Subscriber access and Voicemail. Usually for on-premises Exchange, we use OCSUMUtil.exe tool to create these objects. But in O365 UM scenario, we have to use Lync Server management Shell to create these objects. In order to create the contact object for Subscriber Access, the command; New-CsExUmContact -SipAddress -RegistrarPool -OU “OU=ExUmContacts,DC=domain,DC=com” -DisplayNumber -AutoAttendant $False -IsSubscriberAccess $True can be used. Capture

Now we are done with Lycn server bits and move on to O365 portal to configure the UM Dial Plan. Log in to the O365 portal using and go to the Admin Centre. Capture2

Go to “Exchange” and select “UM Dial Plans”. Select “+” to create a new dial plan. Configure the dial plan name, number of digits of an extension. Select “SIP URI” from the drop down for “Dial plan type”. Set the language, the country code and save the configuration.Capture2













Open the newly configured Dial plan and select “Configure” to configure the rest of the parameters of the dial plan.Capture3












Move to “Outlook Voice Access” tab and configure the DID number for the Subscriber Access in E.164 format as shown below. If you want to use a custom greeting, the audio file can be uploaded in to the “Default Greeting” configuration.Capture











Then go to “Settings and configure the operator extension. This will help to transfer the calls to the operator, if the caller couldn’t be served by the subscriber access component. Capture5











Next to configure the “Dialling Rules”. Dialling rules are configured to dictate which number or number patterns can be routed via the subscriber access as well as the auto attendant. Usually, the dialling rules are configured to route all digits without any restriction, unless if there’s a special requirement that need to configure specific numbers. Configure the dialling rules as mentioned below. This dialling rule will be later on assigned to the Um Mailbox policy as well.Capture6

Now to assigned the dialling rule to the dialling authorization table. Configuring this will allow users who are coming in to the Subscriber Access and Auto Attendant to reach out to internal user extensions. Assign the dialling rule to the authorization table and check “Calls in the same dial plan” and “Allow calls to any extension” components.Capture7

In Transfer and Search tab, verify that the “Transfer to Users are selected. The rest of the parameters can be left alone.Capture8

Now, go back and open up the configured Dial Plan and double click on the default UM Mailbox Policy. This policy get created automatically upon completion of the UM dial plan creation.Capture2

In “General” we usually leave the parameters as it is. If required, some of the UM functionalities can be controlled within this section.Capture15

In The “Pin Policy” tab, you can change the number of digits that are required for the PIN and whether to allow the common patterns for the PIN. Usually, the PIN would be set to 4 digits length and allow common patterns. Capture16

The  “Dialling Authorization” is the most important part within the UM Mailbox policy. If not configured with a number policy, it will not allow calls to be routed to internal extensions from the subscriber access or auto attendant. Assign the previously configured number policy to allow all digits and “Calls within the same UM dial plan” and “Call to any Extension” should be checked.Capture17

This is all that is to the Subscriber Access component of the Exchange UM in O365. The same steps can be followed to configure the Auto Attendant. It will require to configure a UM Object for the Auto Attendant in Lync Server and then need to configure the Auto Attendant within O365.

Enabling Skype for Business UI For Lync Server 2013 and Skype for Business Online

As you all might know by now, Microsoft have started rolling out the Skype for Business client over windows update as well as a standalone update. The patch is called KB2889923 and once installed, the client UI can be switched from Lync 2013 in to Skype for business, There are couple of ways to get this update. One is to run windows update on the client PC which will pick the update up from Microsoft. Add the other method is to download the standalone update package and install it on the client. The update can be downloaded from here I took the long path and ran windows update on my PC that picked up the update as expected and updated the client. Capture4

Once the client got updated, it will immediately complained that the System Administrator only allowed to use Lync UI and not the Skype for Business UI. Upon restarting the client, it reverted back to the Lync 2013 client,Capture1

So, to allow the Lync client to work instead of Skype for Business client, it needs to be enabled within the client policy which the user is assigned with. To have the “EnableSkypeUI” policy entry, the Lync Server 2013 platform should be running on no earlier than November 2014 CU update. Since Microsoft override the current CU with the new one in official download page, the latest Lync Server 2013 update can be downloaded from here. Once the server is up to date, create a new client policy as “Enable Skype UI” by running the command “New-CsClientPolicy -Identity “Skype UI Enabled“. The reason behind not enabling the feature for the Default client policy is that, if it enabled for default, it will get rolled out for the entire client fleet and it will end up in massive confusion. It’s always better to create a new User based client policy and assigned to users who suppose to have the feature turned on. Once the new client policy has been configured, run the command “Set-CsClientPolicy -EnableSkypeUI $True -Identity “Skype UI EnabledCapture

Now we have the client policy configured to enable Skype for Business UI, the policy need to be assigned for the users who required to have the feature turned on. This can be done either from the Lync Server Management Console,Capture5

Or can be done from Lync Server Management Shell by running “Grant-CsClientPolicy -Identity “User Name” -PolicyName “Skype UI EnabledCapture3

The user account is now enabled to have Skype for Business UI instead of the Lync 2013 client. It will take some time for client to pick up. Once it’s done. It will come up with an alert mentioning that the organization is rolling out Skype for Business and restart the client to enjoy the new features of the Skype for Business client.Capture2

Upon restarting the client. It will start as the Skype for business client and full features and functionality which designed to be delivered from client end will be available to use despite the fact that the back end server is still Lync Server 2013.Capture6

That’s all is there to know about rolling out the Skype for Business client within the organization that running with Lync Server 2013 back end servers. It’s all about planning the roll out properly and managing the client policies properly so that it will not end up in a confusion. The same setup is available for O365 Skype for Business (Lync) online. Please use the official Office Blog here which explains how to do the switch over from Lync 2013 to Skype for Business.

What’s new with Skype for Business Client

Microsoft released the preview version of Skype for Business client last week and by the look of it, it seems to have a make over session from Skype department. Even though it now comes with a flashy new skin, from under neath it hasn’t changed much from it’s predecessor.


At a glace, it has the same tabs that’s Lync client had except for more “Skype” like icons. In fact, the “Recent Calls”, “Dial Pad” and “Calendar” features are exactly as it is compared to the Lync client. The tabs are how how it should be and nothing much to improve in that front. There hasn’t much changed in “Options” apart from changing all the reference from “Lync” to “Skype for Business”.

Having said that, Microsoft have made some significant changes to the way that client reacts while on a call. They moved away from much confusing “Hover” concept on to more back to basic “Click” option which made life much easier for everyone. Now, transferring a call is just a matter of few clicks.


Another excellent feature that came from Skype, is the call control menu on desktop while the conversation window is minimised. The small window comes up with Mute and Hang up button when the main window is minimised and it change the picture based on the active speaker. It would have been excellent if Microsoft went an extra mile and add Call Transfer and Hold buttons in to it so that it looks more complete and would be ideal for a reception user.


Further more to the improvements, the Skype for Business client now have animated emotions just like Skype does and introduced new set of tones including a new ringing tone. The back end server i was testing the client with was, Lync Server 2013 server platform and there are no complaints about the functionality.

The other and most anticipated change would be the SILK codec activation. SILK is the codec that Skype use which enables it to sustain an audio call with a better call quality even the internet connection is not that good. Even in Lync 2013 client, SILK was there in the SDP list but, it didn’t participate in an active audio conversation. Even in a call between Skype and Lync 2013, it used G.722. In Skype for Business client, it’s all SILK. So to test this, I made a call between 2 Skype for Business preview clients and it does seems to be settling for SILK instead of G722 or RTA, unlike the typical Lync 2013 client would do.


So where is the full and final client coming from?. Unlike Lync 2013 client which came along side with Office 2013, Skype for Business client delivered as an update to the existing Lync 2013 client. This update scheduled to roll out in 14th April. The default UI for those who use Lync today will still be Lync 2013 even after running the update. If you want to change the UI to Skype for Business, then there is a switch available in Client policy that can enable the Skype for Business UI. It is already been published for Skype for Business online and still waiting for Skype for Business on premises.

For more information about the UI switch in Skype for Business online, visit Office Portal “Switching between the Skype for Business and the Lync client user interfaces”

In brief, it does look good that the Lync client and well presented. But underneath, old “Lync” spirit is pretty much alive and kicking with addition the of SILK. The Skype for Business server is rumoured to be out in early May and we all can look forward to an exiting time ahead. The Skype for Business Preview client can be downloaded from Microsoft Evaluation Centre.