Use Twilio To Make Voice Call In Taiwan

身為工程師看到 on call 這兩個字應該會不太蘇胡,不過今天要講的不是接到電話的甘苦談,而是打電話通知端的故事,通常是有人 24 * 7 盯著 Monitor,遇到問題就要負責修或是通知相關人等來處理;這通常是需要輪班的工作,因此我就在想要是系統出事情會自己打電話給人,好像也不錯~再經過survey之後,找到兩家符合我需求的公司,分別是 Twilio 和 Plivo,這一篇先來介紹 Twilio

  • 首先要做得當然是註冊啦,到這邊去申請一個帳號,除了基本資料之外,還需要驗證手機號碼,避免是用機器人去註冊

  • 註冊到最後一個步驟,Twilio的頁面會讓你試打電話到自己的手機

    Enter a message, and Twilio will call you at 886XXXXXXXXX and read it back to you.

  • 不按還好,一按就出現奇怪的錯誤訊息,心理想說可能因為試用版的關係吧,不然明明官方說有支援台灣的說,賭性堅強的我,竟然就給他先刷了20元美金

    It appears that something went wrong. Please try again.

  • 接著來到產生Sample code的頁面,我只多填了要打去哪裡To, 以及要講話的XML檔案路徑Url

curl -X POST 'https://api.twilio.com/2010-04-01/Accounts/ACb4770b610e7c30adc8789642086f41b5/Calls.json'
--data-urlencode 'To=+886XXXXXXXXX'
--data-urlencode 'From=+1XXXXXXXXXX'
-d 'Url=http://demo.twilio.com/docs/voice.xml'
-d 'Method=GET'
-d 'FallbackMethod=GET'
-d 'StatusCallbackMethod=GET'
-d 'Record=false'
-u [ACCOUNT SID]:[AuthToken]
  • 接著按下Make Request,我的媽呀,我的20元美金該不會白花了吧(Try Account 只能撥打給驗證過的電話號碼,Premium才可以打給任意電話號碼)
Response 400
BAD REQUEST - The data given in the POST or PUT failed validation. Inspect the response body for details.

{
"code": 21216,
"message": "Account not allowed to call +886XXXXXXXXX",
"more_info": "https://www.twilio.com/docs/errors/21216",
"status": 400
}
  • 然後我開始 try & error,我試著打到日本去,發現 error code竟然不一樣@@
Response 400
BAD REQUEST - The data given in the POST or PUT failed validation. Inspect the response body for details.

{
"code": 21215,
"message": "Account not authorized to call +81XXXXXXXXXX. Perhaps you need to enable some international permissions: https://www.twilio.com/user/account/settings/international",
"more_info": "https://www.twilio.com/docs/errors/21215",
"status": 400
}
  • Google之後,發現其實某些國家預設並沒有打開,所以去Account 後臺的 Geographic Permissions打開就可以了吧?!一看到之後就昏頭了,因為沒有台灣@@

  • 看來問題不是我自己可以解決的,為了20元的美金,我發了Support Ticket,對方回應我說幫我開好了,而且跟我說明為什麼對於某些國家要有比較嚴格的規定

  • 我興高采烈的到Account 後臺的 Geographic Permissions一看,真的有台灣了!!我打勾後一試…阿這不是跟原來一樣T_T

Response 400
BAD REQUEST - The data given in the POST or PUT failed validation. Inspect the response body for details.

{
"code": 21216,
"message": "Account not allowed to call +886XXXXXXXXX",
"more_info": "https://www.twilio.com/docs/errors/21216",
"status": 400
}
  • 只好再把 Support Ticket 從 Close 變成 Open,等了一天之後,這次真的可以成功打電話到我自己的手機,但是原因也讓我哭笑不得,沒有想到竟然是因為太多詐騙集團都透過 Twilio 打來台灣,所以他們特地把台灣給鎖起來,只能說台灣人真的太善良,以至於成為詐騙集團的最愛
Response 201
CREATED - The request was successful. We created a new resource and the response body contains the representation.

這次跟Twilio在美國的Support來來回回也弄快要一個禮拜,感謝他們不厭其煩的幫忙,才讓這通自動越洋電話撥打成功,而在這一個禮拜內,其實我同時也一直在Plivo卡關,不過那就等到另外一篇文章再分享了…

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s