Använd undersökningen Avsluta samtal för att samla in användarfeedback
Den här självstudien visar hur du använder Undersökningen om slutsamtal i Azure Communication Services.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En aktiv Communication Services-resurs. Skapa en Communication Services-resurs. Undersökningsresultaten är knutna till enskilda Communication Services-resurser.
- En aktiv Log Analytics-arbetsyta, även kallad Azure Monitor-loggar. Se Undersökningsloggar för slutsamtal.
- Om du vill genomföra en undersökning med anpassade frågor med hjälp av fri formulärtext behöver du en App Insight-resurs.
Viktigt!
Slut på samtalsundersökningen är tillgänglig från och med version 1.13.1 av den anropande SDK:en. Se till att använda den versionen eller senare när du provar instruktionerna.
Exempel på API-användning
Funktionen Undersökning av slutpunktsundersökning ska användas när anropet har avslutats. Användare kan betygsätta alla typer av VoIP-samtal, 1:1, grupp, möte, utgående och inkommande. När en användares anrop avslutas kan ditt program visa ett användargränssnitt för slutanvändaren så att de kan välja en klassificeringspoäng, och vid behov välja problem som de har stött på under samtalet från vår fördefinierade lista.
Följande kodfragment visar ett exempel på ett-till-en-anrop. Efter samtalets slut kan ditt program visa ett undersökningsgränssnitt och när användaren har valt ett omdöme bör programmet anropa funktions-API:et för att skicka undersökningen med användarvalen.
Vi rekommenderar att du använder standardklassificeringsskalan. Du kan dock skicka en undersökning med anpassad klassificeringsskala. Du kan kolla in exempelprogrammet för api-exempelanvändningen.
Endast frekvensanrop – ingen anpassad skala
call.feature(Features.CallSurvey).submitSurvey({
overallRating: { score: 5 }, // issues are optional
}).then(() => console.log('survey submitted successfully'));
OverallRating är en obligatorisk kategori för alla undersökningar.
Endast frekvensanrop – med anpassad skala och problem
call.feature(Features.CallSurvey).submitSurvey({
overallRating: {
score: 1, // my score
scale: { // my custom scale
lowerBound: 0,
upperBound: 1,
lowScoreThreshold: 0
},
issues: ['HadToRejoin'] // my issues, check the table below for all available issues
}
}).then(() => console.log('survey submitted successfully'));
Betygsätt övergripande, ljud och video med ett exempelproblem
call.feature(Features.CallSurvey).submitSurvey({
overallRating: { score: 3 },
audioRating: { score: 4 },
videoRating: { score: 3, issues: ['Freezes'] }
}).then(() => console.log('survey submitted successfully'))
Hantera fel som SDK kan skicka
call.feature(Features.CallSurvey).submitSurvey({
overallRating: { score: 3 }
}).catch((e) => console.log('error when submitting survey: ' + e))
Hitta olika typer av fel
Fel vid inskickning av undersökning
API:et returnerar följande felmeddelanden om dataverifieringen misslyckas eller undersökningen inte kan skickas.
Minst en undersökningsklassificering krävs.
I standardskalan ska X vara 1 till 5. - där X är något av:
- overallRating.score
- audioRating.score
- videoRating.score
- ScreenshareRating.score
{propertyName}: {rating.score} ska vara mellan {rating.scale?. lowerBound} och {rating.scale?. upperBound}.
{propertyName}: {rating.scale?. lowScoreThreshold} ska vara mellan {rating.scale?. lowerBound} och {rating.scale?. upperBound}.
{propertyName} lowerBound: {rating.scale?. lowerBound} och upperBound: {rating.scale?. upperBound} ska vara mellan 0 och 100.
Försök igen [ACS kunde inte skicka undersökningen på grund av nätverk eller annat fel].
Vi returnerar eventuella felkoder med ett meddelande.
- Felkod 400 (felaktig begäran) för alla felmeddelanden utom en.
{ message: validationErrorMessage, code: 400 }
- En 408 (timeout) när händelsen ignoreras:
{ message: "Please try again.", code: 408 }
Alla möjliga värden
Api-konfiguration för standardundersökning
API-klassificeringskategorier | Brytvärde* | Indataintervall | Kommentarer |
---|---|---|---|
Övergripande samtal | 2 | 1 - 5 | Undersöker en anropande deltagares övergripande kvalitetsupplevelse på en skala från 1 till 5. Ett svar på 1 indikerar en ofullkomlig samtalsupplevelse och 5 indikerar ett perfekt samtal. Gränsvärdet 2 innebär att ett kundsvar på 1 eller 2 indikerar en mindre än perfekt samtalsupplevelse. |
Ljud | 2 | 1 - 5 | Ett svar på 1 indikerar en ofullkomlig ljudupplevelse och 5 indikerar att inga ljudproblem uppstod. |
Video | 2 | 1 - 5 | Ett svar på 1 indikerar en felaktig videoupplevelse och 5 indikerar att inga videoproblem har uppstått. |
Skärmdelning | 2 | 1 - 5 | Ett svar på 1 indikerar en felaktig skärmresursupplevelse och 5 anger att inga problem med skärmresursen har uppstått. |
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Fler undersökningstaggar
Klassificeringskategorier | Valfria taggar |
---|---|
Övergripande samtal | CallCannotJoin CallCannotInvite HadToRejoin CallEndedUnexpectedly OtherIssues |
Ljud | NoLocalAudio NoRemoteAudio Echo AudioNoise LowVolume AudioStoppedUnexpectedly DistortedSpeech AudioInterruption OtherIssues |
Video | NoVideoReceived NoVideoSent LowQuality Freezes StoppedUnexpectedly DarkVideoReceived AudioVideoOutOfSync OtherIssues |
Skärmdelning | NoContentLocal NoContentRemote CannotPresent LowQuality Freezes StoppedUnexpectedly LargeDelay OtherIssues |
Anpassningsalternativ
Du kan välja att samla in vart och ett av de fyra API-värdena eller bara de som du tycker är viktigast. Du kan till exempel välja att bara fråga kunder om deras övergripande samtalsupplevelse i stället för att fråga dem om deras ljud-, video- och skärmdelningsupplevelse. Du kan också anpassa indataintervall så att de passar dina behov. Standardinmatningsintervallet är 1 till 5 för övergripande samtal, ljud, video och skärmdelning. Varje API-värde kan dock anpassas från minst 0 till högst 100.
Anpassningsexempel
API-klassificeringskategorier | Brytvärde* | Indataintervall |
---|---|---|
Övergripande samtal | 0 - 100 | 0 - 100 |
Ljud | 0 - 100 | 0 - 100 |
Video | 0 - 100 | 0 - 100 |
Skärmdelning | 0 - 100 | 0 - 100 |
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Anpassade frågor
Förutom att använda API:et för undersökning av slutpunktsundersökning kan du skapa egna undersökningsfrågor och införliva dem med resultatet av undersökningen avslutad samtalsundersökning. Nedan hittar du steg för att införliva dina egna kundfrågor i en undersökning och köra frågor mot resultatet av API:et för undersökning av slutpunktsundersökning och dina egna undersökningsfrågor.
Bädda in Azure AppInsights i ditt program Klicka här om du vill veta mer om App Insight-initiering med hjälp av oformaterad JavaScript. Du kan också använda NPM för att hämta App Insights-beroenden. Klicka här om du vill veta mer om App Insight-initiering med NPM.
Skapa ett användargränssnitt i ditt program som hanterar anpassade frågor till användaren och samla in deras indata, kan anta att ditt program samlade in svar som en sträng i variabeln
improvementSuggestion
Skicka undersökningsresultat till ACS och skicka användarsvar med App Insights:
currentCall.feature(SDK.Features.CallSurvey).submitSurvey(survey).then(res => { // `improvementSuggestion` contains custom, user response if (improvementSuggestion !== '') { appInsights.trackEvent({ name: "CallSurvey", properties: { // Survey ID to correlate the survey id: res.id, // Other custom properties as key value pair improvementSuggestion: improvementSuggestion } }); } }); appInsights.flush();
Användarsvar som skickades med AppInsights är tillgängliga under din App Insights-arbetsyta. Du kan använda arbetsböcker för att fråga mellan flera resurser, korrelera anropsklassificeringar och anpassade undersökningsdata . Steg för att korrelera anropsklassificeringar och anpassade undersökningsdata:
- Skapa nya arbetsböcker (DIN ACS-resurs –> Övervakning –> Arbetsböcker –> Ny) och fråga efter samtalsundersökningsdata från din ACS-resurs.
- Lägg till ny fråga (+Lägg till –> Lägg till fråga)
- Kontrollera att
Data source
ärLogs
ochResource type
ärCommunication
- Du kan byta namn på frågan (Avancerade inställningar –> Stegnamn [exempel: call-survey])
- Tänk på att det kan ta högst 2 timmar innan undersökningsdata visas i Azure Portal. Fråga anropsklassificeringsdata–
ACSCallSurvey | where TimeGenerated > now(-24h)
- Lägg till ytterligare en fråga för att hämta data från App Insights (+Lägg till –> Lägg till fråga)
- Kontrollera att
Data source
ärLogs
ochResource type
ärApplication Insights
- Fråga efter anpassade händelser-
customEvents | where timestamp > now(-24h) | where name == 'CallSurvey' | extend d=parse_json(customDimensions) | project SurveyId = d.id, ImprovementSuggestion = d.improvementSuggestion
- Du kan byta namn på frågan (Avancerade inställningar –> Stegnamn [exempel: custom-call-survey])
- Sammanfoga slutligen dessa två frågor efter surveyId. Skapa ny fråga (+Lägg till –> Lägg till fråga).
- Kontrollera att
Data source
är Sammanfoga och väljMerge type
efter behov
title: Azure Communication Services End of Call Survey titleSuffix: An Azure Communication Services tutorial document description: Learn how to use the End of Call Survey to collect user feedback(En dokumentbeskrivning för Azure Communication Services-självstudien: Lär dig hur du använder Undersökningen om slut på samtal för att samla in feedback från användaren). author: viniciusl-msft ms.author: viniciusl manager: gaobob services: azure-communication-services ms.date: 7/30/2024 ms.topic: tutorial ms.service: azure-communication-services ms.subservice: calling
Viktigt!
Slut på samtalsundersökningen är tillgänglig från och med version 2.10.0 av Android Calling SDK. Se till att använda den versionen eller senare när du provar instruktionerna.
Exempel på API-användning
Funktionen Undersökning av slutpunktsundersökning ska användas när anropet har avslutats. Användare kan betygsätta alla typer av VoIP-samtal, 1:1, grupp, möte, utgående och inkommande. När en användares anrop avslutas kan ditt program visa ett användargränssnitt för slutanvändaren så att de kan välja en klassificeringspoäng, och vid behov välja problem som de har stött på under samtalet från vår fördefinierade lista.
Följande kodfragment visar ett exempel på ett-till-en-anrop. Efter samtalets slut kan ditt program visa ett undersökningsgränssnitt och när användaren har valt ett omdöme bör programmet anropa funktions-API:et för att skicka undersökningen med användarvalen.
Vi rekommenderar att du använder standardklassificeringsskalan, som är femstjärnigt (mellan 1 och 5). Du kan dock skicka en undersökning med anpassad klassificeringsskala.
Starta en undersökning
Du skapar ett CallSurvey
objekt genom att starta en undersökning. Detta registrerar en undersöknings avsikt. Om det här objektet CallSurvey
inte skickas efteråt innebär det att undersökningen hoppades över eller ignorerades av slutkund.
SurveyCallFeature surveyCallFeature = call.feature(Features.SURVEY);
try {
CallSurvey survey = surveyCallFeature.startSurvey().get();
} catch (InterruptedException | ExecutionException e) {
// failure to start survey
}
Allmän användning
När du klassificerar anrop måste du respektera värden som definierats i skalningsfältet. LowerBound-värdet anger den sämsta möjliga upplevelsen, medan upperBound-värdet innebär den perfekta upplevelsen. Båda värdena är inkluderande.
OverallRating är en obligatorisk kategori för alla undersökningar.
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Mer information om förslag på undersökningsanvändning finns i Undersökningsbegrepp
Endast frekvensanrop – ingen anpassad skala
SurveyScore overall = new SurveyScore();
overall.setScore(5);
callSurvey.setOverallScore(overall);
Endast frekvensanrop – med anpassad skala och problem
// configuring scale
CallSurveyRatingScale ratingScale = new CallSurveyRatingScale();
ratingScale.setLowerBound(0);
ratingScale.setLowerBound(1);
ratingScale.setLowScoreThreshold(0);
SurveyScore overall = new SurveyScore();
overall.setScale(ratingScale);
// setting score according to scale
overall.setScore(1);
callSurvey.setOverallScore(overall);
// reporting one or more issues
callSurvey.setCallIssues(CallIssues.HAD_TO_REJOIN);
Betygsätt övergripande, ljud och video med ett exempelproblem
SurveyScore overall = new SurveyScore();
overall.setScore(3);
SurveyScore audio = new SurveyScore();
audio.setScore(4);
SurveyScore video = new SurveyScore();
video.setScore(3);
callSurvey.setOverallScore(overall);
callSurvey.setAudioScore(audio);
callSurvey.setVideoScore(video);
callSurvey.setVideoIssues(VideoIssues.FREEZES);
Skicka undersökning och hantera fel som SDK kan skicka
try {
CallSurveyResult survey = surveyCallFeature.submitSurvey(survey).get();
} catch (InterruptedException e) {
// Threading error
} catch (ExecutionException e) {
Log.e("SURVEY", e.getCause().getMessage());
}
Hitta olika typer av fel
Fel vid sändning av undersökning:
SUBMITSurvey-API:et kan returnera ett fel i följande scenarier:
Övergripande undersökningsklassificering krävs.
CallSurveyRatingScale
måste vara inom 0 och 100. LowerBound bör vara mindre än UpperBound. LowScoreThreshold bör ligga inom gränserna.Någon av poängen måste respektera de gränser som definieras av
CallSurveyRatingScale
. Alla värden iCallSurveyRatingScale
objektet är inkluderande. Med standardskalan ska poängvärdet vara mellan 1 och 5.Undersökningen kan inte skickas på grund av nätverks-/tjänstfel.
Tillgängliga undersökningstaggar
Övergripande samtal
Tagg | beskrivning |
---|---|
CannotJoin |
Kunden kunde inte ansluta till ett samtal |
CannotInvite |
Kunden kunde inte lägga till en ny deltagare vid anrop |
HadToRejoin |
Kunden lämnade och anslöt igen anropet som en lösning på ett problem |
CallEndedUnexpectedly |
Kundens samtal avslutades utan någon uppenbar anledning |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Ljudproblem
Tagg | beskrivning |
---|---|
NoLocalAudio |
Inget ljud på kunddatorn från samtalet, oförmåga att höra någon i samtalet |
NoRemoteAudio |
Ljud saknas från en specifik deltagare |
Echo |
Eko uppfattas i samtalet |
AudioNoise |
Ljud som tas emot med oavsiktligt brus |
LowVolume |
Ljudet är för lågt |
AudioStoppedUnexpectedly |
Ljud stoppas utan tydlig orsak (t.ex. ingen är avstängd) |
DistortedSpeech |
En deltagares röst är förvrängd, skiljer sig från deras förväntade röst |
AudioInterruption |
Kunden upplever ljudavbrott, röstsänkningar osv. |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Videoproblem
Tagg | beskrivning |
---|---|
NoVideoReceived |
Kunden får inte video från en deltagare |
NoVideoSent |
Kunden startar video men ingen i samtalet kan se den |
LowQuality |
Video av låg kvalitet |
Freezes |
Video fryser |
StoppedUnexpectedly |
Skärmresursen stoppas utan tydlig orsak (t.ex. kameran är på och videosamtal är aktiverat) |
DarkVideoReceived |
Videon skickas men deltagaren ser bara en mörk ruta (eller en annan enskild färg) |
AudioVideoOutOfSync |
Video och ljud verkar inte vara synkroniserade |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Problem med skärmresurs
Tagg | beskrivning |
---|---|
NoContentLocal |
Kunden får inte skärmresurs från en deltagare som delar |
NoContentRemote |
Kunden delar skärm, men andra en eller flera deltagare kan inte se den |
CannotPresent |
Det går inte att starta skärmresursen |
LowQuality |
Låg kvalitet på skärmdelningsvideo, t.ex. |
Freezes |
Skärmresursen låses under presentationen |
StoppedUnexpectedly |
Skärmresursen stoppas utan tydlig orsak (t.ex. att skärmresursen inte stoppades av kunden) |
LargeDelay |
Upplevd fördröjning mellan det som visas och vad som visas |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Anpassningsalternativ
Du kan välja att samla in vart och ett av de fyra API-värdena eller bara de som du tycker är viktigast. Du kan till exempel välja att bara fråga kunder om deras övergripande samtalsupplevelse i stället för att fråga dem om deras ljud-, video- och skärmdelningsupplevelse. Du kan också anpassa indataintervall så att de passar dina behov. Standardindataintervallet är 1 till 5 för total samtals-, ljud-, video- och skärmresurs. Varje API-värde kan dock anpassas från minst 0 till högst 100.
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Anpassade frågor
Förutom att använda API:et för undersökning av slutpunktsundersökning kan du skapa egna undersökningsfrågor och införliva dem med resultatet av undersökningen avslutad samtalsundersökning.
Resultatnyttolasten SubmitSurvey
innehåller data som du kan använda för att korrelera ACS-undersökningsdata med dina egna anpassade data och lagring. CallSurveyResult
klassen har fältet SurveyId
som anger en unik identifierare för undersökningen och CallId
anger en identifierare för samtalet där undersökningen genererades. Om du sparar dessa identifierare tillsammans med dina anpassade data kan data associeras unikt.
Viktigt!
Slut på samtalsundersökning är tillgänglig från och med version 2.10.0 av iOS Calling SDK. Se till att använda den versionen eller senare när du provar instruktionerna.
Exempel på API-användning
Funktionen Undersökning av slutpunktsundersökning ska användas när anropet har avslutats. Användare kan betygsätta alla typer av VoIP-samtal, 1:1, grupp, möte, utgående och inkommande. När en användares anrop avslutas kan ditt program visa ett användargränssnitt för slutanvändaren så att de kan välja en klassificeringspoäng, och vid behov välja problem som de har stött på under samtalet från vår fördefinierade lista.
Följande kodfragment visar ett exempel på ett-till-en-anrop. Efter samtalets slut kan ditt program visa ett undersökningsgränssnitt och när användaren har valt ett omdöme bör programmet anropa funktions-API:et för att skicka undersökningen med användarvalen.
Vi rekommenderar att du använder standardklassificeringsskalan, som är femstjärnigt (mellan 1 och 5). Du kan dock skicka en undersökning med anpassad klassificeringsskala.
Starta en undersökning
Du skapar ett CallSurvey
objekt genom att starta en undersökning. Detta registrerar en undersöknings avsikt. Om det här objektet CallSurvey
inte skickas efteråt innebär det att undersökningen hoppades över eller ignorerades av slutkund.
var surveyCallFeature = self.call.feature(Features.survey)
do {
try self.callSurvey = await surveyFeature.startSurvey()
} catch {
print("Failure to start survey")
}
Allmän användning
När du klassificerar anrop måste du respektera värden som definierats i skalningsfältet. LowerBound-värdet anger den sämsta möjliga upplevelsen, medan upperBound-värdet innebär den perfekta upplevelsen. Båda värdena är inkluderande.
OverallRating är en obligatorisk kategori för alla undersökningar.
Mer information om förslag på undersökningsanvändning finns i Undersökningsbegrepp
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Endast frekvensanrop – ingen anpassad skala
let overallScore = SurveyScore()
overallScore.score = Int32(5)
callSurvey.overallScore = overallScore
Endast frekvensanrop – med anpassad skala och problem
// configuring scale
var ratingScale = new CallSurveyRatingScale()
ratingScale.lowerBound = 0;
ratingScale.upperBound = 1;
ratingScale.lowScoreThreshold = 0;
SurveyScore overall = new SurveyScore();
overall.scale = ratingScale;
// setting score according to scale
overall.score = 1;
callSurvey.overallScore = overall;
// reporting one or more issues
callSurvey.callIssues = [ CallIssues.hadToRejoin ];
Betygsätt övergripande, ljud och video med ett exempelproblem
let overall = SurveyScore();
overall.score = 3;
let audio = SurveyScore();
audio.score = 4;
let video = SurveyScore();
video.score = 3;
callSurvey.overallScore = overall;
callSurvey.audioScore = audio;
callSurvey.videoScore = video;
callSurvey.videoIssues = [ VideoIssues.freezes ];
Skicka undersökning och hantera fel som SDK kan skicka
do {
var result = try await self.surveyFeature!.submit(survey: callSurvey)
} catch let error as NSError {
print("==> Survey Not Submitted " + error.localizedDescription)
}
Hitta olika typer av fel
Fel vid sändning av undersökning:
SUBMITSurvey-API:et kan returnera ett fel i följande scenarier:
Övergripande undersökningsklassificering krävs.
CallSurveyRatingScale
måste vara inom 0 och 100. LowerBound bör vara mindre än UpperBound. LowScoreThreshold bör ligga inom gränserna.Någon av poängen måste respektera de gränser som definieras av
CallSurveyRatingScale
. Alla värden iCallSurveyRatingScale
objektet är inkluderande. Med standardskalan ska poängvärdet vara mellan 1 och 5.Undersökningen kan inte skickas på grund av nätverks-/tjänstfel.
Tillgängliga undersökningstaggar
Övergripande samtal
Tagg | beskrivning |
---|---|
CannotJoin |
Kunden kunde inte ansluta till ett samtal |
CannotInvite |
Kunden kunde inte lägga till en ny deltagare vid anrop |
HadToRejoin |
Kunden lämnade och anslöt igen anropet som en lösning på ett problem |
CallEndedUnexpectedly |
Kundens samtal avslutades utan någon uppenbar anledning |
OtherIssues |
Problem som inte passar tidigare beskrivningar |
Ljudproblem
Tagg | beskrivning |
---|---|
NoLocalAudio |
Inget ljud på kunddatorn från samtalet, oförmåga att höra någon i samtalet |
NoRemoteAudio |
Ljud saknas från en specifik deltagare |
Echo |
Eko uppfattas i samtalet |
AudioNoise |
Ljud som tas emot med oavsiktligt brus |
LowVolume |
Ljudet är för lågt |
AudioStoppedUnexpectedly |
Ljud stoppas utan tydlig orsak (t.ex. ingen är avstängd) |
DistortedSpeech |
En deltagares röst är förvrängd, skiljer sig från deras förväntade röst |
AudioInterruption |
Kunden upplever ljudavbrott, röstsänkningar osv. |
OtherIssues |
Problem som inte passar tidigare beskrivningar |
Videoproblem
Tagg | beskrivning |
---|---|
NoVideoReceived |
Kunden får inte video från en deltagare |
NoVideoSent |
Kunden startar video men ingen i samtalet kan se den |
LowQuality |
Video av låg kvalitet |
Freezes |
Video fryser |
StoppedUnexpectedly |
Skärmresursen stoppas utan tydlig orsak (t.ex. kameran är på och videosamtal är aktiverat) |
DarkVideoReceived |
Videon skickas men deltagaren ser bara en mörk ruta (eller en annan enskild färg) |
AudioVideoOutOfSync |
Video och ljud verkar inte vara synkroniserade |
OtherIssues |
Problem som inte passar tidigare beskrivningar |
Problem med skärmresurs
Tagg | beskrivning |
---|---|
NoContentLocal |
Kunden får inte skärmresurs från en deltagare som delar |
NoContentRemote |
Kunden delar skärm, men andra en eller flera deltagare kan inte se den |
CannotPresent |
Det går inte att starta skärmresursen |
LowQuality |
Låg kvalitet på skärmdelningsvideo, t.ex. |
Freezes |
Skärmresursen låses under presentationen |
StoppedUnexpectedly |
Skärmresursen stoppas utan tydlig orsak (t.ex. att skärmresursen inte stoppades av kunden) |
LargeDelay |
Upplevd fördröjning mellan det som visas och vad som visas |
OtherIssues |
Problem som inte passar tidigare beskrivningar |
Anpassningsalternativ
Du kan välja att samla in vart och ett av de fyra API-värdena eller bara de som du tycker är viktigast. Du kan till exempel välja att bara fråga kunder om deras övergripande samtalsupplevelse i stället för att fråga dem om deras ljud-, video- och skärmdelningsupplevelse. Du kan också anpassa indataintervall så att de passar dina behov. Standardindataintervallet är 1 till 5 för total samtals-, ljud-, video- och skärmresurs. Varje API-värde kan dock anpassas från minst 0 till högst 100.
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Anpassade frågor
Förutom att använda API:et för undersökning av slutpunktsundersökning kan du skapa egna undersökningsfrågor och införliva dem med resultatet av undersökningen avslutad samtalsundersökning.
Resultatnyttolasten SubmitSurvey
innehåller dock data som du kan använda för att korrelera ACS-undersökningsdata med dina egna anpassade data och lagring. CallSurveyResult
klassen har fältet SurveyId
som anger en unik identifierare för undersökningen och CallId
anger en identifierare för samtalet där undersökningen genererades. Om du sparar dessa identifierare tillsammans med dina anpassade data kan data associeras unikt.
Viktigt!
Slut på samtalsundersökning är tillgänglig från och med version 1.8.0 av Windows Calling SDK. Se till att använda den versionen eller senare när du provar instruktionerna.
Exempel på API-användning
Funktionen Undersökning av slutpunktsundersökning ska användas när anropet har avslutats. Användare kan betygsätta alla typer av VoIP-samtal, 1:1, grupp, möte, utgående och inkommande. När en användares anrop avslutas kan ditt program visa ett användargränssnitt för slutanvändaren så att de kan välja en klassificeringspoäng, och vid behov välja problem som de har stött på under samtalet från vår fördefinierade lista.
Följande kodfragment visar ett exempel på ett-till-en-anrop. Efter samtalets slut kan ditt program visa ett undersökningsgränssnitt och när användaren har valt ett omdöme bör programmet anropa funktions-API:et för att skicka undersökningen med användarvalen.
Vi rekommenderar att du använder standardklassificeringsskalan, som är femstjärnigt (mellan 1 och 5). Du kan dock skicka en undersökning med anpassad klassificeringsskala.
Starta en undersökning
Du skapar ett CallSurvey
objekt genom att starta en undersökning. Detta registrerar en undersöknings avsikt. Om det här objektet CallSurvey
inte skickas efteråt innebär det att undersökningen hoppades över eller ignorerades av slutkund.
var surveyCallFeature = call.Features.Survey;
var survey = await surveyCallFeature.StartSurveyAsync();
Allmän användning
När du klassificerar anrop måste du respektera värden som definierats i skalningsfältet. LowerBound-värdet anger den sämsta möjliga upplevelsen, medan upperBound-värdet innebär den perfekta upplevelsen. Båda värdena är inkluderande.
OverallRating är en obligatorisk kategori för alla undersökningar.
Mer information om förslag på undersökningsanvändning finns i Undersökningsbegrepp
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Endast frekvensanrop – ingen anpassad skala
survey.OverallScore = new CallSurveyScore() { Score = 5 };
Endast frekvensanrop – med anpassad skala och problem
// configuring scale and score
survey.OverallScore = new CallSurveyScore() {
Scale = new CallSurveyRatingScale() {
LowerBound = 0,
UpperBound = 1,
LowScoreThreshold = 1,
},
Score = 1
};
// reporting one or more issues
survey.OverallIssues = CallIssues.HadToRejoin;
Betygsätt övergripande, ljud och video med ett exempelproblem
survey.OverallScore = new CallSurveyScore() {
Score = 5
};
survey.AudioScore = new CallSurveyScore() {
Score = 4
};
survey.VideoScore = new CallSurveyScore() {
Score = 3
};
survey.videoIssues = VideoIssues.Freezes;
Skicka undersökning och hantera fel som SDK kan skicka
try
{
CallSurveyResult result = await surveyCallFeature.SubmitSurveyAsync(survey);
Console.WriteLine("Survey submitted" + result.SurveyId);
} catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Hitta olika typer av fel
Fel vid sändning av undersökning:
SUBMITSurvey-API:et kan returnera ett fel i följande scenarier:
Övergripande undersökningsklassificering krävs.
CallSurveyRatingScale
måste vara inom 0 och 100. LowerBound bör vara mindre än UpperBound. LowScoreThreshold bör ligga inom gränserna.Någon av poängen måste respektera de gränser som definieras av
CallSurveyRatingScale
. Alla värden iCallSurveyRatingScale
objektet är inkluderande. Med standardskalan ska poängvärdet vara mellan 1 och 5.Undersökningen kan inte skickas på grund av nätverks-/tjänstfel.
Tillgängliga undersökningstaggar
Övergripande samtal
Tagg | beskrivning |
---|---|
CannotJoin |
Kunden kunde inte ansluta till ett samtal |
CannotInvite |
Kunden kunde inte lägga till en ny deltagare vid anrop |
HadToRejoin |
Kunden lämnade och anslöt igen anropet som en lösning på ett problem |
EndedUnexpectedly |
Kundens samtal avslutades utan någon uppenbar anledning |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Ljudproblem
Tagg | beskrivning |
---|---|
NoLocalAudio |
Inget ljud på kunddatorn från samtalet, oförmåga att höra någon i samtalet |
NoRemoteAudio |
Ljud saknas från en specifik deltagare |
Echo |
Eko uppfattas i samtalet |
AudioNoise |
Ljud som tas emot med oavsiktligt brus |
LowVolume |
Ljudet är för lågt |
AudioStoppedUnexpectedly |
Ljud stoppas utan tydlig orsak (t.ex. ingen är avstängd) |
DistortedSpeech |
En deltagares röst är förvrängd, skiljer sig från deras förväntade röst |
AudioInterruption |
Kunden upplever ljudavbrott, röstsänkningar osv. |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Videoproblem
Tagg | beskrivning |
---|---|
NoVideoReceived |
Kunden får inte video från en deltagare |
NoVideoSent |
Kunden startar video men ingen i samtalet kan se den |
LowQuality |
Video av låg kvalitet |
Freezes |
Video fryser |
StoppedUnexpectedly |
Skärmresursen stoppas utan tydlig orsak (t.ex. kameran är på och videosamtal är aktiverat) |
DarkVideoReceived |
Videon skickas men deltagaren ser bara en mörk ruta (eller en annan enskild färg) |
AudioVideoOutOfSync |
Video och ljud verkar inte vara synkroniserade |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Problem med skärmresurs
Tagg | beskrivning |
---|---|
NoContentLocal |
Kunden får inte skärmresurs från en deltagare som delar |
NoContentRemote |
Kunden delar skärm, men andra en eller flera deltagare kan inte se den |
CannotPresent |
Det går inte att starta skärmresursen |
LowQuality |
Låg kvalitet på skärmdelningsvideo, t.ex. |
Freezes |
Skärmresursen låses under presentationen |
StoppedUnexpectedly |
Skärmresursen stoppas utan tydlig orsak (t.ex. att skärmresursen inte stoppades av kunden) |
LargeDelay |
Upplevd fördröjning mellan det som visas och vad som visas |
OtherIssues |
Alla problem som inte passar tidigare beskrivningar |
Anpassningsalternativ
Du kan välja att samla in vart och ett av de fyra API-värdena eller bara de som du tycker är viktigast. Du kan till exempel välja att bara fråga kunder om deras övergripande samtalsupplevelse i stället för att fråga dem om deras ljud-, video- och skärmdelningsupplevelse. Du kan också anpassa indataintervall så att de passar dina behov. Standardindataintervallet är 1 till 5 för total samtals-, ljud-, video- och skärmresurs. Varje API-värde kan dock anpassas från minst 0 till högst 100.
Kommentar
En frågas angivna gränsvärde i API:et är det tröskelvärde som Microsoft använder när du analyserar dina undersökningsdata. När du anpassar gränsvärdet eller indataintervallet analyserar Microsoft dina undersökningsdata enligt din anpassning.
Anpassade frågor
Förutom att använda API:et för undersökning av slutpunktsundersökning kan du skapa egna undersökningsfrågor och införliva dem med resultatet av undersökningen avslutad samtalsundersökning.
Resultatnyttolasten SubmitSurvey
innehåller dock data som du kan använda för att korrelera ACS-undersökningsdata med dina egna anpassade data och lagring. CallSurveyResult
klassen har fältet SurveyId
som anger en unik identifierare för undersökningen och CallId
anger en identifierare för samtalet där undersökningen genererades. Om du sparar dessa identifierare tillsammans med dina anpassade data kan data associeras unikt.
Samla in undersökningsdata
Viktigt!
Du måste aktivera en diagnostikinställning i Azure Monitor för att skicka loggdata för dina undersökningar till en Log Analytics-arbetsyta, Event Hubs eller ett Azure Storage-konto för att ta emot och analysera dina undersökningsdata. Om du inte skickar undersökningsdata till något av dessa alternativ lagras inte dina undersökningsdata och kommer att gå förlorade. Information om hur du aktiverar dessa loggar för dina kommunikationstjänster finns i: Slut på samtalsundersökningsloggar
Visa undersökningsdata med en Log Analytics-arbetsyta
Du måste aktivera en Log Analytics-arbetsyta för att både lagra loggdata för dina undersökningar och få åtkomst till undersökningsresultat. Information om hur du aktiverar dessa loggar för din kommunikationstjänst finns i: Slut på samtalsundersökningsloggar.
- Du kan också integrera din Log Analytics-arbetsyta med Power BI. Se: Integrera Log Analytics med Power BI.
Bästa praxis
Här är våra rekommenderade undersökningsflöden och föreslagna frågefrågor för övervägande. Din utveckling kan använda vår rekommendation eller använda anpassade frågor och flöden för ditt visuella gränssnitt.
Fråga 1: Hur uppfattade användarna sin övergripande upplevelse av samtalskvalitet? Vi rekommenderar att du startar undersökningen genom att bara fråga om deltagarnas övergripande kvalitet. Om du separerar de första och andra frågorna hjälper det att bara samla in svar på problem med ljud, video och skärmdelning om en undersökningsdeltagare anger att de har upplevt problem med samtalskvalitet.
- Föreslagen fråga: "Hur var samtalskvaliteten?"
- API-frågevärden: Övergripande anrop
Fråga 2: Uppfattade användaren några problem med ljud-, video- eller skärmdelning i samtalet? Om en undersökningsdeltagare svarade på fråga 1 med en poäng vid eller under gränsvärdet för det övergripande samtalet, så presentera den andra frågan.
- Föreslagen fråga: "Vad kunde ha varit bättre?"
- API-frågevärden: Ljud, Video och Skärmdelning
Riktlinjer för undersökning
- Undvik undersökningsutbrändhet, inte undersöka alla samtalsdeltagare.
- Ordningen på dina frågor är viktig. Vi rekommenderar att du randomiserar sekvensen med valfria taggar i fråga 2 om respondenterna fokuserar det mesta av sin feedback på den första uppmaningen som de ser visuellt.
- Överväg att använda undersökningar för separata Azure Communication Services-resurser i kontrollerade experiment för att identifiera versionspåverkan.
Nästa steg
Analysera dina undersökningsdata, se: Undersökningsloggar för slutpunktsundersökning
Läs mer om undersökningen avslutad samtal, se: Översikt över slutpunktsundersökning
Lär dig hur du använder Log Analytics-arbetsytan, se: Självstudie om Log Analytics
Skapa egna frågor i Log Analytics, se: Kom igång frågor