Skype for Business Response Groups Diagrams

Standard

This is something I was looking for every time I had a deployment with multiple Response Groups.

Customers and management would usually like to see a graphic chart of how the Response Groups’ workflows work, what are the timeout and over flow options, what’s the chosen routing method for each group,  and who are the users in each group.

Looking at Matt Landis‘ great Get-csRgsWorkflowDiagram script, I was inspired (and in need) to do something similar.

Took a while to get it where I wanted, but the version published here now is one I’m very happy about and it actually gives me everything I was looking for.

It’s actually two files;

  • One file is the script that you should run from your PC.
  • The second file is a custom Visio stencil (.vss file) that will be downloaded to your “My Shapes” folder (That’s always in your “My Documents” folder after you install Visio) and will provide the Visio images for the script. You can find it here if you wish to download it to your machine beforehand.
    The script will detect proxy\download issues and will prompt you to download the VSS file manually if required.

Prerequisites

  • Run this script from your workstation – not from the server. It doesn’t matter if your workstation is in the domain or not.
  • You’ll need an installation of Visio on that machine.
  • PowerShell 3.0 is a must.
  • ADDS RSAT is required if you’re sing Active Directory Distribution Groups for some of your Response Groups’ groups. We’re using the AD PowerShell Module to expand these groups and list their users.
  • Your Lync\S4B pool’s FQDN and administrator credentials.
  • Your Execution policy set to Bypass, at least until I start signing my scripts…

Running the script

From PowerShell, run the file, it will immediately prompt you for your Pool’s FQDN:

Pool Name

Enter your pool’s name and you’ll be prompted for credentials:

Creds

The script will generate a list of all your Response Groups. Pick up a Response Group nunmber from the list, or hit 0 for all Response Groups. Each workflow will be drawn in a new page:

WF List

If required, it will download the Visio stencil and place it in your “My Shapes” folder:

VSS

The script will start drawing the diagram in the background:

Drawings

Upon completion, the script will auto-save the file to your My Documents folder:

Path

The file is saved with the workflow’s name and the creation date:

File

And is ready to be opened:

Visio Window

For multiple Response Groups you’ll have multiple pages, each with the Workflow’s name.

Diagrams are scaled to fit the pages, but might be larger due to large number of agents in a group.

Known Issues

  • This script was tested in English, you might experience some issues if you’re running Visio under a different language.
  • Windows 10 OS build 10565 can’t install ADDS RSAT – the script will not expand Distribution Groups.

Download

Please download the script here.

Advertisements

Install Skype for Business Server 2015 prerequisites on Windows Server 2008R2, 2012 and 2012R2

Standard

Skype for Business Server 2015 is here now, along with a new set of demands to install it right on your Windows Server. Here’s how to get it done: Windows Server 2008R2: Microsoft recommends that you only install Skype for Business Server 2015 on Windows Server 2012 or 2012R2. However, if you’re in-place upgrading from an existing installation of Lync 2013, you might like to use your existing Windows 2008R2 server. The following procedure assumes you already have Lync 2013 installed on your system, so all prerequisites should already be installed.

  • First, make sure you’re patched and up to date with Windows updates.
  • Download and install KB2533263.

Windows Server 2012:

  • First, make sure you’re patched and up to date with Windows updates.
  • Download and install KB2858668.
  • Run the following from an elevated PowerShell console:

Add-WindowsFeature RSAT-ADDS, Web-Server, Web-Static-Content, Web-Default-Doc, Web-Http-Errors, Web-Asp-Net, Web-Net-Ext, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Http-Logging, Web-Log-Libraries, Web-Request-Monitor, Web-Http-Tracing, Web-Basic-Auth, Web-Windows-Auth, Web-Client-Auth, Web-Filtering, Web-Stat-Compression, Web-Dyn-Compression, NET-WCF-HTTP-Activation45, Web-Asp-Net45, Web-Mgmt-Tools, Web-Scripting-Tools, Web-Mgmt-Compat, Desktop-Experience, Telnet-Client, BITS -Source D:\sources\sxs

  • -Source D:\sources\sxs” is the location of the .Net framework installation files, located on the “Sources\SXS” folder on your Windows Server 2012 installation media. You can point this to any other location that has this data.

Windows Server 2012R2:

  •  First, make sure you’re patched and up to date with Windows updates.
  • If you’re running an in-place upgrade from Lync Server 2013, Download and install KB2533263. All prerequisites should already be in place.
  • For a new installation of  Skype for Business Server 2015, run the following from an elevated PowerShell console:

Add-WindowsFeature RSAT-ADDS, Web-Server, Web-Static-Content, Web-Default-Doc, Web-Http-Errors, Web-Asp-Net, Web-Net-Ext, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Http-Logging, Web-Log-Libraries, Web-Request-Monitor, Web-Http-Tracing, Web-Basic-Auth, Web-Windows-Auth, Web-Client-Auth, Web-Filtering, Web-Stat-Compression, Web-Dyn-Compression, NET-WCF-HTTP-Activation45, Web-Asp-Net45, Web-Mgmt-Tools, Web-Scripting-Tools, Web-Mgmt-Compat, Desktop-Experience, Windows-Identity-Foundation, Telnet-Client, BITS -Source D:\sources\sxs

  • -Source D:\sources\sxs” is the location of the .Net framework installation files, located on the “Sources\SXS” folder on your Windows Server 2012 installation media. You can point this to any other location that has this data.

You’re all set and ready to install Skype for Business Server 2015 now.

First glimpse at the Skype for Business client

Standard

So, word is out – the new client is here. How does it look like and what are the big changes? Let’s have a look: (Click on the images to enlarge)

The client is branded with the Skype for Business logo and name, and has a similar feel to the consumer version:

S4B Client

Similar to the Lync 2013 client, if you hover over a contact’s picture, you can see the quick options menu:

Hover Preview

The number pad tab is colourful. The UM piece is missing the playback speed feature that was introduced in Lync 2013.

Numpad

The IM window will always show the participants. You can expand this to see a full list of all participants:

Video preview is similar to the one we’re familiar with in Lync 2013:

Video Preview

And so is the call option menu:

Call select

Content sharing button is similar to the Lync 2013 client with a nice preview of the desktop (Not shown here):

Presentable

PowerPoint sharing within a Lync 2013 Server environment uses Office Web Apps, just like the Lync 2013 client:

PPTSharing

The greatest improvement maybe is to the call window;

Skype-like feeling:

Calling

PSTN Navigation options: Transfer within a click of a button, instead of a quick programming tutorial:

InCallWindow

And no more “Where’s my conversation window? How do I hang up or mute?!” as we have the Skype-like hover window:

Hover window

Oh, and one last small thing: Every active window has the option to change views during a call:

View

Lync for Windows Phone update—more settings for voice calls – Office Blogs

Standard

As published in the Lync blog today, Lync for Windows Phone has more settings for voice calls:

VoIP always—The device will use a Wi-Fi connection, if available, to place the call. If Wi-Fi isn’t available, the device will defer to the 3G/4G data plan and the Lync voice calls will be initiated over that connection.

VoIP over Wi-Fi only— The device will use a Wi-Fi connection, if available, to place the call. If Wi-Fi can’t be found, this setting instructs the Lync mobile service to connect you using Call via Workplacing a call to your phone first, then to the destination number.

Cellular—The Lync mobile service will directly place a call to your phone number using Call via Work and then complete the call to the destination.

Read the full article in the official Lync blog:

http://blogs.office.com/2014/12/10/lync-windows-phone-update-settings-voice-calls/

‘Tis the season to prepare – Add Ireland Public holidays for 2015 to Lync Server

Standard

It’s this time of the year again, and the most common question is “What do we do when we’re going on holidays?”.

The answer is here! (That is, if you live in Ireland :)) – the attached script will add all Public holidays for 2015 …And then some:

According to the Citizen Information Board, the following are Public Holidays in Ireland in 2015:

  • New Year’s Day (1 January)
  • St. Patrick’s Day (17 March)
  • Easter Monday (This year it’s 4 April)
  • First Monday in May, June, August (4 May, 1 June, 6 August)
  • Last Monday in October (26 October)
  • Christmas Day (25 December)
  • St. Stephen’s Day (26 December)
    Good Friday is not a public holiday.

The script will add all of the above and the following:

  • Christmas Day 2014 (25 December)
  • St. Stephen’s Day 2014 (26 December)
  • New Year’s Day 2016 (1 January)

You will need to check the new holiday set box for your RSG Workflows to activate your holiday configuration.

To run the script, simply run it one of your Lync servers. The script will confirm that you have local admin permissions and will prompt you for automatic elevation if necessary.

then, it will search for and display your existing application servers, please choose the one(s) running your RGS.
The new improvement to the script is that it will ask you whether you’re using a 12-hour or 24-hour configuration on your machine to determine how to run.
Once you choose 12 or 24 hour configuration, the script will run and add a holiday set called “Ireland Public Holidays 2015”.

Holidays

Download the script here.

Lync 2013 E.164 CLI and carriers (It’s that Plus sign!)

Standard

If you’re using Lync properly, you must have all your numbers in accordance with the E.164 format, as recommended by Microsoft and as often preached by Ken Lasko.

There are many benefits for using E.164, but – like any good thing – it comes with some flaws. One of these flaws when using Lync 2013 is that Lync will cease normalizing numbers that are prefixed with +.
The moment you add the ‘+’ sign to your number, Lync will consider it already normalized and will not process any more rules.

This can cause issues with some providers that require us to remove the leading ‘+’ sign from the number.
The work around for dialled numbers (Or as Lync describes it “Called Numbers”) is to use the Set-CsTrunkConfiguration command to remove ‘+’ sign at the trunk level by adding the parameter -RemovePlusFromUri $true.

This is all good for numbers Called – but what about numbers Calling? How can we manipulate the “Source” number?
If we look at a trace from Lync we can see that the destination number is stripped from it’s leading ‘+’, but the source number still has that annoying sign, although I have a rule that says it’s removing it:

With plus

The SIP invite shows the issue:
INVITE sip:3531891170170@MediaGateway.y0av.local;user=phone SIP/2.0
FROM: <sip:+35314396804;ext=6804@y0av.com;user=phone>;epid=3DFA3756A7;tag=1e448bc93
TO: <sip:3531891170170@MediaGateway.y0av.local;user=phone>

As you can see in the image above, the ‘+’ sign is removed from the destination number, but it’s still there on my source number.
This might result on certain carriers dropping the call since they’re expecting the CLI with no ‘+’.

The workaround:

If you’re working with a gateway or a SBC, you’ll usually be able to work around this issue by stripping the ‘+’ there, simple as this.

If you’re working with Lync only and using a direct SIP trunk to your provider – it’s easy too!
The numbers are not normalized due to Lync’s lack of ability to ignore the rest of the data in the FROM line; when we’re creating normalization rules within Lync, we will usually be looking at numbers and specific characters, not the entire weird string.
The workaround then, is to treat the entire string as… a string.
I add the following rule for my “Calling Numbers” manipulation in the trunk:

Rule

This rule says that whenever a number starts with a plus and has at least 8 characters (ANY character) following it, we should ignore the ‘+’ and send only the characters:
Pattern to match: ^\+(.{8,})
Translation rule: $1
Of course, you can change that to look for more numbers if you have other rules there.

Once the rule has been placed and committed, traces look like this now:

Without Plus

The SIP Invite shows the difference:
INVITE sip:3531891170170@MediaGateway.y0av.local;user=phone SIP/2.0
FROM: “Yoav Barzilay”<sip:35315267877;ext=7877@y0av.com;user=phone>;epid=3DFA3756A7;tag=c9b24cf3b
TO: <sip:3531891170170@MediaGateway.y0av.local;user=phone>