Notes
After this DEX pack is installed, and components correctly configured, it may take up to 24 hours for data to appear.
If you update or reinstall this DEX Pack, you must reassign any Views created below to the SF_Teams Quality Check Role and reapprove the TeamsQualityCheck Action.
This pack relies on the Microsoft Teams Network Assessment Tool which can be deployed directly from the Microsoft Download Center.
Third Party Data Processor
IMPORTANT: This DEX pack makes use of a third-party API from DB-IP: https://db-ip.com/. The script will send public IP address information (considered Personally Identifiable Information or PII) from the subject system to obtain ISP registration and location information for said IP address. DB-IP should be considered as a third-party data processor.
Teams Quality Sensors and Experience Index
Installing this DEX pack enables the following sensors by default:
Teams Quality Fail - Jitter
Teams Quality Fail - Pkt Loss
Teams Quality Fail - RTT
These sensors are included in the sensor group that directly impacts the Experience Index calculation. As a result, the Experience Index for your environment may change after you install this DEX pack.
Installation Steps
To install this DEX Pack, complete the following steps:
Assign the TeamsNetConn View to the Teams Quality Check Role.
Assign the Teams Quality Check Role to Relevant Configurations.
Import the Kit
There are two ways to import the DEX Pack to SysTrack:
Import the pack directly from the Kits page in SysTrack. See the Import Online Kits guide for more information.
Import a local file downloaded from the DEX and Kit Downloads page. Click the Download Kit link for the pack and follow the Import Local Kits guide to finish the import.
Enable the TeamsQualityCheck Action
Verify you have unlocked the tenant next to your username.
In Configure, click Automations and Collection Extensions on the left.
Select Action Governance, then click the Pending Approval tab.
Find the TeamsQualityCheck Action and select the checkbox next to it.
Click Approve, then confirm. The action moves to the Actions tab and is enabled automatically.
NOTE: In SysTrack Cloud, the user who imported the Kit may not be allowed to approve its actions. If the checkbox is unavailable, ask another user with Action Governance – Management permission to approve the action.
Create the TeamsNetConn View
The Teams Quality Dashboard requires you to make a View for the SF_Teams Quality Check Role.
To create the new View:
Navigate to Configure > Views.
Click the padlock icon in the upper-right to enable editing.
Click the plus icon to add a new View.
Fill in the Settings as follows:
View Name: TEAMSNETCONN
Existing Category: Custom
Expires in: 30 days
When Expired: Append Data
Refresh: Daily, Inside, 24x7
Copy the TEAMSNETCONN SQL Query, and paste it into the box under SQL Selection > Generic.
Click Test SQL. A Success message should appear at the top of the screen. If the test is not successful, the query may have been copied incorrectly.
Click Create View at the top-right.
TEAMSNETCONN SQL Query
SELECT
T0.WGUID,
GETUTCDATE() AS VWTIME,
T0.probe_time,
T0.probe_count,
T0.avg_jitter,
T0.avg_latency,
T0.avg_loss_rate,
T0.is_proxy,
T0.max_jitter,
T0.max_latency,
T0.max_loss_rate,
T0.primary_adapter_string AS primary_adapter,
T2.STRVALUE AS primary_ASN,
T3.STRVALUE AS primary_CIDR,
T4.STRVALUE AS primary_city,
T5.STRVALUE AS primary_country,
T6.STRVALUE AS primary_egress_ip,
T7.STRVALUE AS primary_ISP,
T8.STRVALUE AS primary_lat,
T9.STRVALUE AS primary_lon,
T10.STRVALUE AS target_ip,
T11.STRVALUE AS teams_adapter,
T12.STRVALUE AS teams_ASN,
T13.STRVALUE AS teams_CIDR,
T14.STRVALUE AS teams_city,
T15.STRVALUE AS teams_country,
T16.STRVALUE AS teams_egress_ip,
T17.STRVALUE AS teams_ISP,
T18.STRVALUE AS teams_lat,
T19.STRVALUE AS teams_lon,
T0.NET_UTIL,
T0.FRAME_RATE,
T0.BYTE_RATE,
T0.BCAST_RATE,
T0.OUTQLEN,
T0.REXMIT,
T0.BANDWIDTH,
T0.WIFI_SIGNALQ,
T0.WIFI_TRANS_RATE,
T0.WIFI_RECV_RATE
FROM (
SELECT
*,
ROW_NUMBER() OVER (PARTITION BY RECID ORDER BY MINS_DIFF, WTYPE) AS ROWNUM
FROM (
SELECT
T0.*,
T1.NET_UTIL,
T1.FRAME_RATE,
T1.BYTE_RATE,
T1.BCAST_RATE,
T1.OUTQLEN,
T1.REXMIT,
T1.BANDWIDTH,
T1.FRAME_RATE_SD,
T1.BYTE_RATE_SD,
T1.WIFI_SIGNALQ,
T1.WIFI_TRANS_RATE,
T1.WIFI_RECV_RATE,
T1.WIFI_CHANNEL,
T1.WIFI_BAND,
T1.WIFI_FREQ,
ABS(DATEDIFF(N,T0.probe_time,T1.WTIME)) AS MINS_DIFF,
T1.WTYPE,
S0.STRVALUE AS primary_adapter_string
FROM DYNI_TeamsNetworkConnection AS T0
LEFT JOIN SASTR_DYN AS S0 ON T0.primary_adapter = S0.STRINGID
LEFT JOIN (
SELECT
T0.*,
S0.STRVALUE,
T1.ViewName
FROM SANET AS T0
INNER JOIN SASTRDEVICE AS S0 ON T0.DEVICE_ID = S0.STRINGID
INNER JOIN (
SELECT DISTINCT
Name1 AS ViewName,
FIRST_VALUE(Name2) OVER (PARTITION BY Name1 ORDER BY NumRows DESC) AS NetName
FROM (
SELECT
S0.STRVALUE AS Name1,
S1.STRVALUE AS Name2,
COUNT(*) AS NumRows
FROM SANET_CONN_HISTORY AS T0
INNER JOIN SASTRDEVICE AS S0 ON T0.ADPT_DESC_ID = S0.STRINGID
INNER JOIN SASTRDEVICE AS S1 ON T0.DEVICE_ID = S1.STRINGID
WHERE S1.STRVALUE > ''
GROUP BY
S0.STRVALUE,
S1.STRVALUE
) AS T0
) AS T1 ON S0.STRVALUE = T1.NetName
WHERE T0.WTYPE IN (0,1)
) AS T1 ON T0.WGUID = T1.WGUID AND T1.ViewName = S0.STRVALUE
) AS T0
) AS T0
LEFT JOIN SASTR_DYN AS T2 ON T0.primary_ASN = T2.STRINGID
LEFT JOIN SASTR_DYN AS T3 ON T0.primary_CIDR = T3.STRINGID
LEFT JOIN SASTR_DYN AS T4 ON T0.primary_city = T4.STRINGID
LEFT JOIN SASTR_DYN AS T5 ON T0.primary_country = T5.STRINGID
LEFT JOIN SASTR_DYN AS T6 ON T0.primary_egress_ip = T6.STRINGID
LEFT JOIN SASTR_DYN AS T7 ON T0.primary_ISP = T7.STRINGID
LEFT JOIN SASTR_DYN AS T8 ON T0.primary_lat = T8.STRINGID
LEFT JOIN SASTR_DYN AS T9 ON T0.primary_lon = T9.STRINGID
LEFT JOIN SASTR_DYN AS T10 ON T0.target_ip = T10.STRINGID
LEFT JOIN SASTR_DYN AS T11 ON T0.teams_adapter = T11.STRINGID
LEFT JOIN SASTR_DYN AS T12 ON T0.teams_ASN = T12.STRINGID
LEFT JOIN SASTR_DYN AS T13 ON T0.teams_CIDR = T13.STRINGID
LEFT JOIN SASTR_DYN AS T14 ON T0.teams_city = T14.STRINGID
LEFT JOIN SASTR_DYN AS T15 ON T0.teams_country = T15.STRINGID
LEFT JOIN SASTR_DYN AS T16 ON T0.teams_egress_ip = T16.STRINGID
LEFT JOIN SASTR_DYN AS T17 ON T0.teams_ISP = T17.STRINGID
LEFT JOIN SASTR_DYN AS T18 ON T0.teams_lat = T18.STRINGID
LEFT JOIN SASTR_DYN AS T19 ON T0.teams_lon = T19.STRINGID
WHERE
ROWNUM = 1
AND (
MINS_DIFF IS NULL
OR MINS_DIFF <= 10
)
AND probe_time > <LASTREFRESHTIME>Assign the TeamsNetConn View to the Teams Quality Check Role
To assign the new View:
In Configure, go to System Configuration > Roles.
Select the SF_Teams Quality Check Role.
At the bottom of the screen, select the Views tab.
Scroll to TEAMSNETCONN and check the box next to it.
Click Save Changes.
Assign the Teams Quality Check Role to Relevant Configurations
This DEX Pack requires you to assign the SF_Teams Quality Check Role to the relevant Configurations assigned to systems where you would like the data to be collected:
Navigate to Configure > Configurations.
Click the padlock icon in the upper-right to enable editing.
Use the drop-down at the top to select a relevant Configuration, or create a new Configuration.
Assign the SF_Teams Quality Check Role to the Configuration by dragging it from Available Roles to Assigned Roles.
Click Save Changes at the top-right.
Repeat this process for any other relevant Configurations.
NOTE: The Teams Quality Role is assigning the Tool Schedule to periodically run a collection extension