问题描述
我正在使用带有会议指令的 TaskRouter 处理来电
@csrf_exempt
def TaskEnqueue(request):
""" Put call into queue """
response = VoiceResponse()
digits = request.POST['Digits']
selected_service = 'Support' if digits == '1' else 'Sales'
task = {'selected_service': selected_service}
enqueue = response.enqueue(None,workflowSid=TWILIO_WORKFLOW_SID)
enqueue.task(json.dumps(task))
return HttpResponse(
str(response),content_type='application/xml; charset=utf-8'
)
@csrf_exempt
def TaskAssignmentView(request):
""" Task assignment """
worker_attributes = json.loads(request.POST['WorkerAttributes'])
assigned_worder_uri = worker_attributes['contact_uri']
response = {'instruction': 'conference','from': TWILIO_NUMBER,'to': assigned_worder_uri,'end_conference_on_exit': True,'post_work_activity_sid': TWILIO_ACTIVITY_BREAK}
return JsonResponse(response)
我想在座席或来电者挂断电话后结束会议。
即使使用“end_conference_on_exit”属性,会议也仅在座席挂断时结束,而在来电者挂断时不结束。
我错过了什么吗?
解决方法
在会议说明中添加“end_conference_on_customer_exit”就足够了。
response = {'instruction': 'conference','from': TWILIO_NUMBER,'to': assigned_worder_uri,'end_conference_on_exit': True,'post_work_activity_sid': TWILIO_ACTIVITY_BREAK,'end_conference_no_customer_exit': True
}