Внедряем систему уведомлений в VtigerCRM с помощью Websockets и Vue.js
Сегодня мы попробуем сделать что-то необячное и реактивное одновременно. Мы внедрим систему уведомлений для VtigerCRM. И реализуем мы это, опираясь на наши предыдущие знания - систему сообщений на RabbitMQ, навыках работы с Vue.js. Для полной картины нам остаётся только подключиться к Websocket серверу и в красивой форму отображаться полученные уведоиления пользователям.
Для чего нам может понадобиться система уведомлений?
В видео, прикреплённым к данной статье я покажу простейший пример. Мы будем уведомлять пользователей в режиме реального времени о том, что произошло изменение тех записей, в которых он назначен ответственным. Для примера мы реализуем этот функционал с модулем "Обращения".
Что ещё можно реализовать с использованием этого стека технологий?
Набор функционала очень большой:
Отображать в таблице появление новых записей.
Показывать комментарии без необходимости перезагружать страницу.
Внедрить чат между пользователями.
Построить интерактивные диаграммы, которые будут обновлять данные без необходимости перезагрузки страницы
Как я уже писал выше, чтобы реализовать всё вышеописанное, нам потребуется подключить к Vtiger систему очередей RabbitMQ, куда мы будем отправлять информацию о произошедших событиях и Vue.js, для добавления настоящий реактивности.
Итак, как будет происходить внедрение системы уведомлений:
Для начала нам нужно уведомить сторонние системы о том, что произошло обновление или создание записи. Для этого мы будем использовать RabbitMQ. Мы будем уведомлять очередь о том, что произошло изменение записи.
Мы установим Websocket сервер на Node.js (к счастью, мы его уже установили при подключении Vue.js) и реализуем прослушку событий в RabbitMQ.
Как только мы получим сообщение из RabbitMQ, мы по заданной нами логике будем высылать его нашим получателям.
После отправки сообщений получателям, информация будет приходить непосредственно во Vue.js, где с помощью уже готовых библиотек мы будем выводить красивое окошко пользователям.
Как видите, всё довольно просто. В этом видео мы просто соберём всё воедино, что уже знали до этого и добавим немного новой информации. Приятного просмотра!
Я запустил собственный бизнес и намеренно сделал всё возможное, чтобы работать из любой точки мира. Иногда я сижу с своём кабинете с большим 27-дюймовым монитором в своей квартире в г. Чебоксары. Иногда я нахожусь в офисе или в каком-нибудь кафе в другом городе.
Я программист. В душе я предприниматель. Я начал зарабатывать деньги с 11 лет, в суровые 90-е годы, сдавая стеклотару в местный магазин и обменивая её на сладости. Я зарабатывал столько, что хватало на разные вкусняшки.
Акция! Профессиональный разработчик CRM за 2000 руб. в час
Выделю время под ваш проект. Знания технологий Vtiger CRM, SuiteCRM, Laravel, Vue.js, Golang, React.js. Предлагаю варианты сотрудничества, которые помогут вам воспользоваться преимуществами внешнего опыта, оптимизировать затраты и снизить риски. Полная прозрачность всех этапов работы и учёт временных затрат. Оплачивайте только рабочие часы разработки после приемки задачи. Экономьте на платежах по его содержанию разработчика в штате. Возможно заключение договора по ИП. С чего начать, чтобы нанять профессионального разработчика на full-time? Просто заполните форму!