Я не могу получить ответ JSON, как показано в учебнике .
Я реализовал программу Programmable Voice. Я хочу показать пользователю детали звонка, и если я получу ответ JSON, я смогу получить их все (стоимость, продолжительность, статус и т. Д.).
# views.py
def start_campaign(request, campaign_id):
try:
campaign = Campaign.objects.get(pk=campaign_id)
account_sid = 'XXX'
auth_token = 'XXX'
client = Client(account_sid, auth_token)
phone_numbers = Contact.objects.filter(phone_book=campaign.phone_book)
custom_url = 'http://XXX.ngrok.io/assets/' + str(campaign_id)
for phone_number in phone_numbers:
call = client.calls.create(
method='GET',
status_callback='http://XXX.ngrok.io/events',
status_callback_event='completed',
status_callback_method='GET',
url=str(custom_url),
to=str(phone_number),
from_='+1XXX'
)
detail = client.calls(str(call.sid)).fetch()
print(detail.price)
except Campaign.DoesNotExist:
raise Http404("Campaign Does Not Exist")
context = {
'all_campaigns': campaign
}
return render(request, "CallCenter/start_campaign.html", context)
def events(request):
status = request.GET.getlist('CallStatus', default=None)
duration = request.GET.getlist('CallDuration', default=None)
print("Duration:{}\nStatus:{}".format(duration, status))
return render(request, "CallCenter/events.html")
В терминале,Я получаю вывод, который распечатывает состояние и продолжительность вызова из
"GET / events? Called =% 2BXX & ToState = & CallerCountry = US & Direction = outbound-api & Timestamp = Sat, + 12 + Oct + 2019 + 19:11: 50 +% 2B0000 & CallbackSource = события-события-вызова & SipResponseCode = 200 & Ca llerState = AL & ToZip = & SequenceNumber = 0 & CallSid = XXX & To =% 2BXXX & CallerZip = 35766 & ToCountry = IN & CalledXX & =XXX & CalledCountry = IN & CallerCity = ESTILLFORK & ToCity = & FromCountry = US & Caller =% 2B12563804721 & FromCity = ESTILLFORK & CalledState = & FromZip = 35766 & Fro mState = AL HTTP / 1.1 "200 123
5 *", печать на печать: выкл. ']
Статус: [' выполнено ',' выполнено ']
К сожалению, я не знаю, как запросить ответ JSON от Twiлио.