• Linux
  • apache
  • centos
  • Git版本管理
  • Linux基本命令
  • linux配置与优化
  • Nginx
  • PHP
  • Redis
  • Supervisor
  • Swoole
  • windows
  • THINKPHP
  • 开发者手册
  • Chat GPT / Open Ai
  • twilio python自动拨打电话,播放自定义mp3音频的方法

    全屏阅读
  • 基本信息
  • 作者:
  • 作者已发布:925篇文章
  • 发布时间:2023年09月06日 18:21:40
  • 所属分类:python3
  • 阅读次数:188次阅读
  • 标签:
  • 有个小项目,需求是某事件发生时,给客户打电话,提醒客户。需要事先录制好一段音频,客户接通电话后,自动播放。

    这里用到了twilio:https://www.twilio.com ,分享下。

    1. 注册twilio账号

    2. 买一个电话号码

    自动草稿

    3. 安装twilio

    pip install twilio

    4. trigger代码(给某个电话发送短信,或者打电话):

    from twilio.rest import Client
    # Your Account Sid and Auth Token from twilio.com/console
    account_sid = 'XXX'
    auth_token = 'XXX'
     
     
    def sendCall(mobile):
     client = Client(account_sid, auth_token)
     url='你需要自己写一个url, 后面我会分享自己的django代码'
     
     call = client.calls.create(
      url=url,
      to='+86{}'.format(mobile),
      from_='你买的电话号码'
     )
     
     
    def sendSMS(phone,content):
     client = Client(account_sid, auth_token)
     message = client.messages \
      .create(
      body=content,
      from_='你买的电话号码',
      to='+86{}'.format(phone)
     )
     
     
    if __name__ == '__main__':
     sendCall("186xxxxxx")

    5. 在django项目中准备一个路由,处理twilio发来的post请求,返回一段xml

    url.py:

     url(r'^notify/call/$',csrf_exempt(NotifyCall.as_view()), name='call'),
     view.py:
    
    class NotifyCall(APIView):
     def post(self, request):
      temp = """<?xml version="1.0" encoding="utf-8"?>
      <Response>
       <Play>一个公网可以访问的mp3文件路径,比如我用的自己的腾讯云服务器上的某个文件</Play>
       <Hangup/>
      </Response>
      """
      return HttpResponse(temp)

    6. 理想情况下,就能完成打电话了。但是有个问题,当我接起来电话后,有差不多4~5秒的mute call时间。

    分析log可以看到:

    自动草稿

    看来是因为twilio服务器在国外,从腾讯云获取文件花费时间太长。

    于是:

    7. 上传mp3到国外某个公共网站,让twilio从那里提取文件

    自动草稿

    1秒内就获取到了:

    自动草稿

    以上这篇twilio python自动拨打电话,播放自定义mp3音频的方法就是小编分享给大家的全部内容了

    顶一下
    (0)
    100%
    订阅 回复
    踩一下
    (0)
    100%
    » 郑重声明:本文由mpxq168发布,所有内容仅代表个人观点。版权归恒富网mpxq168共有,欢迎转载, 但未经作者同意必须保留此段声明,并给出文章连接,否则保留追究法律责任的权利! 如果本文侵犯了您的权益,请留言。
  • 【上一篇】
  • 【下一篇】
  • 目前有 0 条留言 其中:访客:0 条, 博主:0 条

    给我留言

    您必须 [ 登录 ] 才能发表留言!