在 Skype for Business Server 中为我的呼叫评分

总结:了解 Skype for Business Server 中的“评价我的呼叫”功能。

“评价我的呼叫”是 Windows Skype for Business 2015 和 2016 客户端的一项新功能,它为企业提供了一种从最终用户那里获取反馈的方法。

“评价我的呼叫”窗口为音频和视频通话提供“star”分级系统和预定义令牌。 此外,管理员可以启用自定义字段来提供反馈。

收集的“评价我的呼叫”数据当前不包含在现有监控报告中,但其具有单独的监控报告。 数据收集在可以通过运行 SQL 查询访问的 SQL 表中。

“评价我的呼叫”先决条件

必须先部署和配置以下组件集,然后Skype for Business Server部署中的用户才能访问“评价我的呼叫”功能:

  • 必须安装Skype for Business Server (版本 9160 或更高版本) 。

  • 让用户安装并更新到最新版本的 Skype for Business,并要求他们使用 Skype for Business UI。

  • 用户必须驻留在Skype for Business Server前端池中。

  • 必须部署Skype for Business Server监视数据库并将其关联到Skype for Business Server池。

  • 我们建议部署呼叫质量仪表板 (CQD)。

配置“评价我的呼叫”

默认情况下,在客户端策略中启用“对我的呼叫进行评分”功能,并具有以下设置:

  • 评价我的呼叫显示百分比 - 10%

  • 评价我的呼叫允许自定义用户反馈 - 禁用

无需执行任何操作即可启用基本功能,但如果需要自定义反馈,则需要单独启用它。 以下Windows PowerShell cmdlet 是启用自定义最终用户反馈并将间隔从 10% 更改为 80% 的示例。

Set-CSClientPolicy -Identity <PolicyIdentity> -RateMyCallDisplayPercentage 80 -RateMyCallAllowCustomUserFeedback $true 

访问“评价我的呼叫”数据

来自用户的数据在监视数据库的两个表中收集。

[QoeMetrics]。[dbo]。[CallQualityFeedbackToken] - 此表包含最终用户的令牌轮询结果。

[QoeMetrics]。[dbo]。[CallQualityFeedbackTokenDef] - 此表包含令牌定义。

令牌定义采用了如下编码:

# 定义
1
DistortedSpeech
2
ElectronicFeedback
3
BackgroundNoise
4
MuffledSpeech
5
回声
21
FrozenVideo
22
PixelatedVideo
23
BlurryImage
24
PoorColor
25
DarkVideo
101
Audio_SilentLocal
102
Audio_SilentRemote
103
Audio_Echo
104
Audio_BackgroundNoise
105
Audio_LowSound
106
Audio_Dropped
107
Audio_DistortedSpeech
108
Audio_Interrupted
109
Audio_Other
201
Video_NoLocalVideo
202
Video_NoRemoteVideo
203
Video_LowQuality
204
Video_FrozenVideo
205
Video_StoppedUnexpectedly
206
Video_DarkVideo
207
Video_NoAudioSync
208
Video_Other
301
Pstn_DialPad
401
SS_NoContentLocal
402
SS_NoContentRemote
403
SS_CantPresent
404
SS_LowQuality
405
SS_Freezing
406
SS_StoppedUnexpectedly
407
SS_LargeDelay
408
SS_Other
501
Reliabilty_Join
502
Reliabilty_Invite

[QoeMetrics]。[dbo]。[CallQualityFeedback] 此表包含来自“星型”投票的轮询结果和客户反馈(如果已启用)。

可使用 select * from [Table.Name] 查询或使用 Microsoft SQL Server Management Studio 调用来自表的数据。

可使用以下 SQL 查询:

音频

SELECT
        s.ConferenceDateTime
        ,Caller.URI as Caller
        ,CallerCqf.FeedbackText 
        ,CallerCqf.Rating
        ,CallerCqfTokenDef.TokenDescription 
        ,CallerCqfToken.TokenValue
    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 -- only look at Audio related feedback
            a.MediaLineLabel = m.MediaLineLabel    
            and a.ConferenceDateTime = m.ConferenceDateTime 
            and a.SessionSeq = m.SessionSeq
            and a.SenderIsCallerPAI = 1                
        INNER JOIN [CallQualityFeedback] AS CallerCqf WITH (NOLOCK) ON
            CallerCqf.ConferenceDateTime  = s.ConferenceDateTime 
            and
            CallerCqf.SessionSeq = s.SessionSeq 
        INNER JOIN [CallQualityFeedbackToken] AS CallerCqfToken WITH (NOLOCK) ON
            CallerCqfToken.ConferenceDateTime  = s.ConferenceDateTime 
            and
            CallerCqfToken.SessionSeq = s.SessionSeq
            and
            CallerCqfToken.FromURI = CallerCqf.FromURI
        INNER JOIN [CallQualityFeedbackTokenDef] AS CallerCqfTokenDef WITH (NOLOCK) ON
            CallerCqfTokenDef.TokenId = CallerCqfToken.TokenId
            and
            (CallerCqfToken.TokenId < 20 or (CallerCqfToken.TokenId > 100 and CallerCqfToken.TokenId < 200)) -- only look at Audio related feedback
        INNER JOIN [User] AS Caller WITH (NOLOCK) ON
            Caller.UserKey = CallerCqf.FromURI

视频

SELECT
        s.ConferenceDateTime
        ,Caller.URI as Caller
        ,CallerCqf.FeedbackText 
        ,CallerCqf.Rating
        ,CallerCqfTokenDef.TokenDescription 
        ,CallerCqfToken.TokenValue
    FROM [Session] s WITH (NOLOCK)
        INNER JOIN [MediaLine] AS m WITH (NOLOCK) ON 
            m.ConferenceDateTime = s.ConferenceDateTime
            AND m.SessionSeq = s.SessionSeq                        
        INNER JOIN [VideoStream] AS v WITH (NOLOCK) ON -- only look at Video related feedback
            v.MediaLineLabel = m.MediaLineLabel    
            and v.ConferenceDateTime = m.ConferenceDateTime 
            and v.SessionSeq = m.SessionSeq
            and v.SenderIsCallerPAI = 1                
        INNER JOIN [CallQualityFeedback] AS CallerCqf WITH (NOLOCK) ON
            CallerCqf.ConferenceDateTime  = s.ConferenceDateTime 
            and
            CallerCqf.SessionSeq = s.SessionSeq 
        INNER JOIN [CallQualityFeedbackToken] AS CallerCqfToken WITH (NOLOCK) ON
            CallerCqfToken.ConferenceDateTime  = s.ConferenceDateTime 
            and
            CallerCqfToken.SessionSeq = s.SessionSeq
            and
            CallerCqfToken.FromURI = CallerCqf.FromURI
        INNER JOIN [CallQualityFeedbackTokenDef] AS CallerCqfTokenDef WITH (NOLOCK) ON
            CallerCqfTokenDef.TokenId = CallerCqfToken.TokenId
            and
           ((CallerCqfToken.TokenId > 20 and CallerCqfToken.TokenId < 100) or (CallerCqfToken.TokenId > 200 and CallerCqfToken.TokenId < 300)) -- only look at Video related feedback
        INNER JOIN [User] AS Caller WITH (NOLOCK) ON
            Caller.UserKey = CallerCqf.FromURI

更新令牌定义

最新的Skype for Business客户端报告 [QoeMetrics]中可能不存在的 > 100 (100) 的新问题令牌 ID。dbo]。[CallQualityFeedbackTokenDef] 表。 若要使用最新的令牌定义更新数据库表,可以使用 Microsoft SQL Server Management Studio在监视数据库上运行以下 SQL 命令。 此命令将替换 [QoeMetrics] 中的所有条目。[dbo]。[CallQualityFeedbackTokenDef] 表。

DELETE FROM [CallQualityFeedbackTokenDef];
INSERT INTO [CallQualityFeedbackTokenDef] (TokenId, TokenDescription) VALUES
    (1,   N'DistortedSpeech'),
    (2,   N'ElectronicFeedback'),
    (3,   N'BackgroundNoise'),
    (4,   N'MuffledSpeech'),
    (5,   N'Echo'),
    (21,  N'FrozenVideo'),
    (22,  N'PixelatedVideo'),
    (23,  N'BlurryImage'),
    (24,  N'PoorColor'),
    (25,  N'DarkVideo'),
    (101, N'Audio_SilentLocal'),
    (102, N'Audio_SilentRemote'),
    (103, N'Audio_Echo'),
    (104, N'Audio_BackgroundNoise'),
    (105, N'Audio_LowSound'),
    (106, N'Audio_Dropped'),
    (107, N'Audio_DistortedSpeech'),
    (108, N'Audio_Interrupted'),
    (109, N'Audio_Other'),
    (201, N'Video_NoLocalVideo'),
    (202, N'Video_NoRemoteVideo'),
    (203, N'Video_LowQuality'),
    (204, N'Video_FrozenVideo'),
    (205, N'Video_StoppedUnexpectedly'),
    (206, N'Video_DarkVideo'),
    (207, N'Video_NoAudioSync'),
    (208, N'Video_Other'),
    (301, N'Pstn_DialPad'),
    (401, N'SS_NoContentLocal'),
    (402, N'SS_NoContentRemote'),
    (403, N'SS_CantPresent'),
    (404, N'SS_LowQuality'),
    (405, N'SS_Freezing'),
    (406, N'SS_StoppedUnexpectedly'),
    (407, N'SS_LargeDelay'),
    (408, N'SS_Other'),
    (501, N'Reliabilty_Join'),
    (502, N'Reliabilty_Invite');