Delen via


Problemen met Azure Communication Services oplossen

Dit document helpt u bij het oplossen van problemen die u mogelijk ondervindt in uw Communication Services-oplossing. Als u sms-problemen wilt oplossen, kunt u bezorgingsrapportage met Event Grid inschakelen om bezorgingsgegevens van sms-berichten vast te leggen.

Hulp krijgen

We raden ontwikkelaars aan vragen in te dienen, functies voor te stellen en problemen als problemen te melden. Om hulp te krijgen bij het krijgen van hulp, hebben we een speciale ondersteunings- en Help-optiespagina met uw opties voor ondersteuning.

Om u te helpen bij het oplossen van bepaalde typen problemen, wordt u mogelijk gevraagd naar een van de volgende soorten gegevens:

  • MS-CV-id: deze id wordt gebruikt om problemen met aanroepen en berichten op te lossen.
  • Oproep-id: deze id wordt gebruikt om Communication Services-aanroepen te identificeren.
  • Sms-bericht-id: deze id wordt gebruikt om sms-berichten te identificeren.
  • Korte code programma korte id: deze id wordt gebruikt om een korte code programma korte toepassing te identificeren.
  • Korte id van gratis verificatiecampagne: deze id wordt gebruikt om een gratis verificatiecampagne kort te identificeren.
  • E-mailbericht-id: deze id wordt gebruikt om e-mailaanvragen verzenden te identificeren.
  • Correlatie-id: deze id wordt gebruikt om aanvragen te identificeren die zijn gedaan met behulp van Gespreksautomatisering.
  • Oproeplogboeken: deze logboeken bevatten gedetailleerde informatie die kan worden gebruikt om problemen met gesprekken en netwerken op te lossen.

Bekijk ook onze documentatie over servicelimieten voor meer informatie over beperking en beperkingen.

De MS-CV-id ophalen

De MS-CV-id kan worden geopend door diagnostische gegevens in het objectexemplaren te configureren bij het clientOptions initialiseren van uw SDK's. Diagnostische gegevens kunnen worden geconfigureerd voor een van de Azure-SDK's, waaronder chat-, identiteits- en VoIP-aanroepen.

Voorbeeld van clientopties

In de volgende codefragmenten wordt de configuratie van diagnostische gegevens gedemonstreerd. Wanneer de SDK's worden gebruikt met diagnostische gegevens ingeschakeld, kunnen diagnostische gegevens worden verzonden naar de geconfigureerde gebeurtenislistener:

// 1. Import Azure.Core.Diagnostics
using Azure.Core.Diagnostics;

// 2. Initialize an event source listener instance
using var listener = AzureEventSourceListener.CreateConsoleLogger();
Uri endpoint = new Uri("https://<RESOURCE-NAME>.communication.azure.net");
var (token, communicationUser) = await GetCommunicationUserAndToken();
CommunicationUserCredential communicationUserCredential = new CommunicationUserCredential(token);

// 3. Setup diagnostic settings
var clientOptions = new ChatClientOptions()
{
    Diagnostics =
    {
        LoggedHeaderNames = { "*" },
        LoggedQueryParameters = { "*" },
        IsLoggingContentEnabled = true,
    }
};

// 4. Initialize the ChatClient instance with the clientOptions
ChatClient chatClient = new ChatClient(endpoint, communicationUserCredential, clientOptions);
ChatThreadClient chatThreadClient = await chatClient.CreateChatThreadAsync("Thread Topic", new[] { new ChatThreadMember(communicationUser) });

Toegangs-id's vereist voor gespreksautomatisering

Bij het oplossen van problemen met de Call Automation SDK, zoals oproepbeheer of opnameproblemen, moet u de id's verzamelen die helpen bij het identificeren van de mislukte oproep of bewerking. U kunt een van de twee hier genoemde id's opgeven.

  • Zoek het veld X-Ms-Skype-Chain-Idin de header van het API-antwoord.

    Schermopname van antwoordheader met X-Ms-Skype-Chain-Id.

  • Vanuit de callback-gebeurtenissen die uw toepassing ontvangt na het uitvoeren van een actie. Zoek bijvoorbeeld CallConnectedPlayFailedde correlationID.

    Schermopname van de niet-verbonden oproepgebeurtenis met correlatie-id.

Naast een van deze id's geeft u de details op over de foutieve use case en de tijdstempel voor wanneer de fout is waargenomen.

Toegang tot uw clientoproep-id

Bij het oplossen van problemen met spraak- of videogesprekken wordt u mogelijk gevraagd om een call ID. Deze waarde kan worden geopend via de id eigenschap van het call object:

// `call` is an instance of a call created by `callAgent.startCall` or `callAgent.join` methods
console.log(call.id)

De sms-bericht-id ophalen

Voor problemen met sms kunt u de bericht-id van het antwoordobject ophalen.

// Instantiate the SMS client
const smsClient = new SmsClient(connectionString);
async function main() {
  const result = await smsClient.send({
    from: "+18445792722",
    to: ["+1972xxxxxxx"],
    message: "Hello World 👋🏻 via Sms"
  }, {
    enableDeliveryReport: true // Optional parameter
  });
console.log(result); // your message ID is in the result
}

Toegang tot uw korte code programma korte id

De korte programma-id vindt u in Azure Portal op de blade Korte codes.

Schermopname van een korte code programma korte id.


Toegang tot uw gratis verificatiecampagne korte id

De programma-korte id vindt u in Azure Portal op de blade Regelgevingsdocumenten.

Schermopname van een korte id van een gratis verificatiecampagne.


Toegang tot uw e-mailbewerkings-id

Wanneer u problemen met het verzenden van e-mail- of e-mailberichtstatusaanvragen wilt oplossen, wordt u mogelijk gevraagd een e-mail of e-mailbericht te verzenden operation ID. Deze waarde kan worden geopend in het antwoord:

var emailSendOperation = await emailClient.SendAsync(
    wait: WaitUntil.Completed,
    senderAddress: sender,
    recipientAddress: recipient,
    subject: subject,
    htmlContent: htmlContent);

/// Get the OperationId so that it can be used for tracking the message for troubleshooting
Console.WriteLine($"Email operation id = {emailSendOperation.Id}");

Ondersteuningsbestanden openen in de Aanroepende SDK

De SDK voor aanroepen biedt handige methoden om toegang te krijgen tot de logboekbestanden. Deze bestanden kunnen waardevol zijn voor Microsoft-ondersteuningsspecialisten en -technici. Pro-actief verzamelen van deze logboeken wanneer er problemen worden gedetecteerd, wordt aanbevolen.

Oproeplogboeken inschakelen en openen

[JavaScript]

De Azure Communication Services Calling SDK is intern afhankelijk van @azure/loggerbibliotheek om logboekregistratie te beheren. Gebruik de setLogLevel methode van het pakket om het uitvoerniveau van het @azure/logger logboek te configureren. Maak een logger en geef deze door aan de CallClient-constructor:

import { setLogLevel, createClientLogger, AzureLogger } from '@azure/logger';
setLogLevel('verbose');
let logger = createClientLogger('ACS');
const callClient = new CallClient({ logger });

U kunt AzureLogger gebruiken om de logboekuitvoer van Azure SDK's om te leiden door de AzureLogger.log methode te overschrijven: u kunt zich aanmelden bij de browserconsole, een bestand, buffer, verzenden naar onze eigen service, enzovoort. Als u logboeken via het netwerk naar uw eigen service wilt verzenden, verzendt u geen aanvraag per logboekregel omdat dit van invloed is op de browserprestaties. Verzamel in plaats daarvan logboeklijnen en verzend ze in batches.

// Redirect log output
AzureLogger.log = (...args) => {
    // To console, file, buffer, REST API, etc...
    console.log(...args); 
};

Systeemeigen SDK (Android/iOS)

Voor Android, iOS en Windows biedt de Azure Communication Services Calling SDK toegang tot logboekbestanden.

Raadpleeg de zelfstudies voor toegang tot logboekbestanden voor het aanroepen van systeemeigen SDK's

UI-bibliotheken (Android, iOS)

Als u de uibibliotheken van Azure Communication Services voor Android of iOS gebruikt, kan gebruikersfeedback worden aangevraagd via het ingebouwde ondersteuningsformulier.

Voor meer informatie over het gebruik van de ondersteuningsfunctionaliteit van het ondersteuningsformulier voor oproepende gebruikersinterface, raadpleegt u de zelfstudie over de integratie van ondersteuningsformulieren. In dit document wordt u begeleid bij het toevoegen van de benodigde gebeurtenis-handler en het maken van een eenvoudige client-/server-implementatie voor gecentraliseerde opslag van ondersteuningsgegevens. Deze handleiding is ontworpen om u te begeleiden bij een integratie met de ondersteuningsservices die uw organisatie gebruikt.

End-to-end-ondersteuningsstromen bouwen in uw ACS-integraties

Ongeacht of u de Calling SDK of calling UI SDK gebruikt, en ondersteuning biedt aan eindgebruikers is een belangrijk onderdeel van elke robuuste integratie. In het volgende document worden de belangrijkste overwegingen op elk punt van de feedbacklus voor ondersteuning gemarkeerd en vindt u punten om meer te weten te komen.

Gebruikersondersteuning bieden


Microsoft Entra-gegevens zoeken

  • Map-id ophalen
  • Toepassings-id ophalen
  • Gebruikers-id ophalen

Map-id ophalen

Voer de volgende stappen uit om uw directory-id (tenant) te vinden:

  1. Navigeer naar Azure Portal en meld u aan bij Azure Portal met behulp van de referenties.

  2. Selecteer in het linkerdeelvenster Microsoft Entra-id.

  3. Kopieer op de overzichtspagina in Microsoft Entra-id de map-id (tenant) en sla deze op in uw toepassingscode.

    Schermopname van het kopiëren van de Microsoft Entra-tenant-id en het opslaan ervan.

Toepassings-id ophalen

Volg deze stappen om uw toepassings-id te vinden:

  1. Navigeer naar Azure Portal en meld u aan bij Azure Portal met behulp van de referenties.

  2. Selecteer in het linkerdeelvenster Microsoft Entra-id.

  3. Selecteer uw toepassing in App-registraties in Microsoft Entra-id.

  4. Kopieer de Toepassings-id en sla deze op in uw toepassingscode.

    Schermopname van het kopiëren van de Microsoft Entra-toepassings-id en het opslaan ervan.

    De map-id (tenant) vindt u ook op de overzichtspagina van de toepassing.

Gebruikers-id ophalen

Volg deze stappen om uw gebruikers-id te vinden:

  1. Navigeer naar Azure Portal en meld u aan bij Azure Portal met behulp van de referenties.

  2. Selecteer in het linkerdeelvenster Microsoft Entra-id.

  3. Selecteer uw gebruiker in Gebruikers in Microsoft Entra-id.

  4. Kopieer vanaf de profielpagina in Microsoft Entra-gebruikers de object-id en sla deze op in uw toepassingscode.

    Schermopname van het kopiëren van microsoft Entra-gebruikers-id en het opslaan ervan.

Onveranderbare resource-id ophalen

Soms moet u ook onveranderbare resource-id van uw Communication Service-resource opgeven. Voer de volgende stappen uit om deze te vinden:

  1. Navigeer naar Azure Portal en meld u aan bij Azure Portal met behulp van de referenties.
  2. Open uw Communication Service-resource.
  3. Selecteer In het linkerdeelvenster Overzicht en schakel over naar een JSON-weergaveSchermopname van het overschakelen van communicatieresourceoverzicht naar een JSON-weergave.
  4. Kopieer de waarde op de immutableResourceId pagina Resource JSON en geef deze op aan uw ondersteuningsteam. Schermopname van Resource JSON.

Verificatie van de geschiktheid van Teams-licenties voor het gebruik van Azure Communication Services-ondersteuning voor Teams-gebruikers

Er zijn twee manieren om te controleren of uw Teams-licentie in aanmerking komt voor het gebruik van Azure Communication Services-ondersteuning voor Teams-gebruikers:

  • Verificatie via teams-webclient
  • Uw huidige Teams-licentie controleren via Microsoft Graph API

Verificatie via teams-webclient

Volg deze stappen om te controleren of uw Teams-licentie in aanmerking komt via de Teams-webclient:

  1. Open uw browser en navigeer naar de Teams-webclient.
  2. Meld u aan met referenties met een geldige Teams-licentie.
  3. Als de verificatie is geslaagd en u in het https://teams.microsoft.com/ domein blijft, komt uw Teams-licentie in aanmerking. Als de verificatie mislukt of u wordt omgeleid naar het https://teams.live.com/v2/ domein, komt uw Teams-licentie niet in aanmerking voor het gebruik van Azure Communication Services-ondersteuning voor Teams-gebruikers.

Uw huidige Teams-licentie controleren via Microsoft Graph API

U vindt uw huidige Teams-licentie met behulp van licenseDetails Microsoft Graph API die de licenties retourneert die zijn toegewezen aan een gebruiker. Volg deze stappen om het hulpprogramma Graph Explorer te gebruiken om licenties weer te geven die zijn toegewezen aan een gebruiker:

  1. Open uw browser en navigeer naar Graph Explorer

  2. Meld u aan bij Graph Explorer met behulp van de referenties. Schermopname van het aanmelden bij Graph Explorer.

  3. Voer in het queryvak de volgende API in en klik op Query uitvoeren :

    https://graph.microsoft.com/v1.0/me/licenseDetails
    

    Schermopname van het invoeren van API in Graph Explorer.

    U kunt ook een query uitvoeren op een bepaalde gebruiker door de gebruikers-id op te geven met behulp van de volgende API:

    https://graph.microsoft.com/v1.0/users/{id}/licenseDetails
    
  4. In het voorbeeldvenster Antwoord wordt de uitvoer als volgt weergegeven:

    Het antwoordobject dat hier wordt weergegeven, kan worden ingekort voor leesbaarheid.

    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('071cc716-8147-4397-a5ba-b2105951cc0b')/assignedLicenses",
        "value": [
            {
                "skuId": "b05e124f-c7cc-45a0-a6aa-8cf78c946968",
                "servicePlans":[
                    {
                        "servicePlanId":"57ff2da0-773e-42df-b2af-ffb7a2317929",
                        "servicePlanName":"TEAMS1",
                        "provisioningStatus":"Success",
                        "appliesTo":"User"
                    }
                ]
            }
        ]
    }
    
  5. Licentiedetails zoeken waar de eigenschap servicePlanName een van de waarden in de tabel In aanmerking komende Teams-licenties heeft

Sdk-foutcodes aanroepen

De Azure Communication Services Calling SDK gebruikt de volgende foutcodes om u te helpen bij het oplossen van problemen met oproepen. Deze foutcodes worden weergegeven via de eigenschap call.callEndReason nadat de oproep is beëindigd.

Foutcode Beschrijving Actie die moet worden uitgevoerd
403 Verboden / Verificatiefout. Controleer of het Communication Services-token geldig is, en niet is verlopen.
404 Oproep is niet gevonden. Controleer of het nummer dat u belt (of de oproep waaraan u deelneemt) bestaat.
408 Time-out voor oproepcontroller. Er is een time-out voor de oproepcontroller opgetreden tijdens het wachten op protocolberichten van gebruikerseindpunten. Controleer of de clients zijn verbonden en beschikbaar zijn.
410 Fout met de lokale mediastack of media-infrastructuur. Zorg ervoor dat u de nieuwste SDK in een ondersteunde omgeving gebruikt.
430 Kan het bericht niet bezorgen bij de clienttoepassing. Zorg ervoor dat de clienttoepassing actief en beschikbaar is.
480 Het eindpunt van de externe client is niet geregistreerd. Controleer of het externe eindpunt beschikbaar is.
481 Verwerken van binnenkomende oproep is mislukt. Dien een ondersteuningsaanvraag in via de Azure-portal
487 Oproep is geannuleerd, lokaal afgewezen, beëindigd als gevolg van een probleem met een niet-overeenkomend eindpunt, of genereren van de media-aanbieding is mislukt. Verwacht gedrag.
490, 491, 496, 497, 498 Netwerkproblemen met lokaal eindpunt. Controleer het netwerk.
500, 503, 504 Fout in Communication Services-infrastructuur. Dien een ondersteuningsaanvraag in via de Azure-portal
603 Oproep is globaal geweigerd door een Communication Services-deelnemer Verwacht gedrag.

Foutcodes voor Automation SDK aanroepen

De onderstaande foutcodes worden weergegeven door de Call Automation SDK.

Foutcode Beschrijving Uit te voeren acties
400 Ongeldige aanvraag De invoeraanvraag is ongeldig. Bekijk het foutbericht om te bepalen welke invoer onjuist is.
400 Afspelen is mislukt Zorg ervoor dat uw audiobestand WAV, 16KHz, Mono is en zorg ervoor dat de bestands-URL openbaar toegankelijk is.
400 Herkennen is mislukt Controleer het foutbericht. Het bericht wordt gemarkeerd als deze fout wordt veroorzaakt doordat de time-out is bereikt of als de bewerking is geannuleerd. Voor meer informatie over de foutcodes en berichten kunt u onze handleiding voor het verzamelen van gebruikersinvoer bekijken.
401 Niet geautoriseerd HMAC-verificatie is mislukt. Controleer of de verbindingsreeks gebruikt voor het maken van CallAutomationClient juist is.
403 Verboden Aanvraag is verboden. Zorg ervoor dat u toegang hebt tot de resource waartoe u toegang wilt krijgen.
404 Resource is niet gevonden De aanroep waarmee u probeert te handelen, bestaat niet. Bijvoorbeeld het overzetten van een oproep die al is verbroken.
429 Te veel aanvragen Probeer het opnieuw na een vertraging die wordt voorgesteld in de header Retry-After en daarna exponentieel uitstel.
500 Interne serverfout Probeer het opnieuw na een vertraging. Als dit zich blijft voordoen, dient u een ondersteuningsticket in.
500 Afspelen is mislukt Dien een ondersteuningsaanvraag in via de Azure-portal
500 Herkennen is mislukt Controleer het foutbericht en controleer of de audiobestandsindeling geldig is (WAV, 16KHz, Mono), als de bestandsindeling geldig is, dient u een ondersteuningsaanvraag in via De Azure-portal.
502 Ongeldige gateway Probeer het opnieuw na een vertraging met een nieuwe HTTP-client.

Bekijk de onderstaande tips bij het oplossen van bepaalde problemen.

  • Uw toepassing krijgt de gebeurtenis IncomingCall Event Grid niet: zorg ervoor dat het toepassingseindpunt is gevalideerd met Event Grid tijdens het maken van een gebeurtenisabonnement. De inrichtingsstatus voor uw gebeurtenisabonnement is gemarkeerd als geslaagd als de validatie is geslaagd.
  • De fout 'The field CallbackUri is invalid': Call Automation biedt geen ondersteuning voor HTTP-eindpunten. Zorg ervoor dat de callback-URL die u opgeeft HTTPS ondersteunt.
  • PlayAudio-actie speelt niets af: momenteel wordt alleen de Wave-indeling (.wav) ondersteund voor audiobestanden. De audio-inhoud in het golfbestand moet mono (single-channel), 16-bits voorbeelden met een samplingfrequentie van 16.000 (16KHz) zijn.
  • Acties op PSTN-eindpunten werken niet: CreateCall, Transfer, AddParticipant en Redirect to phone numbers vereisen dat u de SourceCallerId in de actieaanvraag instelt. Tenzij u directe routering gebruikt, moet de bronoproeper-id een telefoonnummer zijn dat eigendom is van uw Communication Services-resource om de actie te laten slagen.

Raadpleeg dit artikel voor meer informatie over bekende problemen die worden bijgehouden door het productteam.

Foutcodes voor chat-SDK

De Azure Communication Services Chat SDK gebruikt de volgende foutcodes om u te helpen bij het oplossen van chatproblemen. De foutcodes worden weergegeven via de error.code eigenschap in het foutbericht.

Foutcode Beschrijving Actie die moet worden uitgevoerd
401 Niet geautoriseerd Controleer of het Communication Services-token geldig is, en niet is verlopen.
403 Verboden Zorg ervoor dat de initiator van de aanvraag toegang heeft tot de resource.
429 Te veel aanvragen Zorg ervoor dat uw toepassing aan de clientzijde dit scenario op een gebruiksvriendelijke manier verwerkt. Als de fout zich blijft voordoen, dient u een ondersteuningsaanvraag in.
503 Service niet beschikbaar Dien een ondersteuningsaanvraag in via de Azure-portal

SMS-foutcodes

De SMS SDK van Azure Communication Services gebruikt de volgende foutcodes om u te helpen bij het oplossen van SMS-problemen. De foutcodes worden weergegeven via het veld DeliveryStatusDetails in het rapport sms-bezorging.

Foutcode Beschrijving Actie die moet worden uitgevoerd
2000 Bericht is bezorgd
4000 Bericht wordt geweigerd vanwege fraudedetectie Zorg ervoor dat u het maximum aantal toegestane berichten voor uw nummer niet overschrijdt
4001 Bericht wordt geweigerd vanwege een ongeldige bron-/van-getalnotatie Zorg ervoor dat het getal Aan de notatie E.164 heeft en van getalnotatie E.164 of Korte code
4002 Bericht wordt geweigerd vanwege een ongeldige doel-/naar-getalnotatie Zorg ervoor dat het getal Aan de notatie E.164 heeft
4003 Bericht kan niet worden bezorgd vanwege niet-ondersteunde bestemming Controleer of de bestemming waarnaar u wilt verzenden, wordt ondersteund
4004 Bericht kan niet worden bezorgd omdat het doel-/doelnummer niet bestaat Zorg ervoor dat het nummer Aan waarnaar u verzendt, geldig is
4005 Bericht wordt geblokkeerd door doelprovider
4006 Het doel-/doelnummer is niet bereikbaar Probeer het bericht op een later tijdstip opnieuw te verzenden
4007 Het doel-/to-nummer heeft zich afgemeld voor het ontvangen van berichten van u Markeer het doel-/doelnummer als afgemeld zodat er geen verdere berichtpogingen worden gedaan op het nummer
4008 U hebt het maximum aantal toegestane berichten voor uw profiel overschreden Zorg ervoor dat u het maximum aantal berichten dat is toegestaan voor uw nummer niet overschrijdt of wachtrijen gebruikt om de berichten te batcheren
4009 Bericht wordt geweigerd door Microsoft Entitlement System Dit gebeurt meestal als frauduleuze activiteiten worden gedetecteerd. Neem contact op met ondersteuning voor meer informatie
4010 Bericht is geblokkeerd omdat het gratis nummer niet is geverifieerd Controleer niet-geverifieerde verzendlimieten en verzend gratis verificatie zo snel mogelijk
5000 Het bericht kan niet worden bezorgd. Neem contact op met het ondersteuningsteam van Microsoft voor meer informatie Een ondersteuningsaanvraag indienen via Azure Portal
5001 Bericht kan niet worden geleverd vanwege een tijdelijke niet-beschikbaarheid van de toepassing/het systeem
5002 Provider biedt geen ondersteuning voor het leveringsrapport Dit gebeurt meestal als een provider geen ondersteuning biedt voor leveringsrapporten. Er is geen actie vereist omdat het bericht mogelijk al is bezorgd.
9999 Bericht kan niet worden bezorgd vanwege onbekende fout/fout Probeer het bericht opnieuw te verzenden