Keri sisuni

SpeechCall sõnumid

SpeechCall on interaktiivne häälvastuse (IVR) sõnumitüüp, mis võimaldab teha automaatseid häälkõnesid menüüvalikute ja DTMF-i (kahetoonilise mitme sagedusega) interaktsiooniga.

Ülevaade

SpeechCall võimaldab ettevõtetel: - Tehke klientidele automaatseid häälkõnesid - Esitage tutvustavaid helisõnumeid - Esitage interaktiivseid menüüvalikuid - Käsitsege DTMF-klahvivajutuse vastuseid (0-9, *, #) - Määratlege kehtetute/ajalõpu sisendite jaoks kohandatud käitumine - Käivitage kohandatud kehade ja päistega veebihaagid kasutajate valikute põhjal - Hallake kõnevoogu dünaamiliselt (menüüdes navigeerimine)

Kasutusjuhtumid

  • Kliendiküsitlused - Koguge tagasisidet telefoni menüüvalikute kaudu
  • Kohtumiste meeldetuletused - kinnitage või muutke ajakava häälsuhtluse abil
  • Tellimuste jälgimine - Tellimuse oleku värskenduste pakkumine
  • Interaktiivsed märguanded - edastage tegevusvalikutega olulist teavet
  • Häälkinnitus - Mitmefaktoriline autentimine häälkõnede kaudu

Taotle vormingut

Põhistruktuur

{
  "messages": [
    {
      "from": "BazarCOM",
      "to": "+380936670003",
      "text": "ivr",
      "type": "speechcall",
      "menu": [
        {
          "introUrl": "ivr_651854",
          "idleTimeoutMsec": 10000,
          "dtmfActions": {
            "d1": [
              {
                "action": "webhook",
                "url": "https://api.example.com/callback/option1",
                "body": {
                  "confirm": true
                },
                "headers": {
                  "X-Custom-Header": "value"
                }
              },
              {
                "action": "hangup"
              }
            ],
            "d2": [
              {
                "action": "webhook",
                "url": "https://api.example.com/callback/option2",
                "body": {
                  "confirm": false
                }
              },
              {
                "action": "hangup"
              }
            ],
            "wrong": [
              {
                "action": "hangup"
              }
            ]
          }
        }
      ]
    }
  ]
}

Parameetri kirjeldus

Parameeter Tüüp Nõutav Kirjeldus
"alates" string Jah Saatja identifikaator (alfa nimi või ID)
kuni string Jah Saaja telefoninumber rahvusvahelises vormingus
tekst string Jah Teksti väärtus, SpeechCall
"tüüp" string Jah Peab olema "kõnekõne"
menüü massiiv Jah Kõne menüükonfiguratsioonide hulk

Iga menüüobjekt sisaldab:

Parameeter Tüüp Nõutav Kirjeldus
"introUrl" string Jah Sissejuhatava helifaili URL või identifikaator
idleTimeoutMsec täisarv Ei Klahvivajutuse ootamise aeg millisekundites (nt „10000”). Kui kasutaja ei vasta, käivitatakse klahvi "vale" all konfigureeritud toimingud
"dtmfActions" objekt Jah Toimingute DTMF-klahvide kaart

DTMF toimingud

Objekt `dtmfActions' vastendab DTMF-võtmed või eritingimused toimingute massiividega:

DTMF-võti Kirjeldus
"d0" Vajutage 0
"d1" Vajutage 1
"d2" Vajutage 2
... ...
"d9" Vajutage 9
d* Vajutage *
d# Vajutage #
vale Käivitub, kui vajutatakse kehtetut klahvi või kui jõutakse väärtuseni „idleTimeoutMsec” ilma igasuguse sisendita

Iga DTMF-võti/-tingimus vastendub tegevuste massiiviga, mis täidetakse järjestikku.

Toetatud toimingud

Tegevus Parameetrid Kirjeldus
veebihaak "url" (string, kohustuslik)
body" (objekt, valikuline)
päised (objekt, valikuline)
Saadab määratud URL-ile HTTP POST-i päringu JSON-vormingus. Objekt „body” pesastatakse veebihaagi päringu välja „action” alla. Kohandatud päised on kaasatud HTTP-päistena.
hanup Puudub Lõpetab kõne
gotoMenu "menüü" (string või täisarv) Navigeerib kõne massiivi "menüü" teise menüüsse, kasutades selle 0-põhist indeksit (nt "1")

Veebihaagi kohaletoimetamise vorming

Kui toiming „Webhaok” käivitatakse, saadab süsteem HTTP POST-i päringu konfigureeritud URL-ile „Content-Type: application/json”.

Veebihaagi päringu päised

Kui toiming on konfigureeritud parameetriga „headers”, kaasatakse need võtme-väärtuse paarid päringusse HTTP-päistena.

Veebihaagi päringu sisu

Teie veebihaagi URL-ile saadetud JSON-i koormusel on järgmine struktuur.

{
  "from": "0443914272",
  "to": "50001",
  "mid": "7748021",
  "action": {
    "confirm": true
  }
}
Väli Tüüp Kirjeldus
"alates" string Helistaja telefoninumber / saatja ID
kuni string Saaja telefoninumber
keskel string Sõnumi ID
"tegevus" objekt Kohandatud JSON-objekt, mis on määratletud toimingu kehaväljal

Täielik näide

Lihtne IVR koos ajalõpu ja sisendi kontrollimisega

{
  "messages": [
    {
      "from": "BazarCOM",
      "to": "+380936670003",
      "text": "ivr",
      "type": "speechcall",
      "menu": [
        {
          "introUrl": "ivr_651854",
          "idleTimeoutMsec": 10000,
          "dtmfActions": {
            "d1": [
              {
                "action": "webhook",
                "url": "https://api.example.com/callback/option1",
                "body": {
                  "confirm": true
                }
              },
              {
                "action": "hangup"
              }
            ],
            "d2": [
              {
                "action": "webhook",
                "url": "https://api.example.com/callback/option2",
                "body": {
                  "confirm": false
                }
              },
              {
                "action": "hangup"
              }
            ],
            "wrong": [
              {
                "action": "hangup"
              }
            ]
          }
        }
      ]
    }
  ]
}

Kompleksne IVR mitme menüü ja DTMF-marsruutimisega

See näide näitab, kuidas määratleda mitu menüüd ja navigeerida nende vahel, kasutades toimingut „gotoMenu”, kui kasutaja sisestab kehtetu klahvi või kui kõne aegub. Samuti kuvatakse veebihaagi päästikutega saadetud kohandatud kehad ja kohandatud HTTP-päised.

{
  "messages": [
    {
      "from": "YourSender",
      "to": "+380XXXXXXXXX",
      "text": "ivr",
      "type": "speechcall",
      "menu": [
        {
          "introUrl": "ivr_651854",
          "idleTimeoutMsec": 10000,
          "dtmfActions": {
            "d1": [
              {
                "action": "webhook",
                "url": "http://api.smsbat.local/gatereq/temp/hook",
                "body": {
                  "confirm": true
                },
                "headers": {
                  "test-header": "test"
                }
              },
              {
                "action": "hangup"
              }
            ],
            "d2": [
              {
                "action": "webhook",
                "url": "http://api.smsbat.local/gatereq/temp/hook",
                "body": {
                  "confirm": false
                }
              },
              {
                "action": "hangup"
              }
            ],
            "wrong": [
              {
                "action": "gotoMenu",
                "menu": "1"
              }
            ]
          }
        },
        {
          "introUrl": "ivr_651854",
          "idleTimeoutMsec": 10000,
          "dtmfActions": {
            "d1": [
              {
                "action": "webhook",
                "url": "http://localhost/1"
              }
            ],
            "d2": [
              {
                "action": "webhook",
                "url": "http://localhost/1"
              }
            ],
            "wrong": [
              {
                "action": "hangup"
              }
            ]
          }
        }
      ]
    }
  ]
}

Vastusevorming

Edukas vastus

{
  "messages": [
    {
      "messageId": "unique-message-id",
      "recipient": "+380936670003",
      "status": "sent"
    }
  ]
}

Vigade käsitlemine

HTTP olek Kirjeldus
200 Taotlus õnnestus
400 Kehtetu päringu vorming
401 Autentimine ebaõnnestus
429 Maksumäär ületatud
500 Siseserveri viga

cURL-i näide

curl -X POST https://restapi.smsbat.com/bat/messagelist \
  -u "username:password" \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      {
        "from": "YourSender",
        "to": "+380XXXXXXXXX",
        "text": "ivr",
        "type": "speechcall",
        "menu": [
          {
            "introUrl": "ivr_651854",
            "idleTimeoutMsec": 10000,
            "dtmfActions": {
              "d1": [
                {
                  "action": "webhook",
                  "url": "http://api.smsbat.local/gatereq/temp/hook",
                  "body": {
                    "confirm": true
                  },
                  "headers": {
                    "test-header": "test"
                  }
                },
                {
                  "action": "hangup"
                }
              ],
              "d2": [
                {
                  "action": "webhook",
                  "url": "http://api.smsbat.local/gatereq/temp/hook",
                  "body": {
                    "confirm": false
                  }
                },
                {
                  "action": "hangup"
                }
              ],
              "wrong": [
                {
                  "action": "gotoMenu",
                  "menu": "1"
                }
              ]
            }
          },
          {
            "introUrl": "ivr_651854",
            "idleTimeoutMsec": 10000,
            "dtmfActions": {
              "d1": [
                {
                  "action": "webhook",
                  "url": "http://localhost/1"
                }
              ],
              "d2": [
                {
                  "action": "webhook",
                  "url": "http://localhost/1"
                }
              ],
              "wrong": [
                {
                  "action": "hangup"
                }
              ]
            }
          }
        ]
      }
    ]
  }'

Parimad tavad

  1. Helifailid – veenduge, et sissejuhatavad URL-id on juurdepääsetavad ja helifailid toetatud vormingus
  2. Veebihaagi töökindlus – looge veebihaagid kiiresti (2 sekundi jooksul) reageerimiseks
  3. DTMF-i valikud – parema kasutuskogemuse saavutamiseks piirake menüüvalikuid 4–6 valikuga
  4. Ajalõpu käsitlemine – kasutage kohandatud passiivsuse piirangute (nt 10000 ms) määramiseks käsku „idleTimeoutMsec” ja konfigureerige vale DTMF-klahvi all graatsiline tagavara (nt menüü kordamine või kõne katkestamine).
  5. Mitme menüüga kõnevoog – kasutage käsku "gotoMenu" ettevaatlikult, et vältida lõpmatuid silmuseid, kui suunate kasutajad tagasi eelmistesse menüüdesse
  6. Varustrateegia – kasutage varusõnumeid kasutajatele, kes ei vasta ega katkesta ühendust

Seotud teemad