Monday, 16 February 2015

What's New in Skype for Business Server 2015?

Skype for Business Server 2015 is the successor to Lync Server 2013, and is expected to be released during the first half of 2015. This is a running commentary of the Skype for Business (Skype4B) features that are available for public consumption.

Server Roles
  • Video Interop Server (VIS) is a new role introduced to enable interop with conferencing vendor products. VIS is essentially a video gateway between Skype4B and legacy video conferencing solutions (VTC's)
    • VIS has no transcoding capability so VTC's will need to support H.264
    • VTC users can call Skype4B users, but not the other way around
  • Call Quality Dashboard (CQD) server role
    • The CQD in Skype4B leverages SQL Analysis Services (SSAS) to improve BI within Skype for Business
    • Skype for Business client that will ask the user for their feedback at the end of a call. This data can be compared to what the server has reported


Clients
  • Revamped Windows client more closely matching the Skype (consumer) user experience

  • Improvements to smartphone apps, in particular:
    • Resolving the long delay sending IM's to mobile users
    • Incoming IM's being lost - This will be addressed by applying the "Auto Accept" logic used by the desktop clients to accept IM's on the best available endpoint
    • Conversation history is addressed by the introduction of a uniform server-based conversation history available to all endpoints. The implementation leverages Lync Storage Services to store conversation history directly in Exchange using EWS, and thus removing the dependency on the client to do so. This will only be supported on Exchange 2013+
    • Multi-factor authentication 
  • The Skype4B Web App will support WebRTC removing the need for client plugins
  • Rooms get the Surface Hub, a 55” HD or 84” 4K collaboration tool. At this stage it is not Microsoft's intention to replace Lync Room System


Enterprise Voice

  • Call via Work introduced, allowing outbound calls to be made via existing PABX phones



  • Response Groups scale vastly improved - Supports 800 agent groups, 400 IVR groups, and 2400 agents per pool
  • Remote Call Control depreciated in the Skype4B client. It will remain in the Lync 2013 client for backward compatibility

Meetings

  • Meetings no longer expire after the scheduled date, and can be kept alive for up to a year. If the meeting is missed it be be re-scheduled without re-creating the Online Meeting.
  • The meeting service now has automatic and silent retry capabilities to limit the visibility of these to meeting attendees
  • Office Web Apps server is now protected from Domain Controller outages
  • PowerPoint presentations are not made aware to attendees until they are uploaded and ready to be presented
  • Screen sharing frame rates are up from 2 to 8, which Microsoft say will allow standard definition video to be stream to attendees
  • Updates will be provided for Lync Room System including built in server control panel, "Room PC View" allow input another system to be presented, as well as improvements to user interface

DR/High Availability
  • SQL Always on support
    • Cross subnet not supported
    • Supports only Synchronous commit mode
    • Does not support read-only secondary replicas
    • No offsite replica support (Azure)
  • SQL Mirroring is depreciated
  • Windows Fabric v2 introduced. Promised to address some of the issues with pool failover and startup. Start-CsPool commandlet introduced.
  • Conferencing will now continue to operate during failover

Migration Options



  • Support for in-place upgrades of purely Lync 2013 environments. In-place upgrades can be completed offline, or online if you have multiple pools.



  • In-place upgrade requirements: 
    • Install CU5+ latest hotfix to Lync 2013 topology
    • PowerShell RTM version (6.2.9200.0) or later
    • Have at least SQL server 2012 SP1 installed
    • Windows Server 2008 R2 - KB2533623
    • Windows Server 2012 - KB2858668
    • Windows Server 2012 R2 - KB2982006
    • No schema updates required
  • Lync 2010, OCS or mixed environments will need to follow the normal migration procedures as with Lync 2013

Server Patching
  • Simplified process to apply updates

  • Reliable checks for pool readiness built in to update commands
  • Progress indicator to give a graphical representation on the update process.
  • During installation of Skype for Business there is a new option to download and apply updates

Deployment Options
  1. Purely on-premise
  2. Purely online
  3. Hybrib mix of the above
Additionally Skype4B can be deployed in a resource forest, however Microsoft are discouraging this, mainly because hybrid is not supported in this scenario.

New Commandlets
  • Start-CsPool
  • Stop-CsPool
  • Invoke-CsComputerFailover
  • Invoke-CsComputerFailback

Other

  • Skype Federation improved - Voice and Video, search Skype contacts by name
  • SILK codec (Skype) will be the default for peer to peer calls
  • Peer to Peer screen sharing bandwidth reduced 10x when compared to Lync 2013
  • IM history will now Sync across all devices




What's New in Lync Server 2013?

In preparation for my "Whats new in Skype for Business?" article, I dug up this unpublished blog. I'm a bit late to the party here I know! In any case hopefully some of you find this information useful.

Server Roles

  • Monitoring and Archiving server is now co-located on the Front End server which reports directly to the monitoring/archiving backend database.
  • A/V conferencing is now always installed on the Front End server.
  • The uncommonly used Director role is no longer recommended but still available as an option.
  • Persistent Chat is a new server sole that replaces Group Chat
  • XMPP federation is now fully integrated


DR/High Availability

  • Backup registrar is taken a step further allowing users maintain nearly all functionality in the event of a failed pool.  Previously with Lync 2010 only voice was resilient. User data is now replicated between paired pools. Response Groups are still not highly available but can easily be backed up and restored manually within a 15 minutes. 
  • In Lync 2010 when the backend database goes down Lync goes in to a limited functionality mode. With Lync 2013 the Front End servers keep a full copy of the SQL backend databases. Lync 2013 also supports SQL mirroring on the back-end databases.


Enterprise Voice

  • In Lync 2010 a Gateway could only be associated with 1 Mediation server without the use of DNS trickery. Now in Lync 2013 Gateway/Trunks can be associated to multiple Mediation servers.
  • Inter-trunk routing is now supported so Lync can now be responsible for all call routing e.g. Lync could route a call from the PSTN to a legacy phone system.
  • Trunk translation rules can now not only be applied to the “called party” but also the “calling Party”.  This makes Caller ID presentation is much more manageable in Lync 2013.
  • Delegates can now set up simultaneous ringing to their mobile devices for incoming calls to their managers. This provides delegates with more flexibility, enabling them to answer calls on behalf of their manager without being tied to a desk phone. 
  • With Voicemail Escape Lync can determine if the call was answered immediately without ringing (for example if the call goes straight to voicemail) and pull the call back so it continues to ring on the user’s other endpoints.


Integration with Lync Online

  • Hybrid deployments now support a mixture of Lync on-premises and Lync Online users. 

Persistent Chat

  • Persistent Chat replaces Group Chat, and is now fully integrated in to Lync as a new server role. The Lync 2013 client supports this natively.


Clients

  • Vastly revamped Windows simplifies user experience
  • Windows Phone, iOS, and Android mobile clients can now join meetings as well as make audio/video calls via WiFi or mobile data
  • Lync Web App has had a major overhaul making it much easier to use and now with full conference support
  • Lync Room System specifically designed for meeting rooms


Other

  • IPv6 supported
  • VDI plugin for virtual desktop environments
  • HD support up to 1080p. Clients now use best supported video quality e.g. If HD is supported by some participants but not others Lync will present the best option for each client device. Previously Lync 2010 would reduce video quality for all participants to match the least capable device.
  • Skype Federation
  • Unified Contact store allows Lync contacts to be stored in Exchange. This includes a feature to merge duplicate contacts.
  • Archiving integration with Exchanges Legal Hold feature
  • Response Groups now support the delegation of managers and administrators


More Information
New Server Features - http://technet.microsoft.com/en-us/library/gg425795.aspx
New Client Features - http://technet.microsoft.com/en-us/library/gg398192.aspx

Sunday, 1 February 2015

Highlight Current/Active Menu Using JQuery or Javascript

I recently wanted to convert the very basic menu on my Blogger site, to one that supported drop down menus. This was surprisingly easy to do due to the flexibility of Blogger and its built in customisation tools. Where it got tricky was highlighting the currently active menu item, but thanks to a good friend of mine Olie Mason, it was short work using JQuery. To see how it works, take a look at the menu items in this blog.

The step-by-step instructions provided below detail how to implement this in your Blogger blog, however the code examples provided should work elsewhere. The menu uses either JQuery or JavaScript to highlight the currently active page, otherwise the it is pure HTML and CSS, supporting 3 levels deep.

Download the standalone html version:



JQuery

Using JQuery is a more elegant solution and requires far less code than the JavaScript equivalent. Open the HTML editor located under "Template" -> "Edit HTML", and find the <head> tag. We will be inserting our script above this line.



Because we are using JQuery you will need to reference an online library if you haven't already. I am using the following:
Next add the JQuery script:


Here's what it looks like:



JavaScript

If you prefer JavaScript or do not want to reference the JQuery library, use the following script instead:
Here's what it looks like:


CSS

Now we need to add some custom CSS to style the menu. You do this from "Template" -> "Customise" -> "Advanced" -> "Add CSS". The below snippet should work for you, however you may need to customise to suit your page:


CSS Styles:

HTML

Lastly we need to add an HTML module to the navigation area in the template. From "Layout" settings, add a new gadget to the area you want the menu to be displayed. You may need to remove the default one before you can add your new one, just select "Edit" then "Remove" if that's the case.

Select "Add a Gadget" and select "HTML/JavaScript":


Leave "Title" empty, and paste the following code snippet in the "Content" box:


HTML Code: