အကြောင်းအရာသို့ ကရန်

SpeechCall မက်ဆေ့ချ်များ

SpeechCall သည် မီနူးရွေးချယ်မှုများနှင့် DTMF (dual-tone multi-frequency) အပြန်အလှန်တုံ့ပြန်မှုများဖြင့် အလိုအလျောက် အသံခေါ်ဆိုမှုများ ပြုလုပ်နိုင်စေမည့် အပြန်အလှန်တုံ့ပြန်သော အသံတုံ့ပြန်မှု (IVR) မက်ဆေ့ခ်ျအမျိုးအစားတစ်ခုဖြစ်သည်။

ခြုံငုံသုံးသပ်ချက်

SpeechCall သည် လုပ်ငန်းများကို လုပ်ဆောင်နိုင်သည်- - သုံးစွဲသူများထံ အလိုအလျောက် အသံခေါ်ဆိုမှုများ ပြုလုပ်ပါ။ - မိတ်ဆက်အသံမက်ဆေ့ချ်များကို ဖွင့်ပါ။ - အပြန်အလှန်အကျိုးသက်ရောက်မှုမီနူးရွေးချယ်စရာများကိုတင်ပြပါ။ - DTMF သော့နှိပ်တုံ့ပြန်မှုများကို ကိုင်တွယ်ပါ (0-9၊ *၊ #) - မမှန်ကန်သော/အချိန်ကုန်ထည့်သွင်းမှုများအတွက် စိတ်ကြိုက်အပြုအမူကို သတ်မှတ်ပါ။ - သုံးစွဲသူရွေးချယ်မှုများအပေါ် အခြေခံ၍ စိတ်ကြိုက်ကိုယ်ထည်များနှင့် ခေါင်းစီးများဖြင့် ဝဘ်ချိတ်များကို အစပျိုးပါ။ - ခေါ်ဆိုမှုစီးဆင်းမှုကို ဒိုင်းနမစ်ဖြင့် စီမံခန့်ခွဲပါ (မီနူးများကြားတွင် သွားလာပါ)

Cases ကိုအသုံးပြုပါ။

  • ဖောက်သည်စစ်တမ်းများ - ဖုန်းမီနူးရွေးချယ်မှုများမှတစ်ဆင့် အကြံပြုချက်များကို စုဆောင်းပါ။
  • ရက်ချိန်းသတိပေးချက်များ - အသံဖြင့် အပြန်အလှန်ဆက်သွယ်မှုဖြင့် အတည်ပြုပါ သို့မဟုတ် ပြန်လည်စီစဉ်ပါ။
  • အော်ဒါခြေရာခံခြင်း - မှာယူမှုအခြေအနေ အပ်ဒိတ်များကို ပေးပါ။
  • အပြန်အလှန် အကြောင်းကြားချက်များ - လုပ်ဆောင်မှုရွေးချယ်မှုများဖြင့် အရေးကြီးသော အချက်အလက်များကို ပေးပို့ပါ။
  • Voice Verification - အသံခေါ်ဆိုမှုများမှတစ်ဆင့် အချက်ပေါင်းများစွာ စစ်မှန်ကြောင်း အတည်ပြုခြင်း။

တောင်းဆိုမှုပုံစံ

အခြေခံဖွဲ့စည်းပုံ

{
  "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"
              }
            ]
          }
        }
      ]
    }
  ]
}

Parameter ဖော်ပြချက်

ကန့်သတ်ချက် ရိုက် လိုအပ်သည် ဖော်ပြချက်
from string ဟုတ်တယ် ပေးပို့သူ အမှတ်အသား (alpha အမည် သို့မဟုတ် ID)
to string ဟုတ်တယ် လက်ခံသူဖုန်းနံပါတ်ကို နိုင်ငံတကာဖော်မတ်
စာသား string ဟုတ်တယ် SpeechCall
ရိုက် string ဟုတ်တယ် "မိန့်ခွန်းခေါ်ဆိုမှု"
menu ခင်းကျင်း ဟုတ်တယ် ခေါ်ဆိုမှု

မီနူးအရာတစ်ခုစီတွင်-

ကန့်သတ်ချက် ရိုက် လိုအပ်သည် ဖော်ပြချက်
introUrl string ဟုတ်တယ် URL သို့မဟုတ် မိတ်ဆက်အသံဖိုင်
idleTimeoutMsec ကိန်းပြည့် မရှိ ခလုတ်နှိပ်ခြင်းကို စောင့်ရန် မီလီစက္ကန့်အတွင်း အချိန်ကုန်သွားသည် (ဥပမာ၊ 10000)။ အကယ်၍ အသုံးပြုသူက တုံ့ပြန်ခြင်းမရှိပါက၊ မှားယွင်းသော သော့အောက်တွင် ပြင်ဆင်ထားသော လုပ်ဆောင်ချက်များကို လုပ်ဆောင်မည်
dtmfActions အရာဝတ္ထု ဟုတ်တယ် လုပ်ဆောင်ချက်များအတွက် DTMF သော့မြေပုံ

DTMF လုပ်ဆောင်ချက်များ

dtmfActions အရာဝတ္ထုသည် DTMF သော့များ သို့မဟုတ် အထူးအခြေအနေများကို လုပ်ဆောင်ချက်များ၏ arrays သို့ မြေပုံဆွဲသည်-

DTMF သော့ ဖော်ပြချက်
d0 0
d1 1
d2 2
... ...
d9 9
d* *
d# #
မှား မမှန်ကန်သောသော့ကို နှိပ်သည့်အခါ သို့မဟုတ် ထည့်သွင်းခြင်းမရှိဘဲ idleTimeoutMsec သို့ရောက်ရှိသည့်အခါ အစပျိုးသည်

DTMF သော့/အခြေအနေတစ်ခုစီသည် အစဉ်လိုက်လုပ်ဆောင်မည့် လုပ်ဆောင်မှုများ၏ အခင်းအကျင်းတစ်ခုဆီသို့ မြေပုံညွှန်းပေးသည်။

ပံ့ပိုးထားသောလုပ်ဆောင်ချက်များ

အက် ကန့်သတ်ချက်များ ဖော်ပြချက်
webhook url (string၊ လိုအပ်သည်)
body (object၊ optional)
headers (object၊ optional)
HTTP POST တောင်းဆိုချက်ကို JSON ဖော်မတ်ဖြင့် သတ်မှတ်ထားသော URL သို့ ပေးပို့သည်။ webhook တောင်းဆိုချက်ရှိ လုပ်ဆောင်ချက် အကွက်အောက်တွင် body အရာဝတ္တုကို စုစည်းထားပါမည်။ စိတ်ကြိုက်ခေါင်းစီးများကို HTTP ခေါင်းစီးများအဖြစ် ထည့်သွင်းထားသည်။
hangup အနတ္တ ခေါ်ဆိုမှုကို အဆုံးသတ်သည်
gotoMenu menu (string သို့မဟုတ် integer) ၎င်း၏ 0-အခြေခံအညွှန်းကို အသုံးပြု၍ "မီနူး ခင်းကျင်းရှိ အခြားမီနူးသို့ ခေါ်ဆိုမှုကို လမ်းညွှန်သည် (ဥပမာ၊ "1")

Webhook ပေးပို့မှုပုံစံ

webhook လုပ်ဆောင်ချက်ကို အစပျိုးသောအခါ၊ စနစ်သည် အကြောင်းအရာ-အမျိုးအစား- application/json ဖြင့် ပြင်ဆင်ထားသော url သို့ HTTP POST တောင်းဆိုချက်ကို ပေးပို့သည်။

Webhook Request Headers

လုပ်ဆောင်ချက်ကို ခေါင်းစီးများ ကန့်သတ်ချက်ဖြင့် ပြင်ဆင်သတ်မှတ်ပါက၊ ထိုသော့တန်ဖိုးအတွဲများကို တောင်းဆိုချက်တွင် HTTP ခေါင်းစီးများအဖြစ် ထည့်သွင်းထားသည်။

Webhook တောင်းဆိုချက်ကိုယ်ထည်

သင့် webhook URL သို့ ပေးပို့သည့် JSON payload တွင် အောက်ပါဖွဲ့စည်းပုံပါရှိသည်-

{
  "from": "0443914272",
  "to": "50001",
  "mid": "7748021",
  "action": {
    "confirm": true
  }
}
လယ် ရိုက် ဖော်ပြချက်
from string ခေါ်ဆိုသူ ဖုန်းနံပါတ် / ပေးပို့သူ ID
to string လက်ခံသူဖုန်းနံပါတ်
လယ် string မက်ဆေ့ခ်ျ ID
လုပ်ဆောင်ချက် အရာဝတ္ထု လုပ်ဆောင်ချက်၏ body အကွက်

ဥပမာ အပြည့်အစုံ

Timeout & Input Validation ဖြင့် ရိုးရှင်းသော IVR

{
  "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"
              }
            ]
          }
        }
      ]
    }
  ]
}

Multiple Menus နှင့် DTMF Routing ပါရှိသော ရှုပ်ထွေးသော IVR

ဤဥပမာသည် မီနူးအများအပြားကို သတ်မှတ်ပုံနှင့် အသုံးပြုသူ မမှန်ကန်သောသော့ကို ထည့်သွင်းသည့်အခါ သို့မဟုတ် ခေါ်ဆိုမှုအချိန်ကုန်သွားသောအခါတွင် gotoMenu လုပ်ဆောင်ချက်ကို အသုံးပြု၍ ၎င်းတို့ကြားတွင် သွားလာခြင်းကို သရုပ်ပြသည်။ ၎င်းသည် webhook အစပျိုးမှုများနှင့်အတူ ပေးပို့ထားသော စိတ်ကြိုက်ကောင်များနှင့် စိတ်ကြိုက် HTTP ခေါင်းစီးများကိုလည်း ပြသသည်။

{
  "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"
              }
            ]
          }
        }
      ]
    }
  ]
}

တုံ့ပြန်မှုပုံစံ

အောင်မြင်မှုတုံ့ပြန်ခြင်း။

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

မှားယွင်းကိုင်တွယ်ခြင်း။

HTTP အခြေအနေ ဖော်ပြချက်
200 တောင်းဆိုမှု အောင်မြင်
400 တောင်းဆိုချက်ပုံစံ မမှန်ကန်
401 အထောက်အထားမခိုင်လုံခြင်း
429 နှုန်းကန့်သတ်ချက်ထက်ကျော်လွန်
500 အတွင်းပိုင်း ဆာဗာ အမှားအယွင်း

cURL ဥပမာ

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"
                }
              ]
            }
          }
        ]
      }
    ]
  }'

အကောင်းဆုံးအလေ့အကျင့်များ

  1. Audio Files - intro URLs များကို အသုံးပြု၍ရကြောင်း သေချာစေပြီး အသံဖိုင်များကို ပံ့ပိုးပေးထားသည့် ဖော်မတ်များဖြစ်ကြောင်း သေချာပါစေ။
  2. Webhook ယုံကြည်စိတ်ချရမှု - လျင်မြန်စွာတုံ့ပြန်ရန် webhooks များကိုဒီဇိုင်းထုတ်ပါ (2 စက္ကန့်အတွင်း)
  3. DTMF ရွေးချယ်မှုများ - ပိုမိုကောင်းမွန်သောအသုံးပြုသူအတွေ့အကြုံအတွက် ရွေးချယ်မှု 4-6 ခုအထိ မီနူးရွေးချယ်မှုများကို ကန့်သတ်ပါ။
  4. ** Timeout Handling** - စိတ်ကြိုက်လုပ်ဆောင်မှု ကန့်သတ်ချက်များကို သတ်မှတ်ရန် idleTimeoutMsec ကို အသုံးပြုပါ (ဥပမာ 10000 ms) နှင့် မှားယွင်းသော DTMF သော့အောက်တွင် ကျက်သရေရှိသော လှည့်ကွက်တစ်ခုကို စီစဉ်သတ်မှတ်ပါ (မီနူးကို ထပ်ခါထပ်ခါ သို့မဟုတ် ဖုန်းချခြင်းကဲ့သို့)
  5. Multi-Menu Call Flow - သုံးစွဲသူများကို ယခင်မီနူးများသို့ လမ်းကြောင်းပြောင်းသည့်အခါ အဆုံးမဲ့ loops များကို ကာကွယ်ရန် gotoMenu ကို ဂရုတစိုက် အသုံးပြုပါ။
  6. Fallback Strategy - အဖြေမပြန်သော သို့မဟုတ် အဆက်ဖြတ်ခြင်းမရှိသော အသုံးပြုသူများအတွက် တုံ့ပြန်မှုမက်ဆေ့ချ်များကို အသုံးပြုပါ။

ဆက်စပ်အကြောင်းအရာများ

  • Send Message - အထွေထွေစာတိုပေးပို့ခြင်းလမ်းညွှန်
  • Flash Call - ရိုးရှင်းသော အသံဖြင့် အတည်ပြုခြင်းခေါ်ဆိုမှုများ
  • Check Status - မက်ဆေ့ချ်ပေးပို့မှုအခြေအနေကို ခြေရာခံပါ။
  • Message Types - ပံ့ပိုးပေးထားသော မက်ဆေ့ဂျ်အမျိုးအစားများအားလုံး၏ ခြုံငုံသုံးသပ်ချက်