Monday, October 13, 2014

Lync 2013 coockbook announced

It is finally here! One of many projects I have participated on this year has been announced: "The Lync 2013 cookbook" https://www.packtpub.com/networking-and-servers/lync-server-2013-cookbook.

I am proud to have contributed with two chapters to this book. The rest is great work by co-authors Alessio Giombini, Antonio Vargas and Fabrizio Volpe (Twitter nick: @AlessioGiombini, @Vargas_76 and @fabriziovlp)

I hope you find it interesting!

Friday, October 10, 2014

Hah! Never trust the E1 provider

Here is a little problem I ran into after deploying a Sonus 1000 SBA/SBC at customers branch office in Singapore.

The customer had a couple of faxes connected to the old PBX, but instead keeping the analog equipment, they went for a fax service "in the cloud". This is simply done by redirecting incoming calls to the faxes to a number at the provider, the fax is received and forwarded as an email to the destination.

We tested the service by calling from internal lines to the service. This all seemed to be going well (we heard fax tones in the other end, when calling). I set up a redirecting rule in the SBC (A transformation rule) and started testing. But the call never got through. it was immediately dropped after leaving the SBC. According to the logs, we received the following cause code: "Cause No. 28 - invalid number format (address incomplete)"


I immediately tried calling the external provider from a user attached to the SBA, and got through. Quite puzzling.

That's when it was time to dig out the LX tool, and start comparing the working and the non-working calls. And true enough, there was a slight difference between the calls.

Here is what I found on the working calls:


I compared this to the non-working redirected calls:


Now wait a minute, I never told the Sonus to add a numbering type or plan. This called for an investigation of the originating incoming call:


Lo and behold; The incoming call has the type and plan set. And when the call was returned back to the PSTN, these values were all wrong. To solve this situation, I simply manipulated the plan and type in my original transformation rule:


The carrier didn't care about the calling plan and type, as long as the called plan and type was "unknown" they excepted all calls.

The moral of this blogpost? Never trust the trunk provider, and always invest in equipment capable of tweaking all aspects of a call setup ;)

Wednesday, October 8, 2014

It's october

This fall has been really busy, and it isn't over yet!

As I am writing this post, we are less than one week away from the first Norwegian Lync Day, where I will hold a presentation on Lync backup and restore. Ståle Hansen and Knowledge Factory has done a great job to gather highly qualified MVP's and speakers for a day packed with great sessions around our favorite topic: Lync! For more information and/or signup, go to: http://lyncday.no/

When Lyncday is over, it will be just two more weeks until most of us head for Barcelona, and TechedEU. Here I'll be holding a similar presentation around the same topic (Backup and restore / http://teeu2014.eventpoint.com/speaker/details/c27e77c2-7d22-e411-9bad-00155d5066d7).

As a preparation for these to presentations I have gone over my backup script for Lync 2013, and I am planning a major release change with a few new options and a couple of bugfixes. If you do have a bug you want to report in the existing version or have a suggestion for a new feature. Please drop me a line. It's not to late to get your request included.

Here's a sneak peak on some upcoming changes:

  • FEATURE REQUEST: Remove "temp" files after zip creation, to save space (note: Script will still clean files in target directory, older than 5 years)
  • FEATURE REQUEST: Identify RGS servers on 2010 pools, and remove error messages related
  • FEATURE REQUEST: Identify User servers on 2010 pools, and remove error messages related
  • New feature: Added progress bar, to indicate progress within the script
  • Bugfix/New feature: Multiple pools could lead to "file already exist", Script should store pool files in designated pool folders
  • Bugfix: If SQL backupshare already exists, it is now detected and should no longer be causing errors
I won't be able to publish for Lyncday, but it will be out in time for TechedEU