Share via


Bejövő hívás fogalmai

Az Azure Communication Services Call Automation lehetővé teszi a fejlesztők számára, hogy hívásokat kezdeményező és fogadó alkalmazásokat hozzanak létre. Az Event Grid-előfizetéseket használja az események továbbítására IncomingCall , így elengedhetetlen, hogy a környezete megkapja ezeket az értesítéseket az alkalmazás számára, hogy hatékonyan irányítson vagy fogadjon hívásokat. Ezért a bejövő hívások alapjainak megértése elengedhetetlen az Azure Communication Services Call Automationben rejlő lehetőségek teljes kihasználásához.

Hívási forgatókönyvek

A környezet beállítása előtt fontos tisztában lenni az eseményt kiváltó IncomingCall forgatókönyvekkel. Az esemény aktiválásához IncomingCall az Azure Communication Services-erőforráshoz társított Azure Communication Services-identitásra vagy nyilvános telefonhálózatra (PSTN) kell hívást kezdeményezni. Az alábbi példák az alábbi erőforrásokra mutatnak be példákat:

  1. Azure Communication Services-identitás
  2. Az Azure Communication Services-erőforrás tulajdonában lévő PSTN-telefonszám

Az alábbi példák alapján a következő forgatókönyvek aktiválnak egy IncomingCall Eseményrácsnak küldött eseményt:

Source Destination Forgatókönyv(ek)
Azure Communication Services-identitás Azure Communication Services-identitás Hívás, átirányítás, résztvevő hozzáadása, átvitel
Azure Communication Services-identitás Az Azure Communication Services-erőforrás tulajdonában lévő PSTN-szám Hívás, átirányítás, résztvevő hozzáadása, átvitel
Nyilvános PSTN Az Azure Communication Services-erőforrás tulajdonában lévő PSTN-szám Hívás, átirányítás, résztvevő hozzáadása, átvitel

Megjegyzés:

Fontos tisztában lenni azzal, hogy az Azure Communication Services-identitások egy felhasználót vagy egy alkalmazást is képviselhetnek. Bár a platform nem rendelkezik olyan beépített funkcióval, amely explicit módon hozzárendelhet egy identitást egy felhasználóhoz vagy alkalmazáshoz, az alkalmazás vagy a támogató infrastruktúra képes erre. Ha többet szeretne megtudni erről a témakörről, tekintse meg az identitáskezelési útmutatót.

Event Grid-erőforrás-szolgáltató regisztrálása

Ha korábban nem használta az Event Gridet az Azure-előfizetésében, előfordulhat, hogy regisztrálnia kell az Event Grid-erőforrás-szolgáltatót. A szolgáltató regisztrálásához kövesse az alábbi lépéseket:

  1. Nyissa meg az Azure Portalt.
  2. A bal oldali menüben válassza az Előfizetések lehetőséget.
  3. Válassza ki az Event Gridhez használt előfizetést.
  4. A bal oldali menü Beállítások területén válassza az Erőforrás-szolgáltatók lehetőséget.
  5. Keresse ki a Microsoft.EventGrid elemet.
  6. Ha az erőforrás-szolgáltató nincs regisztrálva, válassza a Regisztráció lehetőséget.

Bejövő hívásértesítés fogadása az Event Gridből

Az Azure Communication Servicesben az IncomingCall értesítés fogadása egy Event Grid-előfizetésen keresztül lehetséges. Az értesítés fogadójaként rugalmasan döntheti el, hogyan kezelje azt. Mivel a Call Automation API a Webhook-visszahívásokat használja az eseményekhez, gyakori, hogy "Webhook" Event Grid-előfizetést használ. A szolgáltatás azonban különböző előfizetési típusokat kínál, és ön szabadon választhatja ki az igényeinek leginkább megfelelőt.

Ez az architektúra a következő előnyökkel jár:

  • Az Event Grid-előfizetés szűrőivel az IncomingCall értesítést adott alkalmazásokhoz irányíthatja.
  • A PSTN-szám-hozzárendelés és az útválasztási logika létezhet az alkalmazásban, és nem lehet statikusan konfigurálva online.
  • A hívási forgatókönyvek szakaszban leírtak szerint az alkalmazás akkor is értesíthető, ha a felhasználók egymás között kezdeményeznek hívásokat. Ezután kombinálhatja ezt a forgatókönyvet a hívásrögzítési API-kkal a megfelelőségi igények kielégítése érdekében.

Az esemény hasznos adatainak mintájáért és az Event Gridben közzétett egyéb hívási eseményekről további információt ebben az útmutatóban talál.

Íme egy példa egy Event Grid Webhook-előfizetésre, ahol az eseménytípus-szűrő csak az IncomingCall eseményt figyeli.

Image showing IncomingCall subscription.

Hívásátirányítási lehetőségek a Hívásautomatizálás és az Event Grid használatával

A Hívásautomatizálás és az Event Grid esetében a hívásátirányítás az Ön igényeihez igazítható. Az Event Grid-előfizetés speciális szűrőinek használatával feliratkozhat egy IncomingCall adott forrás-/cél telefonszámra vagy Egy Azure Communication Services-identitásra vonatkozó értesítésre. Ez az értesítés ezután átirányítható egy végpontra, például egy Webhook-előfizetésre. A Call Automation SDK használatával a végpontalkalmazás dönthet úgy, hogy átirányítja a hívást egy másik Azure Communication Services-identitásba vagy a PSTN-be.

Megjegyzés:

Annak érdekében, hogy az alkalmazás csak a szükséges eseményeket kapja meg, javasoljuk, hogy konfigurálja a szűrést az Event Gridben. Ez különösen fontos eseményeket generáló IncomingCall forgatókönyvekben, például bejövő PSTN-hívások átirányítása egy Azure Communication Services-végpontra. Ha nem használ szűrőt, az Event Grid-előfizetés két IncomingCall eseményt kap – egyet a PSTN-híváshoz, egyet pedig az Azure Communication Services felhasználójához – annak ellenére, hogy csak az első értesítést akarta megkapni. Ha figyelmen kívül hagyja az ilyen forgatókönyveket szűrőkkel vagy más mechanizmusokkal az alkalmazásban, az végtelen ciklusokat és egyéb nemkívánatos viselkedést eredményezhet.

Íme egy példa egy speciális szűrőre egy Event Grid-előfizetésen, amely a sztringet figyeli a data.to.PhoneNumber.Value "+18005551212" PSTN-telefonszámmal kezdődően.

Image showing Event Grid advanced filter.

Szám hozzárendelése

Ha az Azure Communication Servicesben használja az IncomingCall értesítést, szabadon társíthat egy adott számot bármely végponthoz. Ha például lekért egy PSTN-telefonszámot +14255551212 , és egy olyan felhasználóhoz szeretné hozzárendelni, akinek identitása 375f0e2f-e8db-4449-9bf7-2054b02e42b4 van az alkalmazásban, akkor az adott számnak az identitáshoz való leképezését kell fenntartania. IncomingCall A címzett mezőben szereplő telefonszámnak megfelelő értesítés küldésekor meghívhatja az Redirect API-t, és megadhatja a felhasználó identitását. Más szóval kezelheti a szám-hozzárendelést az alkalmazásban, és futtatáskor irányíthatja vagy fogadhat hívásokat.

Ajánlott eljárások

  1. Annak érdekében, hogy az Event Grid eseményeket biztosítson a Webhook-végpontnak, és megakadályozza a rosszindulatú felhasználók számára a végpont eseményekkel való elárasztását, igazolnia kell a végpont tulajdonjogát. Az események fogadásával kapcsolatos problémák megoldásához győződjön meg arról, hogy a konfigurált webhook ellenőrzése a kezeléssel SubscriptionValidationEventtörténik. További információkért tekintse meg ezt az útmutatót.

  2. Bejövő hívási esemény fogadásakor, ha az alkalmazás nem tud válaszolni egy 200Ok állapotkóddal az Event Gridnek a szükséges időkereten belül, az Event Grid exponenciális visszalépési újrapróbálkozással küldi újra az eseményt. A bejövő hívások azonban csak 30 másodpercig csörögnek, és az azt követő hívásra való válaszadás nem lesz hatékony. A lejárt vagy elavult hívások újrapróbálkozásának megakadályozása érdekében javasoljuk, hogy az újrapróbálkozási szabályzatot állítsa 2-re, az eseményidőt pedig 1 percre. Ezeket a beállításokat az esemény-előfizetés További funkciók lapján találja. Az újrapróbálkozásról itt talál további információt.

  3. Javasoljuk, hogy engedélyezze az Event Grid-erőforrás naplózását a sikertelen események figyeléséhez. Ehhez lépjen a kommunikációs erőforrás Események lapján található rendszertémakörre, és engedélyezze a naplózást a diagnosztikai beállításokból. A hibanaplók az AegDeliveryFailureLogs táblában találhatók.

    AegDeliveryFailureLogs
    | limit 10 
    | where Message has "incomingCall"
    

Következő lépések