Twilio разработчик евангелист здесь.
Я раньше не делал ничего подобного, однако мне кажется, что вы можете просто использовать счетчик приращений, чтобы установить приоритет задач, поскольку приоритеты приоритетов в первую очередь рассматриваются. В качестве примера, если вы установите приоритет задачи как «Время в секундах» с момента эпохи, тогда это будет постоянно увеличивающееся целое число, всегда создающее более новые задачи в верхней части очереди.
Дайте мне знать, если это вообще поможет.
[править]
TaskRouter теперь поддерживает LIFO очереди, так что вы больше не придется возиться с приоритетами, с тем чтобы создать поведение. Порядок очередей устанавливается на объекте TaskQueue
. Когда вы создаете TaskQueue
, вы передаете параметр TaskOrder
как LIFO. По умолчанию используется FIFO. Вот пример с завитком:
$ curl -XPOST https://taskrouter.twilio.com/v1/Workspaces/WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/TaskQueues \
-d "FriendlyName=HotHotLeads" \
-d "ReservationActivitySid=WAxxxx" \
-d "AssignmentActivitySid=WAyyyy" \
-d "TargetWorkers=languages HAS 'english'" \
-d "TaskOrder=LIFO" \
-u '{account_sid}:{auth_token}'
Для получения дополнительной информации, ознакомьтесь the documentation on LIFO queues in TaskRouter и introductory blog post.
Спасибо, Фил, это решение моей проблемы. Это добавляет дополнительный уровень сложности к нашей существующей логике приоритетов, но лучше, чем ничего! – Neil
Hey Neil, я знаю, что это старый пост, но теперь мы добавили поддержку очередей LIFO в TaskRouter. Я обновил ответ с последней информацией. Надеюсь, вы можете немного упростить свою логику. – philnash