Remote Server Administration Tools for Windows 10 includes Server Manager, Microsoft Management Console (MMC) snap-ins, consoles, Windows PowerShell cmdlets and providers, and command-line tools for managing roles and features that run on Windows Server Technical Preview.
Remote Server Administration Tools for Windows 10 can be used to manage roles and features that are running on Windows Server Technical Preview, with the following exceptions:
- DHCP Tools. Dhcpmgmt.msc is not available in this release of RSAT, but equivalent Windows PowerShell cmdlets are available.
- IP Address Management (IPAM) Tools. IPAM tools are not available in this release of RSAT.
- Network Policy Server Tools. The NPS console is not supported on a Windows client-based operating system, and will be removed from future releases of RSAT.
- Routing and Remote Access Tools. Routing and Remote Access Tools that are GUI-based cannot be used for remote configuration in this release of RSAT, but the equivalent Windows PowerShell cmdlets are available.
- Download: https://www.microsoft.com/en-us/download/details.aspx?id=45520
- Version: 1
- File Name: WindowsTH-KB2693643-x64.msu | WindowsTH-KB2693643-x86.msu
- Date Published: 8/19/2015
- File Size: 47.9 MB | 39.7 MB
Recently I’ve dealt a lot with building SQL queries for Lync/Skype for Business for different purposes, such as queries for: Calls Duration, Network type usages, Amount of poor calls per site etc..
One of the requirements that seems to keep repeating itself is if it is possible to have the same query build into a custom report in which can later be translated into a scheduled email or exported to different formats.
The short answer is YES! it is possible and even relatively easy to create.
Building the Query
The first step before creating the report is to have the right query. I’m usually taking a lot of ideas out of the CQM queries and also from looking into the existing Views for LcsCDR and QOEMetrics databases which contain a whole lot of information that can be used.
For the example below I’ve created a custom query that provide a list of top callers based on a given week from the QoEMetrics database.
The query has some built-in filters to remove any numbers or synthetic transaction users and display only active users with Lync accounts in the callers list
SELECT --CONVERT(date,s.StartTime) AS CallDate CallerUser.URI AS CallerUri --,COUNT(CallerUser.URI) AS NumberOfPoorCalls ,COUNT(DISTINCT s.StartTime) AS NumberOfPoorCalls FROM [Session] s WITH (NOLOCK) INNER JOIN [MediaLine] AS m WITH (NOLOCK) ON m.ConferenceDateTime = s.ConferenceDateTime AND m.SessionSeq = s.SessionSeq INNER JOIN [AudioStream] AS a WITH (NOLOCK) ON a.MediaLineLabel = m.MediaLineLabel and a.ConferenceDateTime = m.ConferenceDateTime and a.SessionSeq = m.SessionSeq INNER JOIN [User] AS CallerUser WITH (NOLOCK) ON CallerUser.UserKey = s.CallerURI INNER JOIN [User] AS CalleeUser WITH (NOLOCK) ON CalleeUser.UserKey = s.CalleeURI LEFT JOIN [NetworkConnectionDetail] AS CallerNcd WITH (NOLOCK) ON CallerNcd.NetworkConnectionDetailKey = m.CallerNetworkConnectionType LEFT JOIN [NetworkConnectionDetail] AS CalleeNcd WITH (NOLOCK) ON CalleeNcd.NetworkConnectionDetailKey = m.CalleeNetworkConnectionType LEFT JOIN [Endpoint] AS CallerEndpoint ON s.CallerEndpoint = CallerEndpoint.EndpointKey LEFT JOIN [Endpoint] AS CalleeEndpoint ON s.CalleeEndpoint = CalleeEndpoint.EndpointKey LEFT JOIN [Device] AS CallerCaptureDevice ON m.CallerCaptureDev = CallerCaptureDevice.DeviceKey LEFT JOIN [Device] AS CallerRenderDevice ON m.CallerRenderDev = CallerRenderDevice.DeviceKey LEFT JOIN [Device] AS CalleeCaptureDevice ON m.CalleeCaptureDev = CalleeCaptureDevice.DeviceKey LEFT JOIN [Device] AS CalleeRenderDevice ON m.CalleeRenderDev = CalleeRenderDevice.DeviceKey WHERE s.StartTime >= (@beginTime) and s.StartTime < (@endTime) and CallerUser.URI not like '%[0-9]%' and CallerUser.URI not like '%anonymous%' and CallerUser.URI not like '%lyncst%' GROUP BY CallerUser.URI, CONVERT (date,s.StartTime) HAVING (COUNT(DISTINCT s.StartTime) > 1) ORDER BY NumberOfPoorCalls DESC
Creating the Custom Report
Once we have the Query, we are ready to build our custom report.
1) Open the SQL Reporting URL base, by default it is under the http://ReportServerName/Reports (the actual location can be taken from the Reporting Service Configuration tool).
2) Under the given menu, choose “Report Builder” option which will download the Microsoft Report builder tool and install it on your computer.
3) Once the Report Builder tool is opened, you will prompt for a wizard, choose Blank to create your own custom based report.
4) Now we need to insert our SQL query into the report, to do so, open the navigation pane, expand Dataset and choose “Add Dataset”:
5) Within the Dataset Properties windows, select “Use a dataset embedded in my report”.
6) On the Data source, click on “New” in order to select the existing data source which were created as part of the Lync/SfB reports installation. You can also change the name of the Data Source to indicated to which DB it connects to in case you need to use it for more dataset later on.
For our example we’ll use the QMSDB which contain the SQL view the query is based upon.
7) Once selected, paste the SQL query in the “Query” section and Click “OK”.
8) Upon creating the Dataset, the Reporting Builder tool will automatically translate the query into actual Fields and Parameters.
9) Those Parameters are the variables the user can put as Input when the report is being loaded as can seen in the below example:
10) Please note that we also need to modify the settings for the parameters to match the type of “Data type” they are used for, for instance date/Time, number etc.
This can be done by right click the parameter and selecting “Properties”.
11) It is also possible to set Default value when the report first loads, to generate expressions such as today date, or set the begin time to be set initially to last week.
12) Once we have the dataset and all parameters configured, we need to start creating the actual report. On the Insert tab, select Table and choose “Table Wizard”. The table wizard is a really nice guided design which help at first creating the report in a convenient view.
13) On the “Choose a dataset” window, select the existing dataset which we created earlier as the source:
14) On the “Arrange Fields” window, select the required column and details you would like to view. In our example and based on the Query, I would like to get a column for the actual caller URI and another column for the total amount of calls that person had within the given date/time range.
15) On the “Choose the layout” window, select the required layout and style for the report and click on “Finish”.
16) Upon completion of the table wizard, the report is ready and the required table will populate on the design menu.
You can also customize the report in terms of fonts, color and anything else you can think of.
17) Now click on the “Run” button on the top left navigation menu in order to run the report and specify the required parameters needed and click on the “Run Report” button.
18) Once the query finishes to calculate the results, the table will appear with the results of the query.
19) Now all left is saving the report to the actual repository and it will be accessible to all.
20) To modify an existing report, open the “Report_Content” web URL, hoover over one of the report and select the drop down arrow. within the drop down menu, select “Edit In Report Builder” to customize any existing or new reports created.
Microsoft releases an update for the Key Health Indicators for Lync Server 2013 and Skype for Business Server 2015
- Version: 1.1
- File Name: KHI_Resources.zip
- Date Published: 7/29/2015
- File Size: 1.2 MB
An updated version of the Key Health Indicators for Lync Server 2013 and Skype for Business Server 2015. Key Health Indicators (KHI) are Performance Counters with recommended thresholds aimed at revealing problems that can impact the user experience.
The resources in this download contain the KHI Guide, which outlines the operational process and remediation steps. A sample PowerShell script used to configure KHI Data Collectors. Lastly, the Analysis and Definitions Workbook which can analyze KHI performance data.
- Updated Min\Max columns on Pivots Tab to show Min\Max values instead of Average
- KB 3074996 Call forwarding option for “Only forward or simultaneously ring during work hours” is unavailable in Lync for Mac 2011
- KB 3074995 Lync Lync for Mac 2011 disconnects every 30 seconds after you use a certificate that bases TLS-DSK authentication to sign in
- KB 3074993 Hide Stage button does not work after a user shares the desktop in Lync for Mac 2011
- KB 3074992 MAC address is not provided in the LIS request in Lync for Mac 2011 that supports Enhanced 911
- KB 3074990 Multiple contact card options are greyed out in Lync for Mac 2011 when enhanced privacy mode is enabled
- KB 3074989 Cannot update presence note in Lync for Mac 2011 that has lots of contacts
- KB 3074988 System volume on Mac is reset every time when you start or join a meeting in Lync for Mac 2011
- KB 3074987 Lync Energy usage for Lync for Mac 2011 is increased on a MacBook Pro that has two graphic processing units exist
- KB 3074986 The icons of distribution groups are greyed out when you send an IM or start a call in Lync for Mac 2011
- KB 3074985 Lync for Mac 2011 takes a long time to connect to Exchange server by using Autodiscover service
- KB 3074983 Wireless network connections are incorrectly reported as wired in VQReportEvent element in Lync for Mac 2011
- KB 3074982 Default installation preferences settings are not honored when you join a Lync online meeting in Lync for Mac 2011
- KB 3037355 Lync for Mac 2011 users cannot join Lync meetings that is created in Lync Web Scheduler
In Lync and Skype for Business, there is an option to configure sites/subnets under the Network Configuration tab:
The reason for creating those setting is based on 3 major components:
- Call Admission Control
- Media By Pass
- Location Report and Sites Association
As mentioned in Microsoft TechNet Network settings for the advanced Enterprise Voice features in Skype for Business Server, it is very important to configure all the IP subnets properly in order for those 3 features to work as expected:
The IP subnets specified during network configuration on the server must match the format provided by client computers in order to be properly used for media bypass. A Skype for Business client takes its local IP address and masks the IP address with the associated subnet mask. When determining the bypass ID associated with each client, the Registrar will compare the list of IP subnets associated with each network site against the subnet provided by the client for an exact match. For this reason, it is important that subnets entered during network configuration on the server are actual subnets instead of virtual subnets. (If you deploy call admission control, but not media bypass, call admission control will function properly even if you configure virtual subnets.)
For example, if a client signs in on a computer with an IP address of 172.29.81.57 with an IP subnet mask of 255.255.255.0, Skype for Business will request the bypass ID associated with subnet 172.29.81.0. If the subnet is defined as 172.29.0.0/16, although the client belongs to the virtual subnet, the Registrar will not consider this a match because the Registrar is specifically looking for subnet 172.29.81.0. Therefore, it is important that the administrator enters subnets exactly as provided by Skype for Business clients (which are provisioned with subnets during network configuration either statically or by DHCP.)
What does it actually means?
The result of misconfigured subnets can result in CAC rules which does not applies as expected, Media Bypass which does not work for specific sites Per Site Media Bypass was enabled and missing entries from the Location Report which can result in incorrect information or usage stats.
How to find those subnets?
In order to find the subnets which are not related to any sites but do report active calls, I’ve created the following SQL query which uses the QoEMetric database and an existing view which display all relevant data.
The Query pulls all the the calls within the last week (which can be configured) and uses the following assumptions:
- The Caller Site is reported as NULL (Empty) and there is no association to existing sites/regions
- The User Agent is a number between 4 and 255 which means it filter out any irrelevant servers or services
- The Caller is within the Internal network and not using External subnets such as 192.168.x.x or not using EDGE services
- The Call is an Audio Call (Video and Conferencing is not taking under consideration)
DECLARE @beginTime AS DateTime = '7/6/2015'; DECLARE @endTime AS DateTime = '7/13/2015'; SELECT DISTINCT [CallerIPAddr] ,[CallerUserSite] ,[CallerRegion] ,[CalleeIPAddr] ,[CalleeUserSite] ,[CalleeRegion] FROM [qoemetrics].[dbo].[AudioStreamDetailView] WHERE [qoemetrics].[dbo].[AudioStreamDetailView].StartTime >= (@beginTime) AND [qoemetrics].[dbo].[AudioStreamDetailView].StartTime < (@endTime) AND ([qoemetrics].[dbo].[AudioStreamDetailView].CallerUserSite is NULL) AND [qoemetrics].[dbo].[AudioStreamDetailView].CallerUserAgentType between '4' and '255' AND ([qoemetrics].[dbo].[AudioStreamDetailView].CallerInside = 1)
The query needs to run against a specific view which is the AudioStreamDetailView under the QoeMetrics database:
The result will be a list of all calls matching the assumptions above and their details:
Once you have the list of all IP/Subnets which calls are being reported from, you can add those specific subnets to the Lync/SfB control panel and see it changes it the location report.
Based on my experience, most of those subnets are usually VPN or Wireless relayed and those can be added once the specific mask is known.
Please note that you can also run the AudioStreamDetailView and get a list of a lot of relevant information that can be used for troubleshooting other scenarios as well.
Source and Links:
Issues this update fix:
- KB 3076504 CPU usage is reduced by emoticon animations that are active in multiple conversations in Skype for Business or Lync 2013
- KB 3072756 Update UI to better display presence information in Skype for Business when calendar is set to out of office
- KB 3072755 Chinese Contact Group name is displayed in garbled characters in Skype for Business or Lync 2013
- KB 3072754 Update user interface for group contact counts in contact lists in Skype for Business or Lync 2013
- KB 3072753 Active Directory contact’s name is changed to the phone number in the contact list of Skype for Business or Lync 2013
- KB 3072752 Typed characters take a long time to display in the message input box in Skype for Business or Lync 2013
- KB 3072751 Add the click-to-call feature for RCC-enabled users from the contact card in Skype for Business or Lync 2013
- KB 3072750 Update changes the text label from participant code to Conference ID in Skype for Business or Lync 2013
- KB 3051158 “Help isn’t working” error occurs when you open the “Skype for Business Help” window in Skype for Business
- KB 3051516 “Copy” and “Select All’ menu items are disabled for the first instant message in a conversation in Skype for Business
- KB 3051160 Cannot join meetings by using Lync 2010 after you install OneDrive for Business
- KB 3053998 Memory leak occurs when you transfer a file that is larger than 5 megabytes (MB) in a conversation in Skype for Business
- Update for Skype for Business 2015 (KB3054946) 32-Bit Edition
- Update for Skype for Business 2015 (KB3054946) 64-Bit Edition
- The download page will display this update as for Lync 2013.
- After you apply this July 14, 2015, update, Lync 2013 will be upgraded to Skype for Business.
Get the general information about the new experience in Skype for Business.
- You can still use the Lync client user interface after you apply this update for Lync 2013 (Skype for Business).
Get the general information about how to switch between the Skype for Business and the Lync client user interfaces for Microsoft Office 365 users and Lync Server 2013 users.
One of our customers had established recently a direct SIP connection between its Lync 2013 environment and Cisco UCS for VoIP call.
The integration itself worked well and Lync clients were able to make outbound calls and receive incoming calls from Cisco and vice versa.
With that said, there was one scenario in which if a Lync client received an incoming call from Cisco, if the Lync user click on the IGNORE option as shown below, the call will result in Fast-Busy signal if the default voice mail system is not Exchange Unified Messaging.
The default behavior for those type of calls it is to go to the destination user Voice Mail, but that only happens if the its voice mail system is Exchange Unified Messaging.
For customers who are not using Exchange Unified Messaging and decided to continue working with their existing Voice Mail System (Unity or Asterisk for instance), the caller will result in having a Fast-Busy signal instead of redirect to the user Voice mail which is not the expected behavior.
MSPL for Help
In order to change that behavior, we’ve developed a MSPL Service script which reside on the Front-End server and listen for any incoming calls which include SIP 603 Decline in the header, which is the result of a user clicking on the IGNORE button.
603 Decline – The callee’s machine was successfully contacted but the user explicitly does not wish to or cannot participate. The response MAY indicate a better time to call in the Retry-After header field. This status response is returned only if the client knows that no other end point will answer the request.
With the help of the MSPL service, we’ve set our script to change any SIP 603 Decline and return 480 Temporary Unavailable instead, meaning that when a Lync user click on the IGNORE option on his side, the Front-End service will return the Cisco GW with a 480 Temporary Unavailable instead of 603 Decline which will result in continuous ringing on the Cisco side which will lead to the Cisco Voice Mail system and the expected behavior by the user.
One of the options exists within Exchange Online is the ability to pull out unified messaging reports and statistics on Voice Mails, Auto Attendant and other usages of Unified Messaging.
The information provided by the Exchange Online can be very useful for trending analysis, user adoption, usage and troubleshooting quality issues between the On-Premises networks and Exchange Online, especially as there is not a lot of information we can gather from the Exchange Online side which makes it very difficult to troubleshooting issues with failing or dropped UM calls.
Type of Reports:
Exchange Online provide two types of Unified Messaging Statistics reports:
- Calls Statistics – This report provides statistical information about the calls forwarded to or placed by Mailbox servers for your organization.
- User Calls Logs – This report provides call logs for a selected user for the last 90 days.
Pulling the information:
1. Log-in into the Office 365 Admin Portal using a Global Administrator Credentials.
2. Enter the Exchange Online Control Panel
3. Enter the Unified Messaging Section
The Calls Statistics report will present a list of amount of calls on a daily basis, including Amount of Calls, Types of calls (Voice Mail / Auto Attendant / Faxes etc.) as well as audio quality graph.
There are also two additional options to look into the Audio Quality Details and export the daily information into CSV which provide further details on the specific calls including Origin, destination, Menu selection etc.
User Call Log
The User Call Log report will allow you to list all the calls details per user and provide Voice Quality summary which contain network statistics: