How to set the assignment_callback 'from' property to original caller number?
我们的 Twilio 应用程序与 TaskRouter 连接以处理呼叫排队,而我正在努力在"出队"指令上设置正确的参数。
也许这是错误的做法,但它的设置方式是当有呼叫进来时,它会接收 DTMF 音并将它们发送到排队函数,在那里呼叫被路由到不同的任务队列(支持,销售等)。根据我的理解,当一个调用被排入 Twilio 客户端时,Twilio 会将它发送到正确的 TaskQueue。当该任务队列中的工作线程可用时,Twilio 会将任务数据路由到 assignment_callback URL。
那么如何将出队指令中的"from"属性设置为调用者的号码?如果我将其留空,它会将其设置为我注册的 Twilio 号码。我只想让我们的 SIP 电话上的发件人号码显示谁打过电话,如果我能从 assignment_callback URL 中获取一个"呼叫者"参数,并在出队指令中设置该值,那就太好了。
发现我可以只请求 TaskAttributes 参数,它返回一个 JSON 字符串,其中包含一个 "from" 属性,该属性返回呼叫者号码:
1 2 3 4 5 6 7 8 | @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 |