Найти голосовое задание, назначенное конкретному сотруднику
Это звучит довольно просто, но я не уверен, что это то, что я могу сделать. Я хочу знать, над какой голосовой задачей работает конкретный работник (если таковой имеется), без необходимости хранить эту информацию на моей стороне, когда задача назначена этому работнику.
Причина, по которой я ищу это, потому что я использую конференции, чтобы принимать входящие звонки агентам, и я хочу внедрить шепот / баржу / тренер для супервизоров. Они будут знать, какие агенты в настоящее время находятся на вызове (на основе активности оператора "Занят") и на основании workerSid оператора, которого они хотят обучить. Я хочу иметь возможность получить голосовое задание, над которым они сейчас работают, и присоединиться к нему. эта конференция (поскольку TaskSid также является дружественным названием конференции).
Я мог бы перебирать текущие открытые задачи, пытаясь найти правильную, но в задаче, которая находится в назначенном состоянии, нет ничего, что указывало бы на то, кому она была назначена. Единственный способ увидеть это, используя только ту информацию, которую я могу получить от Twilio, - это слишком грязно:
- выполните вызов API REST к https://taskrouter.twilio.com/v1/Workspaces/[workspaceSid]/Workers/[workerSid]/Reservations чтобы получить все резервирования для этого работника для всех задач, которые в настоящее время существуют в рабочей области.
- найти все принятые бронирования
- цикл по задачам, для которых были сделаны оговорки
- и найдите последнее голосовое задание для использования.
Любой другой способ может заключаться в том, чтобы циклически проходить через конференции, которые в настоящее время находятся в процессе, а затем проходить через их участников, чтобы найти участок вызова, сделанный для contact_uri агента, который будет тренировать, чтобы определить подходящую конференцию для присоединения, что было бы еще более запутанным в моем мнение.
Мне интересно, есть ли что-то очевидное, что я скучаю.
1 ответ
Twilio разработчик евангелист здесь.
Способ, который вы описали, кажется лучшим способом получить эту информацию из API, не сохраняя ничего самостоятельно.
Если вы не хотите хранить данные на своем собственном сервере, вы можете обновить атрибуты работника с помощью текущего SID голосовой задачи. Вы все еще должны продолжать слушать конец вызова и удалять атрибут.