Řešení potíží ve službě Azure Communication Services
Tento dokument vám pomůže vyřešit problémy, ke kterým může docházet v rámci řešení komunikačních služeb. Pokud řešíte potíže se službou SMS, můžete povolit zasílání zpráv o doručení pomocí Event Gridu , abyste zachytili podrobnosti o doručení SMS.
Získání nápovědy
Doporučujeme vývojářům odesílat otázky, navrhovat funkce a hlásit problémy jako problémy. Abychom vám pomohli získat pomoc, máme vyhrazenou stránku s možnostmi podpory a možností nápovědy, která uvádí vaše možnosti podpory.
Pokud chcete pomoct s řešením určitých typů problémů, můžete být požádáni o některé z následujících informací:
- ID MS-CV: Toto ID slouží k řešení potíží s voláními a zprávami.
- ID volání: Toto ID slouží k identifikaci volání komunikačních služeb.
- ID zprávy SMS: Toto ID slouží k identifikaci zpráv SMS.
- Krátké ID programu kódu: Toto ID slouží k identifikaci krátké aplikace programu kódu.
- Stručné ID kampaně pro ověření zdarma: Toto ID slouží k identifikaci stručné aplikace pro bezplatnou ověřovací kampaň.
- ID e-mailové zprávy: Toto ID slouží k identifikaci žádostí o odeslání e-mailu.
- ID korelace: Toto ID slouží k identifikaci požadavků provedených pomocí automatizace volání.
- Protokoly volání: Tyto protokoly obsahují podrobné informace k řešení potíží s voláním a sítí.
Další informace o omezování a omezeních najdete také v dokumentaci k limitům služeb.
Přístup k ID MS-CV
K ID MS-CV lze získat přístup konfigurací diagnostiky v instanci objektu clientOptions
při inicializaci sad SDK. Diagnostiku je možné nakonfigurovat pro libovolnou sadu Sdk Azure, včetně volání chatu, identity a VoIP.
Příklad možností klienta
Následující fragmenty kódu ukazují konfiguraci diagnostiky. Pokud se sady SDK používají s povolenou diagnostikou, můžou se do nakonfigurovaného naslouchacího procesu událostí pustit 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) });
Přístupová ID požadovaná pro automatizaci volání
Při řešení potíží se sadou SDK pro automatizaci volání, jako je správa volání nebo zaznamenávání problémů, musíte shromáždit ID, která pomáhají identifikovat neúspěšné volání nebo operaci. Můžete zadat některé ze dvou ID uvedených zde.
V hlavičce odpovědi rozhraní API vyhledejte pole
X-Ms-Skype-Chain-Id
.Z událostí zpětného volání obdrží vaše aplikace po provedení akce. Můžete například
CallConnected
PlayFailed
vyhledat ID korelace.
Kromě jednoho z těchto ID uveďte podrobnosti o případu neúspěšného použití a časové razítko, kdy došlo k selhání.
Přístup k ID volání klienta
Při řešení potíží s hlasovými hovory nebo videohovory můžete být požádáni o poskytnutí call ID
. K této hodnotě lze přistupovat prostřednictvím id
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 okně Krátké kódy.
Přístup ke krátkému ID kampaně pro ověření bezplatné linky
Krátké ID programu najdete na webu Azure Portal v okně Regulační dokumenty.
Přístup k ID operace e-mailu
Při řešení potíží s odesíláním e-mailů nebo žádostí o stav e-mailové zprávy můžete být požádáni o poskytnutí operation ID
zprávy . K této hodnotě je možné získat přístup 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 podpůrným souborům v volající sadě SDK
Volání sady SDK poskytuje metody usnadnění přístupu k souborům protokolu. Tyto soubory mohou sloužit cenným pracovníkům a technikům podpory Microsoftu. Aktivně shromažďuje tyto protokoly při zjištění problémů.
Povolení a přístup k protokolům volání
[JavaScript]
Sada SDK pro volání služeb Azure Communication Services spoléhá interně na knihovnu @azure/logger k řízení protokolování.
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 });
Pomocí AzureLoggeru můžete přesměrovat výstup protokolování ze sad Azure SDK přepsáním AzureLogger.log
metody: Můžete se přihlásit do konzoly prohlížeče, souboru, vyrovnávací paměti, odeslání do vlastní služby atd. Pokud budete odesílat protokoly přes síť do vlastní služby, neodesílejte požadavek na řádek protokolu, protože to bude mít vliv na 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 sada SDK pro volání služeb Azure Communication Services nabízí přístup k souborům protokolů.
Informace o volání nativní sady SDK najdete v kurzech 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 o zpětnou vazbu uživatelů prostřednictvím integrovaného formuláře podpory.
Další informace o tom, jak používat funkce podpory formuláře Podpora volání uživatelského rozhraní, naleznete v kurzu integrace formuláře podpory. Tento dokument vás provede přidáním potřebné obslužné rutiny události a vytvořením základní implementace klienta/serveru pro centralizované ukládání informací o podpoře. Tato příručka je navržená tak, aby vás provedla na cestě k integraci se službami podpory, které vaše organizace používá.
Vytváření kompletních toků 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 koncovým uživatelům klíčovou součástí jakékoli robustní integrace. Následující dokument zdůrazňuje klíčové aspekty v každém bodě smyčky zpětné vazby podpory a poskytuje odkazy na další informace.
Poskytování uživatelské podpory
Vyhledání informací Microsoft Entra
- Získání ID adresáře
- Získání ID aplikace
- Získání ID uživatele
Získání ID adresáře
Pokud chcete najít ID adresáře (tenanta), postupujte takto:
Přejděte na Azure Portal a přihlaste se k webu Azure Portal pomocí přihlašovacích údajů.
V levém podokně vyberte MICROSOFT Entra ID.
Na stránce Přehled v Microsoft Entra ID zkopírujte ID adresáře (tenanta) a uložte ho do kódu vaší aplikace.
Získání ID aplikace
ID aplikace zjistíte takto:
Přejděte na Azure Portal a přihlaste se k webu Azure Portal pomocí přihlašovacích údajů.
V levém podokně vyberte MICROSOFT Entra ID.
V Registrace aplikací v Microsoft Entra ID vyberte aplikaci.
Zkopírujte ID aplikace a uložte ho v kódu aplikace.
ID adresáře (tenanta) najdete také na stránce přehledu aplikace.
Získání ID uživatele
Id uživatele najdete takto:
Přejděte na Azure Portal a přihlaste se k webu Azure Portal pomocí přihlašovacích údajů.
V levém podokně vyberte MICROSOFT Entra ID.
V okně Uživatelé v Microsoft Entra ID vyberte uživatele.
Na stránce Profil v uživatelích Microsoft Entra zkopírujte ID objektu a uložte ho do kódu aplikace.
Získání neměnného ID prostředku
Někdy také potřebujete zadat neměnné ID prostředku vašeho prostředku komunikační služby. Pokud ho chcete najít, postupujte takto:
- Přejděte na Azure Portal a přihlaste se k webu Azure Portal pomocí přihlašovacích údajů.
- Otevřete prostředek komunikační služby.
- V levém podokně vyberte Přehled a přepněte do zobrazení JSON.
- Na stránce JSON prostředku zkopírujte
immutableResourceId
hodnotu a zadejte ji týmu podpory.
Ověření oprávněnosti licencí Teams k používání podpory služeb 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
- Kontrola aktuální licence Teams prostřednictvím rozhraní Microsoft Graph API
Ověření prostřednictvím webového klienta Teams
Pokud chcete ověřit způsobilost k licenci Teams prostřednictvím webového klienta Teams, postupujte takto:
- Otevřete prohlížeč a přejděte do webového klienta Teams.
- Přihlaste se pomocí přihlašovacích údajů, které mají platnou licenci Teams.
- Pokud je ověření úspěšné a zůstanete v https://teams.microsoft.com/ doméně, vaše licence Teams je oprávněná. Pokud ověřování selže nebo jste přesměrováni do https://teams.live.com/v2/ domény, 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í rozhraní Microsoft Graph API licenseDetails , které vrací licence přiřazené uživateli. Pomocí tohoto postupu můžete pomocí nástroje Graph Explorer zobrazit licence přiřazené uživateli:
Otevřete prohlížeč a přejděte do Graph Exploreru.
Přihlaste se k Graph Exploreru pomocí přihlašovacích údajů.
Do pole dotazu zadejte následující rozhraní API a klikněte na Spustit dotaz :
https://graph.microsoft.com/v1.0/me/licenseDetails
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
V podokně Náhled odpovědi se zobrazí výstup takto:
Všimněte si, že 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" } ] } ] }
Vyhledání podrobností o licenci, kde vlastnost
servicePlanName
obsahuje jednu z hodnot v tabulce Opravňující licence Teams
Volání kódů chyb sady SDK
Sada SDK pro volání služeb Azure Communication Services používá následující kódy chyb, které vám pomůžou řešit problémy s voláním. Tyto kódy chyb jsou zpřístupněny prostřednictvím call.callEndReason
vlastnosti po ukončení volání.
Kód chyby | Popis | Akce, která se má provést |
---|---|---|
403 | Zakázáno / Selhání ověřování | Ujistěte se, že je token komunikační služby platný a nevypršela jeho platnost. |
404 | Volání nebylo nalezeno. | Ujistěte se, že číslo, které voláte (nebo hovor, ke kterému se připojujete), existuje. |
408 | Vypršel časový limit ovladače hovoru. | Vypršel časový limit kontroleru volání čekající na zprávy protokolu z koncových bodů uživatele. Ujistěte se, že jsou klienti připojení a jsou k dispozici. |
410 | Chyba místní zásobníku médií nebo infrastruktury médií | Ujistěte se, že používáte nejnovější sadu SDK v podporovaném prostředí. |
430 | Zprávu nelze doručit klientské aplikaci. | Ujistěte se, že je klientská aplikace spuštěná a dostupná. |
480 | Koncový bod vzdáleného klienta není zaregistrovaný. | Ujistěte se, že je vzdálený koncový bod dostupný. |
481 | Zpracování příchozího hovoru se nezdařilo. | Vytvořte žádost o podporu prostřednictvím webu Azure Portal. |
487 | Volání se zrušilo, místně odmítlo, skončilo kvůli problému s neshodou koncových bodů nebo se nepodařilo vygenerovat nabídku médií. | Očekávané chování |
490, 491, 496, 497, 498 | Problémy se sítí místního koncového bodu | Zkontrolujte síť. |
500, 503, 504 | Chyba infrastruktury komunikačních služeb | Vytvořte žádost o podporu prostřednictvím webu Azure Portal. |
603 | Volání globálně odmítnuté vzdáleným účastníkem komunikační služby | Očekávané chování |
Kódy chyb sady SDK pro automatizaci volání
Následující kódy chyb jsou zpřístupněny sadou SDK pro automatizaci volání.
Kód chyby | Popis | Akce, které je potřeba provést |
---|---|---|
400 | Chybný požadavek | Vstupní požadavek je neplatný. Podívejte se na chybovou zprávu a zjistěte, který vstup je nesprávný. |
400 | Neúspěšné přehrávání | Ujistěte se, že je váš zvukový soubor WAV, 16KHz, Mono a ujistěte se, že je adresa URL souboru veřejně přístupná. |
400 | Rozpoznávání se nezdařilo. | Zkontrolujte chybovou zprávu. Zpráva se zvýrazní, pokud příčinou tohoto selhání je dosažení časového limitu nebo zrušení operace. Další informace o kódech chyb a zprávách najdete v našem průvodci postupy pro shromažďování uživatelských vstupů. |
401 | Neautorizováno | Ověření HMAC se nezdařilo. Ověřte, jestli je připojovací řetězec použitá k vytvoření CallAutomationClient správná. |
403 | Zakázáno | Požadavek je zakázaný. Ujistěte se, že máte přístup k prostředku, ke kterému se pokoušíte získat přístup. |
404 | Prostředek nebyl nalezen. | Volání, se kterými se pokoušíte pracovat, neexistuje. Například převod volání, které je již odpojeno. |
429 | Příliš mnoho žádostí | Zkuste to znovu po zpoždění navrhovaném v hlavičce Opakovat až po, a pak exponenciální zpomalování. |
500 | Vnitřní chyba serveru | Zkuste to znovu po zpoždění. Pokud se zachová, vytvořte lístek podpory. |
500 | Neúspěšné přehrávání | Vytvořte žádost o podporu prostřednictvím webu Azure Portal. |
500 | Rozpoznávání se nezdařilo. | Zkontrolujte chybovou zprávu a ověřte platnost formátu zvukového souboru (WAV, 16KHz, Mono), pokud je formát souboru platný, pak prostřednictvím webu Azure Portal vytvořte žádost o podporu. |
502 | Chybná brána | Zkuste to znovu po zpoždění s čerstvým klientem HTTP. |
Při řešení určitých problémů zvažte následující tipy.
- Vaše aplikace nedostává událost IncomingCall Event Grid: Ujistěte se, že koncový bod aplikace byl ověřen pomocí Event Gridu při vytváření odběru událostí. Stav zřizování odběru událostí se označí jako úspěšný, pokud bylo ověření úspěšné.
- Zobrazuje se chyba Identifikátor CallbackUri pole je neplatný: Automatizace volání nepodporuje koncové body HTTP. Ujistěte se, že adresa URL zpětného volání, kterou zadáte, podporuje PROTOKOL HTTPS.
- Akce PlayAudio nic nepřehrává: V současné době je u zvukových souborů podporován pouze formát Wave (.wav). Zvukový obsah v souboru wave musí být mono (jednokanálový), 16bitový vzork s vzorkovací frekvencí 16 000 (16 KHz).
- Akce koncových bodů veřejné telefonní sítě nefungují: CreateCall, Transfer, AddParticipant a Redirect na telefonní čísla vyžadují, abyste v žádosti o akci nastavili SourceCallerId. Pokud nepoužíváte přímé směrování, id zdrojového volajícího by mělo být telefonní číslo vlastněné prostředkem komunikační služby, aby akce uspěla.
Informace o známých problémech sledovaných produktovými týmy najdete v tomto článku.
Kódy chyb chatovací sady SDK
Sada SDK chatu služby Azure Communication Services používá následující kódy chyb, které vám pomůžou při řešení potíží s chatem. Kódy chyb jsou zpřístupněny prostřednictvím error.code
vlastnosti v odpovědi na chybu.
Kód chyby | Popis | Akce, která se má provést |
---|---|---|
401 | Neautorizováno | Ujistěte se, že je token komunikační služby platný a nevypršela jeho platnost. |
403 | Zakázáno | Ujistěte se, že iniciátor požadavku má přístup k prostředku. |
429 | Příliš mnoho žádostí | Ujistěte se, že aplikace na straně klienta tento scénář zpracovává uživatelsky přívětivým způsobem. Pokud chyba přetrvává, vytvořte žádost o podporu. |
503 | Nedostupná služba | Vytvořte žádost o podporu prostřednictvím webu Azure Portal. |
Kódy chyb SMS
Sada AZURE Communication Services SMS SDK používá následující kódy chyb, které vám pomůžou při řešení potíží se serverem SMS. Kódy chyb jsou zpřístupněny prostřednictvím pole DeliveryStatusDetails v oznámení o doručení SMS.
Kód chyby | Popis | Akce, která se má provést |
---|---|---|
2000 | Zpráva byla úspěšně doručena | |
4000 | Zpráva je odmítnuta kvůli detekci podvodů | Ujistěte se, že nepřekračujete maximální povolený počet zpráv pro vaše číslo. |
4001 | Zpráva je odmítnuta kvůli neplatnému formátu zdroje nebo čísla z | Ujistěte se, že číslo To je ve formátu E.164 a formát Od čísla je ve formátu E.164 nebo Krátký kód. |
4002 | Zpráva je odmítnuta kvůli neplatnému formátu cíle nebo čísla Do. | Ujistěte se, že číslo To je ve formátu E.164. |
4003 | Zpráva se nepovedla doručit kvůli nepodporovanému cíli | Zkontrolujte, jestli je podporovaný cíl, na který se pokoušíte odeslat. |
4004 | Zpráva se nepodařilo doručit, protože neexistuje cíl nebo číslo do | Ujistěte se, že číslo to, na které odesíláte, je platné. |
4005 | Zpráva je blokována cílovým operátorem. | |
4006 | Cíl/číslo na číslo není dostupné. | Zkuste zprávu znovu odeslat později. |
4007 | Číslo Cíl/Číslo se odhlásilo od příjmu zpráv od vás. | Označte jako číslo Cíl/To jako odhlášení, aby se na číslo nezkoušely žádné další pokusy o zprávu. |
4008 | Překročili jste maximální počet zpráv povolených pro váš profil. | Ujistěte se, že nepřekračujete maximální počet zpráv povolených pro vaše číslo, nebo použijte fronty k dávkování zpráv. |
4009 | Systém nároků Společnosti Microsoft odmítl zprávu. | Nejčastěji k tomu dochází v případě, že se zjistí podvodná aktivita. Další podrobnosti získáte od podpory. |
4010 | Zpráva se zablokovala kvůli neověřeným číslu bezplatné linky | Kontrola neověřených limitů odesílání a co nejdříve odeslání bezplatného ověření |
5000 | Zpráva se nepodařilo doručit. Další podrobnosti získáte od týmu podpory Microsoftu. | Vytvoření žádosti o podporu prostřednictvím webu Azure Portal |
5001 | Zpráva se nedoručila kvůli dočasné nedostupnosti aplikace nebo systému | |
5002 | Dopravce nepodporuje oznámení o doručení | Nejčastěji k tomu dochází v případě, že dopravce nepodporuje hlášení o doručení. Žádná akce se nevyžaduje, protože zpráva už možná byla doručena. |
9999 | Zpráva se nepodařilo doručit kvůli neznámé chybě nebo selhání | Zkuste zprávu poslat znovu. |
Související informace
- Přístup k protokolům pro hlas a video, chat, e-mail, nahrávání, SMS a automatizaci hovorů.
- Rozhraní API názvu protokolu pro volání sady SDK
- Metriky
- Omezení služby
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro