使用Twilio拨打电话或短信
一直以来很想使用twilio来做拨打电话的系统,但是早期的twilio对无代码基础要求太高一直无法实现。现在,有更好的方式去实现了。
使用Dev Phone快速实现
1. Twilio Blog - Dev Phone
2. GitHub Dev Phone
无需购买号码,其实Trial Account也可以用。
- git clone https://github.com/twilio-labs/dev-phone.git devphone
- 去下载Twilio-CLI Windows EXE版并安装好
- twilio plugins:install @twilio-labs/plugin-dev-phone
- 因为需要先将profile建好(有api信息)才可以, 我们使用twilio login即可 (alias of twilio profile:create)
将Account SID复制好,然后直接使用账号的Auth Token即可,他实际保存在本地其实也是API Key + API Secret。我们将这个Profile命名为dev.
他文件的保存地址是C:\用户名.twilio-cli\config.json, 你新建一个新的文件,直接将SID, API这些复制进去应该也是可以的。
1 | {"email":{},"prompts":{},"projects":[],"profiles":{"dev":{"accountSid":"ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","apiKey":"SKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","apiSecret":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","id":"dev"}},"activeProject":"dev"} |
- 将这个profile状态改为激活状态
1
twilio profiles:use dev
- twilio dev-phone
- 这时通过localhost:1337,你已经可以拨打电话了。如果需要发送短信,需要先去开通短信功能, 不然发送的时候会在cmd出现错误提示:你可以参考以下链接,去免费开通:https://www.twilio.com/docs/api/errors/21408
1
2
3
4
5
6
7
8
9
10
11SMS API threw an error TwilioCliError: Error code 21408 from Twilio: Permission to send an SMS has not been enabled for the region indicated by the 'To' number: +14120801234.. See https://www.twilio.com/docs/errors/21408 for more info.
at CliRequestClient.request (C:\Users\david.yi\.twilio-cli\node_modules\@twilio\cli-core\src\services\cli-http-client.js:111:15)
at processTicksAndRejections (node:internal/process/task_queues:96:5) {
exitCode: 21408,
data: {
code: 21408,
message: "Permission to send an SMS has not been enabled for the region indicated by the 'To' number: +14120801234.",
more_info: 'https://www.twilio.com/docs/errors/21408',
status: 400
}
}
使用Voice Javascript SDK快速实现
1. Twilio Blog - Twilio Programmable Voice JavaScript Quickstart Demo Application with Node
2. GitHub
跟着上面GitHub的步骤即可:
- 创建TwiML App
- 拿到号码,npm install
- 创建API
- 然后去拿到TWILIO_ACCOUNT_SID,TWILIO_TWIML_APP_SID,TWILIO_API_KEY,TWILIO_API_SECRET,并写入.env文件
- cp node_modules/@twilio/voice-sdk/dist/twilio.min.js public
- npm start
- ngrok http 3000
- 到ngrok 官网获得运行token并在电脑运行,记录下外网地址
- 到TwiMP App的Voice修改配置为https://example123456.ngrok.io/voice
这样你就可以在https://example123456.ngrok.io 网址上运行并拨打电话了
con: 需要安装ngrok 并内网穿透映射。 建议使用Dev Phone,他可以本地拨打,且可以短信。
我尝试将本代码部署到netlify上,部署不成功。
- 标题: 使用Twilio拨打电话或短信
- 作者: 暗香疏影
- 创建于 : 2022-09-30 00:00:00
- 更新于 : 2022-09-30 00:00:00
- 链接: https://blog.23ikr.com/2022/09/30/2022-09-30-create-phone-call-with-twilio/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论