关于python:如何将assignment_callback \\’from\\’ 属性设置为原始来电号码?

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