Hívásautomatizálás áttekintése
Az Azure Communication Services Call Automation lehetővé teszi a fejlesztők számára, hogy kiszolgálóalapú, intelligens hívási munkafolyamatokat és hívásrögzítést készítsenek hang- és nyilvános telefonhálózati (PSTN-) csatornákhoz. A C#, Java, JavaScript és Python nyelven elérhető SDK-k műveletesemény-modellel segítenek személyre szabott ügyfél-interakciók kialakításában. A kommunikációs alkalmazások meghallgathatják a valós idejű hívási eseményeket, és vezérlősík-műveleteket hajthatnak végre (például válasz, átvitel, hang lejátszása, felvétel indítása stb.) az üzleti logika alapján irányíthatják és vezérelhetik a hívásokat.
Feljegyzés
A Hívásautomatizálás jelenleg nem támogatja a szobák hívásait.
Gyakori alkalmazási helyzetek
A Call Automation használatával létrehozható gyakori használati esetek közé tartoznak a következők:
- Program VoIP- vagy PSTN-hívások tranzakciós munkafolyamatokhoz, például kattintásra és találkozó emlékeztetőkhöz az ügyfélszolgálat javítása érdekében.
- Interaktív interakciós munkafolyamatokat hozhat létre az ügyfelek önkiszolgáló kiszolgálásához olyan használati esetekhez, mint a rendelési foglalások és a frissítések, a Lejátszás (Hang URL-címe, Szövegfelolvasás és SSML) és a Recognize (DTMF és Voice) műveletek használatával.
- Integrálhatja kommunikációs alkalmazásait a Contact Centers szolgáltatással és a magántelefon-hálózatokkal a Közvetlen útválasztás használatával.
- Az ügyfél identitásának védelméhez számmaszkoló szolgáltatásokat kell létrehoznia, hogy a vevőket az értékesítőkkel vagy a felhasználókkal összekapcsolja a platform partnerszállítóival.
- Növelje az előjegyzést azáltal, hogy automatizált ügyfél-outreach programokat hoz létre a marketinghez és az ügyfélszolgálathoz.
- A hívás utáni folyamat során elemezheti a nem kevert hangrögzítéseket minőségbiztosítás céljából.
Az Azure Communication Services Call Automation használatával hívási munkafolyamatokat hozhat létre az ügyfélszolgálati forgatókönyvekhez, ahogyan azt a magas szintű architektúra is mutatja. Fogadhatja a bejövő hívásokat, vagy kimenő hívásokat kezdeményezhet. Olyan műveleteket hajthat végre, mint egy üdvözlőüzenet lejátszása, az ügyfél csatlakoztatása egy élő ügynökhöz egy Azure Communication Services Calling SDK-ügyfélalkalmazásban a bejövő híváskérés megválaszolásához. Az Azure Communication Services PSTN- vagy közvetlen útválasztási támogatásával ezt a munkafolyamatot újra csatlakoztathatja a kapcsolattartási központhoz.
Képességek
Az alábbi lista az Azure Communication Services Call Automation SDK-kban jelenleg elérhető funkciók készletét mutatja be.
Funkcióterület | Funkció | .NET | Java | JavaScript | Python |
---|---|---|---|---|---|
Hívás előtti forgatókönyvek | Egy-az-egyhez hívás fogadása | ✔️ | ✔️ | ✔️ | ✔️ |
Csoportos hívás fogadása | ✔️ | ✔️ | ✔️ | ✔️ | |
Új kimenő hívás elhelyezése egy vagy több végpontra | ✔️ | ✔️ | ✔️ | ✔️ | |
Hívás átirányítása* (továbbítása) egy vagy több végpontra | ✔️ | ✔️ | ✔️ | ✔️ | |
Bejövő hívás elvetése | ✔️ | ✔️ | ✔️ | ✔️ | |
Hívásközi forgatókönyvek | Egy vagy több végpont hozzáadása meglévő híváshoz | ✔️ | ✔️ | ✔️ | ✔️ |
Végpont meglévő híváshoz való hozzáadásának megszakítása | ✔️ | ✔️ | ✔️ | ✔️ | |
Hang lejátszása hangfájlból | ✔️ | ✔️ | ✔️ | ✔️ | |
Hang lejátszása szövegfelolvasással | ✔️ | ✔️ | ✔️ | ✔️ | |
Felhasználói bemenet felismerése a DTMF-ben | ✔️ | ✔️ | ✔️ | ✔️ | |
Felhasználói hangbemenetek felismerése | ✔️ | ✔️ | ✔️ | ✔️ | |
Folyamatos DTMF-felismerés indítása | ✔️ | ✔️ | ✔️ | ✔️ | |
Folyamatos DTMF-felismerés leállítása | ✔️ | ✔️ | ✔️ | ✔️ | |
DTMF küldése | ✔️ | ✔️ | ✔️ | ✔️ | |
Résztvevő elnémítása | ✔️ | ✔️ | ✔️ | ✔️ | |
Egy vagy több végpont eltávolítása meglévő hívásból | ✔️ | ✔️ | ✔️ | ✔️ | |
Vakátvitel* egy 1:1-ás hívás egy másik végpontra | ✔️ | ✔️ | ✔️ | ✔️ | |
Vakátvitel* egy résztvevő csoporthívásból egy másik végpontra | ✔️ | ✔️ | ✔️ | ✔️ | |
Hívás lefagyása (a hívási láb eltávolítása) | ✔️ | ✔️ | ✔️ | ✔️ | |
Hívás leállása (az összes résztvevő eltávolítása és a hívás befejezése) | ✔️ | ✔️ | ✔️ | ✔️ | |
Médiaműveletek megszakítása | ✔️ | ✔️ | ✔️ | ✔️ | |
Egyéni adatok megosztása (VOIP- vagy SIP-fejléceken keresztül) végpontokkal, amikor hozzáadja őket egy híváshoz, vagy egy hívást továbbít hozzájuk | ✔️ | ✔️ | ✔️ | ✔️ | |
Lekérdezési forgatókönyvek | Hívásállapot lekérése | ✔️ | ✔️ | ✔️ | ✔️ |
Résztvevő lekérése hívásban | ✔️ | ✔️ | ✔️ | ✔️ | |
Hívás összes résztvevőjének listázása | ✔️ | ✔️ | ✔️ | ✔️ | |
Hívás felvétele | Felvétel indítása/szüneteltetése/folytatása/leállítása | ✔️ | ✔️ | ✔️ | ✔️ |
*A VoIP-hívások telefonszámra történő átvitele vagy átirányítása jelenleg nem támogatott.
Architektúra
A Hívásautomatizálás EGY REST API-felületet használ a kérések fogadásához és a szolgáltatáson belül végrehajtott összes műveletre adott válaszok megadásához. A hívás aszinkron jellege miatt a legtöbb művelet megfelelő eseményekkel rendelkezik, amelyek a művelet sikeres vagy sikertelen végrehajtásakor aktiválódnak.
Az Azure Communication Services az Event Grid használatával biztosítja a IncomingCall eseményt és a HTTPS-webhookokat az összes középhívási művelet visszahívásához.
Hívási műveletek
Hívás előtti műveletek
Ezeket a műveleteket a Rendszer a IncomingCall eseményértesítésben felsorolt célvégpont csatlakoztatása előtt hajtja végre. A webes kampó visszahívási eseményei csak a "válasz" előhívási műveletet közlik, az elutasítási vagy átirányítási műveleteket nem.
Válasz Az Event Grid és a Call Automation SDK Bejövő hívás hívása esemény használatával az alkalmazás fogadhatja a hívásokat. Ez a művelet olyan IVR-forgatókönyveket tesz lehetővé, ahol az alkalmazás programozott módon fogadhat bejövő PSTN-hívásokat. Más forgatókönyvek közé tartozik a hívás fogadása egy felhasználó nevében.
Ha elutasít egy hívást, az azt jelenti, hogy az alkalmazás fogadni tudja a IncomingCall eseményt, és megakadályozhatja, hogy a hívás a célvégponthoz legyen csatlakoztatva.
Átirányítás Az Event Grid bejövő híváshívási eseményével átirányítható egy vagy több végpontra, amely egyetlen vagy egyidejű csengetési (sim-ring) forgatókönyvet hoz létre. Az átirányítási művelet nem fogadja a hívást, a rendszer egyszerűen átirányítja vagy továbbítja a hívást egy másik célvégpontra a válaszhoz.
A Hívás létrehozása művelet segítségével kimenő hívásokat kezdeményezhet telefonszámokra és más kommunikációs felhasználókra. A használati esetek közé tartozik, hogy az alkalmazás kimenő hívásokat küld, amelyek proaktív módon tájékoztatják a felhasználókat a kimaradásról, vagy értesítést küldenek a rendelés frissítéséről.
Hívásközi műveletek
Ezek a műveletek a hívásautomatizálási SDK-k használatával fogadott vagy elhelyezett hívásokon is végrehajthatók. Minden félhívási műveletnek megfelelő sikeres vagy sikertelen webes kampóvisszahívási eseménye van.
Résztvevők hozzáadása/eltávolítása: Egy vagy több résztvevő egyetlen kérelemben vehető fel, és mindegyik résztvevő a támogatott célvégpontok egy változata. A rendszer minden résztvevőnek elküld egy webes visszahívást, amely sikeresen hozzáadódik a híváshoz.
Lejátszás : Amikor az alkalmazás válaszol egy hívásra, vagy kimenő hívást indít, lejátszhat egy hangüzenetet a hívó számára. Ez a hang szükség esetén hurkolható olyan helyzetekben, mint a zenelejátszás. További információkért tekintse meg az alapfogalmakat és útmutatónkat a hanghívások testreszabásához a felhasználók számára a Play-művelettel.
Bemenet felismerése Miután az alkalmazás lejátszott egy hangüzenetet, kérheti a felhasználói bemenetet az üzleti logika és a navigáció az alkalmazásban való mozgatásához. További információkért tekintse meg a felhasználói bemenetek gyűjtésére vonatkozó fogalmakat és útmutatónkat.
Folyamatos DTMF-felismerés , ha az alkalmazásnak a hívás bármely pontján képesnek kell lennie DTMF-hangok fogadására anélkül, hogy az alkalmazásnak egy adott felismerési műveletet kellene aktiválnia. Ez olyan esetekben lehet hasznos, amikor egy ügynök hívás alatt áll, és a felhasználónak valamilyen azonosítót vagy nyomkövetési számot kell megadnia. Ha többet szeretne megtudni arról, hogyan használhatja ezt a nézetet, tekintse meg útmutatónkat.
DTMF küldése Ha az alkalmazásnak DTMF-hangokat kell küldenie egy külső résztvevőnek, ez lehet például egy külső ügynökhöz való kitárcsázás és a bővítményszám megadása, vagy egy külső IVR-menü navigálása.
Az alkalmazás elnémíthat bizonyos felhasználókat az üzleti logikája alapján. A felhasználónak ezután manuálisan kell visszahangosítania magát, ha beszélni szeretne.
Átvitel Amikor az alkalmazás válaszol egy hívásra, vagy kimenő hívást helyez el egy végponton, a hívás átvihető egy másik célvégpontra. Az 1:1-alapú hívások átvitele eltávolítja az alkalmazás azon képességét, hogy a HívásautomatizálásI SDK-k használatával vezérelje a hívást.
Rekord : Ön dönti el, hogy mikor indítja el/szünetelteti/folytatja/állítja le a rögzítést az alkalmazás üzleti logikája alapján, vagy engedélyezheti a végfelhasználó számára a műveletek aktiválását. További információért tekintse meg az alapfogalmakat és a rövid útmutatót.
Lefagyás : Ha az alkalmazás egy-az-egyhez hívásra válaszolt, a lefagyás művelet eltávolítja a hívási lábat, és a másik végponttal leállítja a hívást. Ha a hívásban (csoporthívásban) kétnél több résztvevő van, a "lefagyás" művelettel eltávolítja az alkalmazás végpontját a csoporthívásból.
Állítsa le , hogy az alkalmazás válaszolt-e egy-az-egyhez vagy csoportos hívásra, vagy kimenő hívást indított egy vagy több résztvevővel, ez a művelet eltávolítja az összes résztvevőt, és befejezi a hívást. Ezt a műveletet úgy aktiválja, hogy a Hang-Up hívási műveletben igaz értékre állítja forEveryOne
a tulajdonságot.
Médiaműveletek megszakítása Az üzleti logika alapján előfordulhat, hogy az alkalmazásnak le kell mondania a folyamatban lévő és az üzenetsorba helyezett médiaműveleteket. A megszakított médiaművelettől és az üzenetsorban lévőktől függően egy webhookesemény jelenik meg, amely azt jelzi, hogy a művelet megszakítva.
Lekérdezési forgatókönyvek
Résztvevők listázása: A hívás összes résztvevőjének listáját adja vissza. A rögzítési és átírási robotok kimaradnak ebből a listából.
esemény
Az alábbi táblázat az Azure Communication Services által kibocsátott aktuális eseményeket ismerteti. Az alábbi két táblázat az Event Grid és a Hívásautomatizálás által webhookeseményként kibocsátott eseményeket ismerteti.
Event Grid-események
Az Event Grid által küldött események többsége platformfüggetlen, ami azt jelenti, hogy az SDK-tól (hívástól vagy hívásautomatizálástól) függetlenül bocsátják ki őket. Bár bármilyen eseményhez létrehozhat előfizetést, javasoljuk, hogy a IncomingCall eseményt használja az összes hívásautomatizálási esethez, ahol programozott módon szeretné vezérelni a hívást. Használja a többi eseményt jelentéskészítési/telemetriai célokra.
Esemény | Leírás |
---|---|
IncomingCall | Értesítés egy kommunikációs felhasználó vagy telefonszám hívásáról |
CallStarted | Hívás jön létre (bejövő vagy kimenő) |
CallEnded | A hívás le van állítva, és az összes résztvevő el lesz távolítva |
ParticipantAdded | Résztvevő lett hozzáadva egy híváshoz |
ParticipantRemoved | Egy résztvevő el lett távolítva egy hívásból |
RecordingFileStatusUpdated | Felvételfájl érhető el |
Ezekről az eseményekről és a hasznos adatok sémájáról itt olvashat bővebben
Automation-webhookesemények meghívása
A hívásautomatizálási eseményeket a rendszer elküldi a webes horoghívási URI-nak, amely egy új kimenő hívás fogadásakor vagy leadásakor van megadva.
Esemény | Leírás |
---|---|
Hívás Csatlakozás | Az alkalmazás hívási lába csatlakoztatva van (bejövő vagy kimenő) |
CallDisconnected | Az alkalmazás hívási lába le van választva |
CallTransferAccepted | Az alkalmazás hívási lába át lett adva egy másik végpontra |
CallTransferFailed | Az alkalmazás hívási lábának átvitele meghiúsult |
AddParticipantSucceed | Az alkalmazás hozzáadott egy résztvevőt |
AddParticipantFailed | Az alkalmazás nem tudott résztvevőt felvenni |
CancelAddParticipantSucceeded | Az alkalmazás megszakította a résztvevő hozzáadását |
CancelAddParticipantFailed | Az alkalmazás nem tudta megszakítani a résztvevő hozzáadását |
RemoveParticipantSucceeded | Az alkalmazás sikeresen eltávolított egy résztvevőt a hívásból. |
RemoveParticipantFailed | Az alkalmazás nem tudott eltávolítani egy résztvevőt a hívásból. |
RésztvevőkUpdated | A résztvevő állapota megváltozott, amíg az alkalmazás hívási lába egy híváshoz kapcsolódott |
PlayCompleted | Az alkalmazás sikeresen lejátszotta a megadott hangfájlt |
PlayFailed | Az alkalmazás nem tudta lejátszani a hangot |
PlayCanceled | A kért lejátszási művelet megszakadt |
RecognizeCompleted | A felhasználói bemenet felismerése sikeresen befejeződött |
RecognizeCanceled | A kért felismerő művelet megszakadt |
RecognizeFailed | A felhasználói bemenet felismerése sikertelen volt a műveletesemények felismerésével kapcsolatos további információkért tekintse meg a felhasználói bemenetek gyűjtésére vonatkozó útmutatónkat |
RecordingStateChanged | A rögzítési művelet állapota aktívról inaktívra változott, vagy fordítva |
ContinuousDtmfRecognitionToneReceived | A StartContinuousDtmfRecognition sikeresen befejeződött, és DTMF-hangvétel érkezett a résztvevőtől |
ContinuousDtmfRecognitionToneFailed | A StartContinuousDtmfRecognition befejeződött, de hiba történt a résztvevő DTMF-hangjának kezelése során |
ContinuousDtmfRecognitionStopped | A StopContinuousRecognition sikeres végrehajtása |
SendDtmfCompleted | A SendDTMF sikeresen befejeződött, és a DTMF-hangokat elküldték a cél résztvevőnek |
SendDtmfFailed | Hiba történt a DTMF-hangok küldése közben |
A különböző műveletekhez közzétett események megismeréséhez tekintse meg ezt az útmutatót , amely kódmintákat és sorozatdiagramokat biztosít a különböző hívásvezérlési folyamatokhoz.
A visszahívási események elismerésekor ajánlott szabványos HTTP-állapotkódokkal(például 200 OK) válaszolni. A részletes információk szükségtelenek, és jobban megfelelnek a hibakeresési folyamatoknak.
A visszahívási események kézbesítésének biztonságossá tételéről ebben az útmutatóban olvashat.
Művelet visszahívási URI-ja
Nem kötelező paraméter egyes hívásközi API-kban, amelyek eseményeket használnak aszinkron válaszokként. A rendszer alapértelmezés szerint minden eseményt a CreateCall/ AnswerCall API által beállított alapértelmezett visszahívási URI-nak küld, amikor a felhasználó létrehoz egy hívást. Az Operation Callback Uri használatával ennek az egyéni (egyszeri) kérésnek a megfelelő eseményei lesznek elküldve az új Uri-nak.
Támogatott API | Megfelelő esemény |
---|---|
AddParticipant | AddParticipantSucceed /AddParticipantFailed |
RemoveParticipant | RemoveParticipantSucceed/RemoveParticipantFailed |
TransferCall | CallTransferAccepted / CallTransferFailed |
CancelAddParticipant | CancelAddParticipantSucceed / CancelAddParticipantFailed |
Indítás | PlayCompleted / PlayFailed / PlayCanceled |
PlayToAll | PlayCompleted / PlayFailed / PlayCanceled |
Recognize | RecognizeCompleted / RecognizeFailed / RecognizeCanceled |
StopContinuousDTMFRecognition | ContinuousDtmfRecognitionStopped |
SendDTMF | ContinuousDtmfRecognitionToneReceived / ContinuousDtmfRecognitionToneFailed |
Következő lépések
Íme néhány érdekes cikk az Ön számára:
- Példákkal megismerheti, hogyan kell fizetnie az erőforrást a különböző híváshasználati esetekért .
- Próbálja ki a gyorsútmutatót egy kimenő hívás indításához.
- Ismerje meg a hívásautomatizálás által közzétett használati és működési naplókat .