Как установить свойство assignment_callback 'from' в исходный номер вызывающего абонента?
Наше приложение Twilio соединяется с TaskRouter для обработки очередей вызовов, и я изо всех сил пытаюсь установить правильные параметры в инструкции "dequeue".
Возможно, это неправильный способ сделать это, но он настроен таким образом, чтобы при поступлении вызова он принимал тоны DTMF и отправлял их в функцию постановки в очередь, где вызовы направляются в различные TaskQueues (поддержка, продажи и т. Д.)..). Насколько я понимаю, когда вызов ставится в очередь клиенту Twilio, Twilio отправит его на правильный TaskQueue. Когда работник становится доступным в этом TaskQueue, Twilio направляет данные задачи по URL-адресу assignment_callback.
Итак, как я могу установить свойство from в моей инструкции dequeue в качестве номера вызывающего абонента? Если я оставлю это поле пустым, он будет установлен на мой зарегистрированный номер Twilio. Я просто хочу, чтобы номер from на наших SIP-телефонах показывал, кто звонил, было бы здорово, если бы я мог просто получить аргумент "вызывающего" из URL-адреса assignment_callback и установить это значение в инструкции dequeue.
1 ответ
Выяснилось, что я могу просто запросить параметр TaskAttributes, который возвращает строку JSON, содержащую атрибут "from", который возвращает номер вызывающего абонента:
@app.route('/assignment_callback', methods=['GET', 'POST'])
def assignment_callback():
task_attributes = json.loads(request.values.get('TaskAttributes', None))
ret = '{"instruction": "dequeue", "from": "' + task_attributes['from'] + '", "post_work_activity_sid": "WAXXXXXXXXXXXXXXXXXXX"}'
resp = Response(response=ret, status=200, mimetype='application/json')
return resp