2016-06-07 18:05 GMT+03:00 Александр Фролов <[email protected]>: > Но я никак не могу придумать, как мне архитектурно обеспечить прием > callback-вызов от от внешнего сервиса в своем сервере Mojolicious::Lite, и > затем передать их по заранее установленному каналу WebSockets в браузер. >
Пара вариантов навскидку. 1. Держать в приложении "инфу" о вебсокет-сессиях. Когда приходит колбек, в контроллере вытаскивать нужную вебсокет-сессию из "инфы" и для неё отправлять необходимые данные. Одна из задач, которую здесь придётся решить - подчищать за собой "инфу", когда пользователь закрывает браузер (сессия рвётся/завершается). 2. Взять Mojo::EventEmitter. В контроллере вебсокет-сессии подписаться на событие. В контроллере колбека - генерировать событие. Надо только посмотреть, все ли подписчики получат уведомление или только первый, но предполагаю, что все. Дальше действуем как в первом случае. -- //wbr, Dmitry L. -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
