首页 > 解决方案 > Twilio python MessagingResponse.message.media 不适用于 mp3 音频

问题描述

@app.route('/bot', methods=['POST'])
def bot():

    content = request.form.get('Body').lower()

    resp = MessagingResponse()
    msg = resp.message()

    responded = False

    if 'hi' in content:
        msg.media(url_for('static', filename='bonjour.mp3'), content_type='audio/mpeg')
        responded = True
    if not responded:
        msg.body('no')
    return str(resp)

这是我响应 Whatsapp 消息的代码。如果您说“嗨”,它应该会向您发送我保存的 mp3 音频(我检查了路径是否正确),如果您说别的,它只会说“不”。但是当我发送带有“hi”的消息时,我在 Twilio 调试部分收到此错误: 错误 12200

标签: pythonxmltwiliowhatsapp

解决方案


您传递给的 URL 必须media()是公开可用的媒体文件的绝对 URL,而不是相对 URL。

在您的情况下,不是/static/bonjour.mp3,而是类似https://yourdomain.com/static/bonjour.mp3.

也省略content_type.


推荐阅读