Sdílet prostřednictvím


Řešení potíží ve službě Azure Communication Services

Tento článek vám pomůže vyřešit problémy, ke kterým může docházet v rámci řešení Azure Communication Services. Pokud řešíte potíže se službou SMS, můžete povolit generování sestav doručení pomocí služby Azure Event Grid , abyste zachytili podrobnosti o doručení SMS.

Získání pomoci

Doporučujeme vývojářům odesílat otázky, navrhovat funkce a hlásit problémy jako problémy. Další informace najdete na stránce věnované vyhrazené podpoře a možnostem nápovědy.

Pokud chcete pomoct s řešením určitých problémů, možná budete potřebovat jednu nebo více následujících informací:

  • ID MS-CV: Řešení potíží s voláními a zprávami
  • ID volání: Identifikace volání služeb Azure Communication Services
  • ID zprávy SMS: Identifikace zpráv SMS.
  • Krátké ID programu s krátkým kódem: Identifikujte krátkou stručnou aplikaci programu kódu.
  • Stručné ID kampaně pro ověření bezplatnou bezplatnou linkou: Identifikujte stručnou aplikaci pro ověření zdarma.
  • ID e-mailové zprávy: Identifikace žádostí o odeslání e-mailu
  • ID korelace: Identifikace požadavků provedených pomocí automatizace volání
  • Protokoly volání: Podrobné informace slouží k řešení potíží s voláním a sítí.

Další informace o omezování a omezeních najdete v tématu Omezení služby.

Přístup k ID MS-CV

K ID MS-CV se dostanete tak, že při inicializaci sad SDK nakonfigurujete diagnostiku v clientOptions instanci objektu. Diagnostiku můžete nakonfigurovat pro libovolnou sadu Azure SDK, včetně chatu, identity a volání VoIP.

Příklad možností klienta

Následující fragmenty kódu ukazují konfiguraci diagnostiky. Když povolíte diagnostiku sad SDK, vygenerují se do nakonfigurovaného naslouchacího procesu událostí podrobnosti o diagnostice.

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

Použití PŘÍSTUPOVÝCH ID pro automatizaci volání

Při řešení potíží se sadou SDK pro automatizaci volání, jako jsou problémy se správou volání nebo záznamem, musíte shromáždit ID, která pomáhají identifikovat neúspěšné volání nebo operaci. Můžete zadat jednu z následujících dvou ID:

  • Z hlavičky odpovědi rozhraní API. Vyhledejte pole X-Ms-Skype-Chain-Id.

    Snímek obrazovky znázorňující záhlaví odpovědi s ID X-Ms-Skype-Chain-Id

  • Z událostí zpětného volání, které vaše aplikace obdrží po spuštění akce. Použijte nebo CallConnected PlayFailed vyhledejte ID korelace.

    Snímek obrazovky znázorňující událost odpojenou volání s ID korelace.

Kromě jednoho z těchto ID musíte zadat podrobnosti o případu neúspěšného použití a časovém razítku, kdy k chybě došlo.

Přístup k ID volání klienta

Při řešení potíží s hlasovými hovory nebo videohovory možná budete muset poskytnout call ID. Přístup k této hodnotě id prostřednictvím vlastnosti objektu call .

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

Přístup k ID zprávy SMS

V případě problémů se serverem SMS můžete shromáždit ID zprávy z objektu odpovědi.

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

Přístup ke krátkému ID programu krátkého kódu

Krátké ID programu najdete na webu Azure Portal v části Krátké kódy .

Snímek obrazovky znázorňující krátké ID programu kódu


Přístup ke krátkému ID kampaně pro ověření bezplatné linky

Stručné ID programu najdete na webu Azure Portal v části Regulační dokumenty .

Snímek obrazovky se stručným ID kampaně pro ověření bezplatnou bezplatnou linkou


Přístup k ID operace e-mailu

Při řešení potíží se stavem odeslání e-mailu nebo žádostmi o stav e-mailové zprávy možná budete muset zadat ID operace. K této hodnotě se dostanete v odpovědi.

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

Přístup k souborům podpory v sadě SDK pro volání

Volající sada SDK poskytuje pohodlné metody pro přístup k souborům protokolu. Tyto soubory můžou pomoct specialistům a technikům podpory Microsoftu. Tyto protokoly doporučujeme shromáždit, když zjistíte problém.

Povolení a přístup k protokolům volání

Zjistěte, jak povolit protokoly volání a přistupovat k němu.

JavaScript

K řízení protokolování spoléhá sada SDK pro volání služeb Azure Communication Services interně na knihovnu @azure/logger .

setLogLevel Ke konfiguraci úrovně výstupu protokolu použijte metodu @azure/logger z balíčku. Vytvořte logger a předejte ho do konstruktoru CallClient .

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

Výstup protokolování ze sad Azure SDK můžete AzureLogger přesměrovat přepsáním AzureLogger.log metody.

Můžete se přihlásit do konzoly prohlížeče, souboru nebo vyrovnávací paměti. Můžete také odesílat do vlastní služby. Pokud budete odesílat protokoly přes síť do vlastní služby, neodesílejte požadavek na řádek protokolu, protože tato metoda nepříznivě ovlivňuje výkon prohlížeče. Místo toho se hromadí řádky protokolů a posílají je v dávkách.

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

Nativní sada SDK (Android/iOS)

Pro Android, iOS a Windows nabízí sada SDK pro volání služeb Azure Communication Services přístup k souborům protokolů.

Informace o volání nativních sad SDK najdete v kurzu přístupu k souborům protokolu.

Knihovny uživatelského rozhraní (Android, iOS)

Pokud používáte knihovny uživatelského rozhraní služeb Azure Communication Services pro Android nebo iOS, můžete požádat uživatele o zpětnou vazbu prostřednictvím integrovaného formuláře podpory.

Další informace o podpůrných funkcích formuláře podpory volajícího uživatelského rozhraní najdete v kurzu integrace formuláře podpory. V tomto článku se dozvíte, jak přidat potřebnou obslužnou rutinu události a vytvořit základní implementaci klienta/serveru pro centralizované ukládání informací o podpoře. Tento článek popisuje cestu integrace se službami podpory, které vaše organizace používá.

Vytváření toků kompletní podpory v integracích služby ACS

Bez ohledu na to, jestli používáte sadu SDK pro volání nebo sadu SDK pro volání uživatelského rozhraní, je poskytování podpory vašim zákazníkům klíčovou součástí jakékoli robustní integrace.

Článek Poskytování podpory uživatelů zdůrazňuje klíčové aspekty v každém bodě smyčky zpětné vazby podpory a poskytuje rychlé body, které vám umožní získat další informace.


Vyhledání informací o Microsoft Entra

Pomocí následujících postupů vyhledejte informace o společnosti Microsoft Entra.

Získání ID adresáře

Pokud chcete najít ID adresáře (tenanta), postupujte takto:

  1. Přihlaste se k portálu Azure.

  2. V nabídce služby vyberte Microsoft Entra ID.

  3. Na stránce Přehled v Microsoft Entra ID zkopírujte ID adresáře (ID tenanta) a uložte ho do kódu aplikace.

    Snímek obrazovky, který ukazuje, jak zkopírovat ID tenanta Microsoft Entra a uložit ho

Získání ID aplikace

ID aplikace zjistíte takto:

  1. Přihlaste se k portálu Azure.

  2. V nabídce služby vyberte Microsoft Entra ID.

  3. V Registrace aplikací v Microsoft Entra ID vyberte aplikaci.

  4. Zkopírujte ID aplikace (klienta) a uložte ho do kódu aplikace.

    Snímek obrazovky, který ukazuje, jak zkopírovat ID aplikace Microsoft Entra a uložit ho

    ID adresáře (tenanta) najdete také na stránce Přehled aplikace.

Získání ID uživatele

Id uživatele najdete takto:

  1. Přihlaste se k portálu Azure.

  2. V nabídce služby vyberte Microsoft Entra ID.

  3. V okně Uživatelé v Microsoft Entra ID vyberte uživatele.

  4. Na stránce Profil pro uživatele Microsoft Entra zkopírujte ID objektu a uložte ho do kódu aplikace.

    Snímek obrazovky, který ukazuje, jak zkopírovat ID uživatele Microsoft Entra a uložit ho

Získání neměnného ID prostředku

Někdy také potřebujete zadat neměnné ID prostředku prostředku služby Azure Communication Services. Pokud ho chcete najít, postupujte takto:

  1. Přihlaste se k portálu Azure.

  2. Otevřete prostředek Azure Communication Services.

  3. V nabídce služby vyberte Přehled a přepněte do zobrazení JSON.

    Snímek obrazovky, který ukazuje, jak přepnout přehled prostředku Azure Communication Services na zobrazení JSON

  4. Na stránce JSON prostředku zkopírujte immutableResourceId hodnotu a zadejte ji týmu podpory.

    Snímek obrazovky znázorňující stránku JSON prostředku

Ověření způsobilosti licencí Teams pro používání podpory azure Communication Services pro uživatele Teams

Existují dva způsoby, jak ověřit oprávněnost licence Teams k používání podpory služeb Azure Communication Services pro uživatele Teams.

Ověření prostřednictvím webového klienta Teams

Pokud chcete ověřit oprávněnost licence Teams prostřednictvím webového klienta Teams, postupujte takto:

  1. Otevřete prohlížeč a přejděte do webového klienta Teams.
  2. Přihlaste se pomocí přihlašovacích údajů, které mají platnou licenci Teams.
  3. Pokud ověření proběhne úspěšně a zůstanete v https://teams.microsoft.com/ doméně, vaše licence Teams je oprávněná. Pokud se ověření nezdaří nebo budete přesměrováni na https://teams.live.com/v2/ doménu, vaše licence Teams nemá nárok na používání podpory služeb Azure Communication Services pro uživatele Teams.

Kontrola aktuální licence Teams prostřednictvím rozhraní Microsoft Graph API

Aktuální licenci Teams najdete pomocí licenseDetails. Rozhraní Microsoft Graph API vrátí licence přiřazené uživateli. Pomocí tohoto postupu můžete pomocí nástroje Graph Explorer zobrazit licence přiřazené uživateli.

  1. Otevřete prohlížeč a přejděte do Graph Exploreru.

  2. Přihlaste se k Graph Exploreru pomocí přihlašovacích údajů.

    Snímek obrazovky, který ukazuje, jak se přihlásit k Graph Exploreru

  3. Do pole dotazu zadejte následující rozhraní API a vyberte Spustit dotaz.

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

    Snímek obrazovky znázorňující, jak zadat rozhraní API v Graph Exploreru

    Nebo můžete zadat dotaz na konkrétního uživatele zadáním ID uživatele pomocí následujícího rozhraní API:

    https://graph.microsoft.com/v1.0/users/{id}/licenseDetails
    
  4. V podokně Náhled odpovědi se zobrazí výstup.

    Zde zobrazený objekt odpovědi může být zkrácen pro čitelnost.

    {
        "@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. Vyhledejte podrobnosti o licenci, kde má servicePlanName vlastnost jednu z hodnot v tabulce Opravňující licence Teams.