Condividi tramite


Risoluzione dei problemi in Servizi di comunicazione di Azure

Questo articolo consente di risolvere i problemi che potrebbero verificarsi all'interno della soluzione Servizi di comunicazione di Azure. Se si sta risolvendo la risoluzione dei problemi relativi agli SMS, è possibile abilitare la creazione di report di recapito con Griglia di eventi di Azure per acquisire i dettagli di recapito degli SMS.

Come ottenere assistenza

Invitiamo gli sviluppatori a inviare domande, suggerire funzionalità e segnalare problemi come problemi. Per altre informazioni, vedere la pagina sul supporto dedicato e sulle opzioni della Guida.

Per risolvere determinati problemi, potrebbe essere necessario disporre di una o più delle informazioni seguenti:

  • IDMS-CV: risolvere i problemi relativi a chiamate e messaggi.
  • ID chiamata: identificare le chiamate Servizi di comunicazione di Azure.
  • ID messaggio SMS: identificare i messaggi SMS.
  • BREVE ID programma di codice breve: identificare un breve programma di codice breve applicazione.
  • ID brief della campagna di verifica con numero verde: identificare un'applicazione brief della campagna di verifica con numero verde.
  • ID messaggio di posta elettronica: identificare le richieste di posta elettronica di invio .
  • ID correlazione: identificare le richieste effettuate tramite Automazione chiamate.
  • Log delle chiamate: usare le informazioni dettagliate per risolvere i problemi di chiamata e di rete.

Per altre informazioni sulla limitazione e sulle limitazioni, vedere Limiti del servizio.

Accedere all'ID MS-CV

È possibile accedere all'ID MS-CV configurando la diagnostica nell'istanza dell'oggetto clientOptions quando si inizializzano gli SDK. È possibile configurare la diagnostica per qualsiasi SDK di Azure, tra cui chat, identità e chiamate VoIP.

Esempio di opzioni client

I frammenti di codice seguenti illustrano la configurazione della diagnostica. Quando si abilita la diagnostica per gli SDK, i dettagli di diagnostica vengono generati nel listener di eventi configurato.

// 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) });

Usare gli ID di accesso per l'automazione delle chiamate

Quando si risolvono problemi con Call Automation SDK, ad esempio la gestione delle chiamate o i problemi di registrazione, è necessario raccogliere gli ID che consentono di identificare la chiamata o l'operazione non riuscita. È possibile specificare uno dei due ID seguenti:

  • Dall'intestazione della risposta dell'API. Individuare il campo X-Ms-Skype-Chain-Id.

    Screenshot che mostra l'intestazione della risposta con X-Ms-Skype-Chain-Id.

  • Dagli eventi di callback ricevuti dall'applicazione dopo l'esecuzione di un'azione. Ad esempio, usare CallConnected o PlayFailed per individuare l'ID di correlazione.

    Screenshot che mostra un evento disconnesso di chiamata con l'ID di correlazione.

Oltre a uno di questi ID, è necessario fornire informazioni dettagliate sul caso d'uso con errori e sul timestamp in cui si è verificato l'errore.

Accedere all'ID chiamata client

Quando si risolvono i problemi relativi alle chiamate vocali o video, potrebbe essere necessario fornire un oggetto call ID. Accedere a questo valore tramite la id proprietà dell'oggetto call .

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

Accedere all'ID del messaggio SMS

Per i problemi relativi agli SMS, è possibile ottenere l'ID del messaggio dall'oggetto risposta.

// 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
}

Accedere all'ID breve del programma di codice breve

Trovare l'ID breve del programma nella portale di Azure nella sezione Codici brevi.

Screenshot che mostra un breve ID programma di codice.


Accedere all'ID breve della campagna di verifica gratuita

Trovare l'ID breve del programma nella portale di Azure nella sezione Documenti normativi.

Screenshot che mostra un ID breve della campagna di verifica a pagamento.


Accedere all'ID operazione di e-mail

Quando si risolvono i problemi relativi alle richieste di stato dell'invio di messaggi di posta elettronica o messaggi di posta elettronica, potrebbe essere necessario fornire un ID operazione. È possibile accedere a questo valore nella risposta.

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}");

Accedere ai file di supporto in Calling SDK

L'SDK chiamante fornisce metodi pratici per accedere ai file di log. Questi file possono aiutare gli specialisti e i tecnici del supporto Microsoft. È consigliabile raccogliere questi log quando si rileva un problema.

Abilitare e accedere ai registri chiamate

Informazioni su come abilitare e accedere ai log delle chiamate.

JavaScript

Servizi di comunicazione di Azure Calling SDK si basa internamente sulla libreria di @azure/logger per controllare la registrazione.

Usare il metodo setLogLevel del pacchetto @azure/logger per configurare il livello di output del log. Creare un logger e passarlo al CallClient costruttore.

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

È possibile usare AzureLogger per reindirizzare l'output di registrazione dagli SDK di Azure eseguendo l'override del AzureLogger.log metodo .

È possibile accedere alla console del browser, a un file o a un buffer. È anche possibile inviare al proprio servizio. Se si intende inviare log in rete al proprio servizio, non inviare una richiesta per riga di log perché questo metodo influisce negativamente sulle prestazioni del browser. Accumulare invece le righe dei log e inviarle in batch.

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

SDK nativo (Android/iOS)

Per Android, iOS e Windows, l'SDK per chiamate di Servizi di comunicazione di Azure offre l'accesso ai file di log.

Per le chiamate agli SDK nativi, vedere l'esercitazione sull'accesso ai file di log.

Librerie dell'interfaccia utente (Android, iOS)

Se usi le librerie dell'interfaccia utente di Servizi di comunicazione di Azure per Android o iOS, puoi richiedere commenti e suggerimenti degli utenti tramite il modulo di supporto predefinito.

Per altre informazioni sulle funzioni di supporto del modulo di supporto dell'interfaccia utente chiamante, vedere l'esercitazione sull'integrazione dei moduli di supporto. Questo articolo illustra come aggiungere il gestore eventi necessario e creare un'implementazione client/server di base per l'archiviazione centralizzata delle informazioni di supporto. Questo articolo descrive il percorso per l'integrazione con i servizi di supporto usati dall'organizzazione.

Creare flussi di supporto end-to-end nelle integrazioni ACS

Sia che si usi l'SDK chiamante o l'SDK dell'interfaccia utente chiamante, fornire supporto ai clienti è un componente chiave di qualsiasi integrazione affidabile.

L'articolo Fornire supporto per gli utenti evidenzia le considerazioni chiave in ogni punto del ciclo di feedback del supporto e fornisce punti di salto per altre informazioni.


Trovare informazioni su Microsoft Entra

Utilizzare le procedure seguenti per trovare informazioni su Microsoft Entra.

Ottenere un ID directory

Per trovare l'ID della directory (tenant), seguire questa procedura:

  1. Accedere al portale di Azure.

  2. Nel menu del servizio selezionare Microsoft Entra ID.

  3. Nella pagina Panoramica in Microsoft Entra ID copiare l'ID directory (ID tenant) e archiviarlo nel codice dell'applicazione.

    Screenshot che mostra come copiare l'ID tenant di Microsoft Entra e archiviarlo.

Ottenere un ID applicazione

Per trovare l'ID applicazione, seguire questa procedura:

  1. Accedere al portale di Azure.

  2. Nel menu del servizio selezionare Microsoft Entra ID.

  3. In Registrazioni app in Microsoft Entra ID selezionare l'applicazione.

  4. Copiare l'ID applicazione (client) e archiviarlo nel codice dell'applicazione.

    Screenshot che mostra come copiare l'ID applicazione Microsoft Entra e archiviarlo.

    È anche possibile trovare l'ID directory (tenant) nella pagina Panoramica dell'applicazione.

Ottenere un ID utente

Per trovare l'ID utente, seguire questa procedura:

  1. Accedere al portale di Azure.

  2. Nel menu del servizio selezionare Microsoft Entra ID.

  3. In Utenti in Microsoft Entra ID selezionare l'utente.

  4. Nella pagina Profilo per gli utenti di Microsoft Entra copiare l'ID oggetto e archiviarlo nel codice dell'applicazione.

    Screenshot che mostra come copiare l'ID utente di Microsoft Entra e archiviarlo.

Ottenere un ID risorsa non modificabile

In alcuni casi è anche necessario specificare l'ID risorsa non modificabile della risorsa Servizi di comunicazione di Azure. Per trovarla, seguire questa procedura:

  1. Accedere al portale di Azure.

  2. Aprire la risorsa Servizi di comunicazione di Azure.

  3. Nel menu del servizio selezionare Panoramica e passare a una visualizzazione JSON.

    Screenshot che mostra come passare una panoramica delle risorse Servizi di comunicazione di Azure a una visualizzazione JSON.

  4. Nella pagina Resource JSON copiare il immutableResourceId valore e specificarlo al team di supporto.

    Screenshot che mostra la pagina RESOURCE JSON.

Verificare l'idoneità alle licenze di Teams per usare Servizi di comunicazione di Azure supporto per gli utenti di Teams

Esistono due modi per verificare l'idoneità alla licenza di Teams per usare Servizi di comunicazione di Azure supporto per gli utenti di Teams.

Verificare tramite il client Web di Teams

Per verificare l'idoneità della licenza di Teams tramite il client Web di Teams, seguire questa procedura:

  1. Aprire il browser e passare al client Web di Teams.
  2. Accedere con le credenziali con una licenza di Teams valida.
  3. Se l'autenticazione ha esito positivo e si rimane nel https://teams.microsoft.com/ dominio, la licenza di Teams è idonea. Se l'autenticazione non riesce o si viene reindirizzati al https://teams.live.com/v2/ dominio, la licenza di Teams non è idonea all'uso Servizi di comunicazione di Azure supporto per gli utenti di Teams.

Controllare la licenza corrente di Teams tramite l'API Microsoft Graph

È possibile trovare la licenza di Teams corrente usando licenseDetails. L'API Microsoft Graph restituisce le licenze assegnate a un utente. Seguire questa procedura per usare lo strumento Graph Explorer per visualizzare le licenze assegnate a un utente.

  1. Aprire il browser e passare a Graph Explorer.

  2. Accedere a Graph Explorer usando le credenziali.

    Screenshot che mostra come accedere a Graph Explorer.

  3. Nella casella di query immettere l'API seguente e selezionare Esegui query.

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

    Screenshot che mostra come immettere un'API in Graph Explorer.

    In alternativa, è possibile eseguire una query per un determinato utente specificando l'ID utente usando l'API seguente:

    https://graph.microsoft.com/v1.0/users/{id}/licenseDetails
    
  4. Il riquadro Anteprima risposta mostra l'output.

    L'oggetto risposta illustrato di seguito potrebbe essere abbreviato per la leggibilità.

    {
        "@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. Trovare i dettagli della licenza in cui la servicePlanName proprietà ha uno dei valori nella tabella Licenze di Teams idonee.