2017-05-15 15 views
0

従業員と顧客の間の番号をマスクしようとしていますが、SMSと音声の両方が機能していますが、MMSメッセージを渡す方法がわかりません。 REST APIを使用する必要がありますか、またはウェブフックへの応答で十分でしょうか?それはREST APIのように難しいことではありません。 SMSと音声のように、動作するTwiML応答があるはずです。 PythonでTwilio MMSメッセージのマスク番号

、私はこのようなコード使用しています:ここ

<?xml version="1.0" encoding="UTF-8"?> 
<Response> 
    <Message from="+XXXXXXXXXXX" to="+XXXXXXXXXXX" /> 
    <Media>https://api.twilio.com/2010-04-01/Accounts/...</Media> 
</Response> 

答えて

1

Twilioの開発者エバンジェリスト:

import requests 
from django.views import View 
from twilio.twiml.messaging_response import MessagingResponse, Media 
from django.http import HttpResponse 


class SMSWebhook(View): 
    def post(self, request): 
     twilio_out = MessagingResponse() 
     twil_in = request.POST 
     # Call database to determine recipient's number 
     scheduler_data = requests.post('my_server_url', data={'to': twil_in['To'], 'caller': twil_in['From']}) 
     scheduler_in = scheduler_data.json()[0] 
     # check if it is a valid message 
     if scheduler_data.status_code == 200: 
      twilio_out.message(body=twil_in['Body'], to=scheduler_in['recipient'], from_=twil_in['To']) 
      if twil_in['NumMedia']: 
       for i in range(int(twil_in['NumMedia'])): 
        twilio_out.append(Media(twil_in['MediaUrl' + str(i)])) 
     else: 
      twilio_out.message('sms_default_message') 
     return HttpResponse(str(twilio_out), content_type='text/xml') 

をそれが生成TwiMLはこのようなものです。

TwiMLを使用してMMSを送信する場合は、<Message>の内部に<Body> and <Media> nounsを使用する必要があります。あなたの例では、<Media><Message>の外にあるようです。私は<Message>への参照を保存し、それを直接<Media>を追加する方法

if scheduler_data.status_code == 200: 
     message = twilio_out.message(to=scheduler_in['recipient'], from_=twil_in['To']) 
     message.append(Body(twil_in['Body'])) 
     if twil_in['NumMedia']: 
      for i in range(int(twil_in['NumMedia'])): 
       message.append(Media(twil_in['MediaUrl' + str(i)])) 
    else: 

注:

はおそらく、この代わりのような何かをしたいです。

これがまったく役に立ったら教えてください。

関連する問題