Skype for Business Pool Fail-over & Fail-back Guide

Summary

The guide attempts to details the steps involved in site failover and failback.

Number of factors needs to be considered before site failover,

Active CMS location

During a pool failover that involves the pool hosting the Central Management store, you must fail over the Central Management store before you fail over the Front End pool.

https://technet.microsoft.com/en-us/library/jj204697.aspx

 

Edge Federation Route

For federation relationships with other organizations running Lync Server, inbound federation requests will continue to work as long as you have configured each Edge pool to have a different priority in your SRV records. Any federation requests that come to an Edge pool that is down will fail back and then connect to an Edge pool which is running.

Outbound federation is always set up through one published Edge pool or Edge Server in the organization. If this Edge pool has gone down, you must use Topology Builder to change the outbound federation route to use an Edge pool which is still running

https://technet.microsoft.com/en-us/library/jj687960(v=ocs.15).aspx

 

DNS Consideration

To configure DNS to redirect Skype for Business Server 2015 web traffic to your disaster recover (DR) and failover sites, you need to use a DNS provider that supports GeoDNS. You can set up your DNS records to support disaster recover, so that features that use web services continue even if one entire Front End pool goes down. This DR feature supports the Autodiscover, Meet and Dial-in simple URLs.

Assuming the LAB environment does not have GeoDNS in place and the web services are pointing to source pool “sgpool”, you will need to manually reconfigure the DNS to point the web services to destination pool “klpool”, both internal & external DNS records needs to be considered.

https://technet.microsoft.com/en-us/library/mt346420.aspx

 

Response Group

Response groups does not failover during pool failover. Perform regular backup of response group configuration. Restore them on the destination pool only after failover.

https://technet.microsoft.com/en-us/library/jj205186(v=ocs.15).aspx

 

PSTN Gateway Configuration

Once your front end pool is fail-over, all SfB services are shut down for the source pool. Ensure the PSTN gateway can fail-over calls to destination pool.

 

Download

Skype for Business Pool Failover & Failback v1.1

Sample Configuration Of Call Admission Control in Skype for Business Server

Summary:

The guide convers the sample configuration of CAC, to block inter-site calling via IP-Network and route the calls through PSTN.

CAC

Use case:

Skype for Business users in Singapore office report poor voice quality when calling Skype for Business Clients in Malaysia Office.

Assuming a congested WAN link between the sites, SfB administrator decides to block the calls though IP-Network and route them through PSTN.

Download:

SfB CAC_v1.0

 

Sonus Cloud Link Install Wizard Error

Problem: When installing SfB Cloud Connector on Sonus Cloud link Appliance, you may get the following error “Got an exception deploying CCE: Certificate Chain is broken. Root and Intermediate Certificate needs to be imported: A certificate chain could not be built to a trusted root authority“.

cce-error

Solution: RDP to ASM and Install the Root & Chain Certificate on the Hyper-V host machine.

Explanation: When importing SfB Edge Certificate through the CCE deployment Wizard, the install wizard tries to import the cert into ASM module (Hyper-V hosting the 4 x VMs) however if the host machine does not have the Root CA, you might get above error.

Skype for Business SIP Integration with Sonus SBC

Summary:

The integration notes are based on below voice network architecture and it attempts to detail the configuration requirements on each component involved.
The SFB server is connected to Sonus SBC 2000 using SIP TCP on port 5066, please note that it is also possible to set up a TLS connection if required.
The Sonus SBC 2000 is connected to Avaya CM using E1 Euro ISDN.
The Sonus SBC 2000 acts as a gateway between Avaya (TDM) and Skype for Business (SIP), it also performs the necessary Called Number & Calling Number transformation for the phone users.

SonusIntegration.jpg

Download:

sfb-integration-with-sonus-sbc-2000-v1-1

Install SfB Cloud Connector Edition 1.4.1

Summary:

This guides covers steps involved in downloading and installing Skype for Business Cloud Connector Edition 1.4.1.

Microsoft Technet link https://technet.microsoft.com/en-us/library/mt605228.aspx was used as reference throughout the deployment.

In order to perform a successful deployment, do spend more time on planning and modifying the configuration file “CloudConnector.ini” with accurate values.

The topology assumed here is single instance of Cloud Connector within a single PSTN site.

sfb-cce

Download:

step-by-step-configure-skype-for-business-cloud-connector-edition-v1-1

SfB Cloud PBX User Guide

Summary:

The presentation covers the Skype for Business online PBX features and can be used during SfB roll-out or migration from another pbx.

Cloud PBX Features covered,

  • Call answer/initiate
  • Call delegation and call on-behalf
  • Call forwarding and simultaneous ringing
  • Call history
  • Call hold/retrieve
  • Call transfer
  • Camp On / tag for status change
  • Voicemail
  • PSTN Conferencing
  • Changes that users needs to be aware of: Current pbx vs cloud pbx

Download:

sfb-cloud-pbx-userguide_v1-0

Skype for Business Web App Branding

Skype for Business Web App Branding

Default Web App pageDefautlt

After CustomizationCust

 

  1. Modify Skype Logo

File to be replaced: SkypeLogo.PNG

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Int\Images

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Ext\Images

 

 

  1. Modify Application Name Label “Skype for Business Web App”

File be edited: Lync.Client.MiscClientConsolidated.js

Original Code:

get_applicationTitle: function Lync_Client_Controls_PreAuthArea_PreAuthAreaViewModel$get_applicationTitle() {

return Lync.Client.Controls.Common.ControlResources.get(Lync.Client.Controls.ControlResStringId.applicationTitle);

},

Modified Code:

get_applicationTitle: function Lync_Client_Controls_PreAuthArea_PreAuthAreaViewModel$get_applicationTitle() {

return “Welcome to mylabs WebConf Service” ;

},

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Int\Scripts\UI

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Ext\Scripts\UI

 

 

  1. Modify User Name Label “User name”

File be edited: Lync.Client.MiscClientConsolidated.js

Original Code:

get_userNameLabel: function Lync_Client_Controls_LoginControl_LoginControlViewModel$get_userNameLabel() {

if (this.currentAuthType === 3) {

return Lync.Client.Controls.Common.ControlResources.get(‘GuestTitleText’);

}

return Lync.Client.Controls.Common.ControlResources.get(‘UsernameLabelText’);

},

Modified Code:

get_userNameLabel: function Lync_Client_Controls_LoginControl_LoginControlViewModel$get_userNameLabel() {

if (this.currentAuthType === 3) {

return Lync.Client.Controls.Common.ControlResources.get(‘GuestTitleText’);

}

return “Username(Eg:mylab\\user1):”;

},

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Int\Scripts\UI

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Ext\Scripts\UI

 

 

  1. Modify Password Label “Password”

File be edited: Lync.Client.MiscClientConsolidated.js

 

Original Code:

get_passwordLabel: function Lync_Client_Controls_LoginControl_LoginControlViewModel$get_passwordLabel() {

return Lync.Client.Controls.Common.ControlResources.get(‘PasswordLabelText’);

},

 

Modified Code:

get_passwordLabel: function Lync_Client_Controls_LoginControl_LoginControlViewModel$get_passwordLabel() {

return “Your Windows Password:”;

},

 

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Int\Scripts\UI

C:\Program Files\Skype for Business Server 2015\Web Components\LWA\Ext\Scripts\UI

 

 

Notes:

Spent some time figuring out the files to be replaced and scripts to be edited, thought worth documenting.

Any CU update might overwrite the modified scripts and as a result  you may lose the customization, will need to redo after CU update.

Skype for Business Web Scheduler Branding

Skype for Business Web Scheduler Branding

Default Web Scheduler pageDefautlt

After CustomizationCust

 

  1. Modify Skype Logo

File to be replaced: SkypeLogo.PNG

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Int\Resources

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Ext\Resources

 

  1. Modify Login Form Name “Skype for Business Web Scheduler”

File be edited: W15LoginControl

Original Code:

<h2 class=”LoginFormTitle”>

<%= Resources.SFB_SkypeForBusiness %>&nbsp;<%= Resources.SFB_WebScheduler %>

</h2>

 

Modified Code:

<h2 class=”LoginFormTitle”>

Mylabs Conferencing &nbsp;<%= Resources.SFB_WebScheduler %>

</h2>

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Int\UserControls

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Ext\UserControls

 

 

 

  1. Modify User Name Label “Domain\User name:”

File be edited: W15LoginControl

Original Code:

 

<label class=”label” for=”loginUsername”><%=Resources.LoginUsername %></label>

<input id=”loginUsername” name=”loginUsername” class=”formField” type=”text” maxlength=”256″ />

Modified Code:

 

<label class=”label” for=”loginUsername”>Domain\Username (Eg:mylab\user1):</label>

<input id=”loginUsername” name=”loginUsername” class=”formField” type=”text” maxlength=”256″ />

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Int\UserControls

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Ext\UserControls

 

  1. Modify Password Label “Password:”

File be edited: W15LoginControl

 

Original Code:

<label class=”label” for=”loginPassword”><%=Resources.LoginPassword %></label>

<input type=”password” id=”loginPassword” class=”formField”  onkeypress=”return pageNavigator.SignInOnEnter(this, event);” maxlength=”256″ />

 

Modified Code:

<label class=”label” for=”loginPassword”>Enter Your Windows Password:</label>

<input type=”password” id=”loginPassword” class=”formField”  onkeypress=”return pageNavigator.SignInOnEnter(this, event);” maxlength=”256″ />

 

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Int\UserControls

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Ext\UserControls

 

Modifying Help URL

File be edited: MainWindowControl

 

Original Code:

 

<%=Resources.PrivacyStatement %></a></span>

<span class=”helpText”><a target=”_blank” href=”<%=HelpLink%>”>

<%=Resources.HelpText %></a></span>

 

Modified Code:

<%=Resources.PrivacyStatement %></a></span>

<span class=”helpText”><a target=”_blank” href=”https://google.com”&gt;

<%=Resources.HelpText %></a></span>

 

 

File Locations:

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Int\UserControls

C:\Program Files\Skype for Business Server 2015\Web Components\Web Scheduler\Ext\UserControls

 

 

Notes:

Spent some time figuring out the files to be replaced and scripts to be edited, thought worth documenting.

Any CU update might overwrite the modified scripts and as a result you may lose the customization, will need to redo after CU update.