Vk открыла коммуникационную платформу vk teams для разработчиков

Привет всем!

Меня зовут Макарий, я DevOps-инженер в команде кросс-платформенной инфраструктуры корпоративного супераппа VK Teams. Сегодня я продолжу рассказ о том, как мы применяем практики ChatOps в наших рабочих процессах.

Первую часть о самих практиках и мини-аппах для их реализации можно прочитать здесь. Напомню, ChatOps — модель организации работы и коммуникации внутри команды через общение, то есть через мессенджер.

Такой подход объединяет разработчиков, DevOps-инженеров, QA-специалистов, инженеров поддержки, продуктовых менеджеров, аналитиков и других участников процесса в единую коммуникационную платформу.

Мы рассмотрим открытый кросс-платформенный фреймворк OpsDroid, его возможности, напишем коннектор между OpsDroid и VK Teams, а также реализуем бота. Уверен, этот опыт откроет для вас новые возможности, которые предоставляет ChatOps.

ChatOps и корпоративные мессенджеры

Основы ChatOps

Vk открыла коммуникационную платформу vk teams для разработчиков

Автоматизация процессов

Vk открыла коммуникационную платформу vk teams для разработчиков

Здесь нам на помощь приходит VK Teams — корпоративный суперапп от VK, который объединяет в себе мессенджер для общения с коллегами, ботов для автоматизации, свой таск-трекер, видеоконференции на 100 пользователей и платформу мини-приложений.

Успешная реализация ChatOps требует не только выбора подходящих инструментов, но и создания культуры, при которой команды готовы активно использовать и вкладываться в принципы ChatOps.

Open-Source-фреймворк OpsDroid

Взаимодействие между OpsDroid и платформой мессенджера осуществляется через коннекторы. Они представляют собой абстракцию над API и протоколами, используемыми различными мессенджерами и сервисами уведомлений. Коннекторы обеспечивают унифицированный интерфейс для взаимодействия с платформами.

Vk открыла коммуникационную платформу vk teams для разработчиков

OpsDroid также предоставляет удобный интерфейс для создания ботов: в виде навыков (skills) — то есть модулей, которые обрабатывают входящие события (events), анализируют их, взаимодействуют с внешними сервисами, возвращают результат для обработки.

Установить OpsDroid можно удобным для вас способом на личный компьютер или сервер. Для запуска бота необходимо настроить OpsDroid в соответствии с инструкциями.

  • Linux, MacOS — используйте Docker (руководство).
  • Руководство для Windows.

Коннектор OpsDroid-VK Teams

Для связи VK Teams и OpsDroid можно написать простой коннектор.

## Вот его код
## Вот код реализации
Подробнее пример коннектора смотрите в репозитории. Коннектор позволяет OpsDroid понимать, когда приходит новое сообщение в VK Teams, и получать его содержимое, а также самому отправлять сообщения. Коннектор можно дополнительно расширить. Например, добавить поддержку всех возможных ивентов от OpsDroid:
Или реализовать поддержку всех типов событий, которые доступны на платформе (для VK Teams см. /events/get).
Расширение коннектора увеличивает возможности навыков, которыми будут обладать ваши боты. В нашем случае добавим поддержку следующих ивентов: Reply, Forward, File, Voice, Sticker, Mention для нового сообщения, а также Edited Message, Deleted Message, Pinned/Unpinned Message, Join/Left chat для других событий в чате.
Еще OpsDroid предоставляет широкие возможности для тестирования. Принято полностью покрывать новый коннектор тестами.
## Пример бота с OpsDroid
Давайте реализуем такого же бота, который отправляет на указанный имейл сообщение, если на него был дан ответ с ключевым словом send_email. Мы будем использовать OpsDroid для создания кросс-платформенного бота, который будет работать как в VK Teams, так и в Slack и, например, в Matrix. Код не претерпит значительных изменений, мы обернем его в OpsDroid. Действия, которые мы ранее выполняли с распаковкой payload вложенного сообщения, перенесены в код коннектора, разобранный выше, в парсинг ивента типа Reply. В данном случае нам останется лишь получить содержимое ивента, которое привязано к основному:
Навык, который будет использоваться в нашем кросс-платформенном боте в файле configuration.yaml, выглядит следующим образом:
Код этого навыка для Slack отличается, так как коннектор Slack не поддерживает тип ивента Reply. Здесь мы используем разбиение с помощью constrain_connectors, чтобы в случае, если бот принял ивент в Slack, он распарсил его одним способом, а если принял в VK Teams или в Matrix — то другим, более подходящим. Коды навыка для VK Teams и Matrix идентичны.
Подробнее пример навыка смотрите в репозитории. Для более глубокого погружения используйте полную документацию OpsDroid.
Затем нам необходимо организовать структуру проекта следующим образом:
- Dockerfile*
- configuration.yaml
- skills - email_sender (имя кастомного скилла) - __init__.py
*Dockerfile — если вы запускаете OpsDroid с помощью docker.
Для этого выполним следующие команды:
Соберем нашего кросс-платформенного бота:
opsdroid config -f configuration.yaml build
Запустим в работу:
Для запуска через Docker стяните скрипт startup.sh и Dockerfile из репозитория с примерами. Затем запустите скрипт для сборки бота:
IMAGE_NAME=my_opsdroid_vkt ./startup.sh --build
Запустить скрипт можем как напрямую (для отладки и наблюдения за логами):
Так и в фоне:
И когда придет время, остановить бота:
Также можем удалить отработавший образ:
После запуска бота вы сможете написать ему личное сообщение или сообщение в групповом чате, куда он добавлен, и он выполнит нужную операцию, отправив сообщение на указанный имейл.
Например, в Slack:
![](https://habrastorage.org/webt/kz/vg/ep/kzvgepclez1asy7uicieq6f2p8s.png)
![](https://habrastorage.org/webt/6w/uq/lx/6wuqlxwwwgmluffbhsk5hg6uu3e.png)
В VK Teams:
![](https://habrastorage.org/webt/eo/zm/0z/eozm0zhcfnaqxznnw7i7iugbuie.png)
![](https://habrastorage.org/webt/r0/tq/gj/r0tqgjlwnm63iir6jh_2lbj7fsm.png)
И в Matrix:
![](https://habrastorage.org/webt/f1/xz/xf/f1xzxfpmrg3hx_5xbar6c2coade.png)
![](https://habrastorage.org/webt/v-/jc/v9/v-jcv9xizehrtwfn0lkvkuehcpq.png)
OpsDroid представляет собой мощный кросс-платформенный фреймворк для разработки ChatOps-решений. Благодаря способности работать одновременно на нескольких платформах, таких как Slack, MS Teams, VK Teams и других, OpsDroid обеспечивает командам гибкость и удобство при управлении операциями и взаимодействии с ботами.
### Концепция коннекторов
Концепция коннекторов упрощает интеграцию с различными сервисами, обеспечивая единый интерфейс для взаимодействия. Навыки в OpsDroid позволяют разработчикам создавать функциональность ботов, обрабатывать события и взаимодействовать с внешними сервисами. Благодаря простой установке и настройке OpsDroid является эффективным инструментом для разработки кросс-платформенных ботов, способных оперативно выполнять задачи и обеспечивать эффективное взаимодействие с пользователями.
### Готовые решения OpsDroid
Можно найти множество уже готовых решений для OpsDroid и затем интегрировать их для использования в VK Teams или другом сервисе.
Список готовых решений:
1. Решение 1
2. Решение 2
3. Решение 3
### Заключение
ChatOps представляет собой модель организации работы и коммуникации внутри команды через мессенджеры, объединяя различные роли и функции в единую коммуникационную платформу.
VK Teams как корпоративный суперапп предоставляет широкий набор инструментов для общения, автоматизации, управления задачами и видеоконференций. Успешная реализация ChatOps требует создания соответствующей культуры в команде, готовности использовать инструменты и принципы ChatOps.
OpsDroid является кросс-платформенным фреймворком для разработки ChatOps-решений. Он позволяет создать единую централизованную систему управления ботом, который может работать на различных платформах, таких как Slack, MS Teams, VK Teams, Matrix и других. Взаимодействие с мессенджерами осуществляется через коннекторы, которые предоставляют унифицированный интерфейс для обмена сообщениями, управления пользователями и получения уведомлений о событиях.
### Пример использования OpsDroid
В качестве примера использования OpsDroid был рассмотрен простой бот, способный отправлять сообщения на указанный имейл при получении определенного ключевого слова. Благодаря гибкости OpsDroid и его возможности работать на различных платформах такой бот может быть использован как в VK Teams, так и в других мессенджерах, например Slack или Matrix.

Решения для VK Teams и других мессенджеров

Мы отметили возможность использования готовых решений OpsDroid, которые могут быть адаптированы и интегрированы для использования в VK Teams или других мессенджерах. Это позволяет разработчикам использовать уже существующие возможности и навыки для управления операциями и взаимодействия с ботами.

OpsDroid и VK Teams

В целом благодаря OpsDroid и интеграции с VK Teams команды могут создавать эффективные и гибкие ChatOps-решения, улучшая коммуникацию, автоматизируя рутинные задачи.

OpsDroid

Продукты из этой статьи

  • VK Teams: Объединяет все коммуникации компании в одном месте.
  • SberJazz: Предлагает бесплатную версию для физических лиц и платные тарифы для бизнеса.
  • Яндекс Телемост: Сервис для видеозвонков без ограничений по времени.
  • TrueConf: Российское решение для видеоконференций с различными тарифами.
  • Webinar: Сервисы от российского разработчика Webinar Group для видеозвонков.

Замены VK Teams для видеозвонков

SberJazz

SberJazz предлагает бесплатную версию для физических лиц и платные тарифы для бизнеса. В бизнес-тарифах есть несколько вариантов лицензий в зависимости от размера и задач заказчика. В версии для физических лиц нет ограничений по длительности звонков, но максимальное количество участников встречи до 100 человек.

Возможности SberJazz для бизнеса

  • Проведение видеозвонков онлайн для 200 участников.
  • Вебинары для 3000 зрителей и 100 спикеров.
  • Шифрование данных и защищённые протоколы.
  • Круглосуточная поддержка пользователей.
  • Серверы находятся в России.

Яндекс Телемост

Сервис Яндекса для видеозвонков работает через приложения для Windows, macOS, Android, iOS, а также через версию для браузера. В нём можно созваниваться без ограничений по времени.

TrueConf

Ещё одно российское решение для видеоконференций. У TrueConf есть версия для браузера, приложения для различных ОС. Сервис предлагает три тарифа с разными возможностями. В первом бесплатном тарифе ограничение на количество участников до 10 человек.

Webinar

Российский разработчик Webinar Group предлагает четыре сервиса для видеозвонков.

Использовать сервисы можно через приложения (для Android, iOS, Windows, macOS) и веб-версии. Webinar позволяет делить участников на группы, записывать и редактировать видеозвонки, создавать тесты и опросы. После конференций можно получать статистику активности участников.

В отличие от ВК Тимс, у Webinar есть бесплатная версия, которая работает с ограничениями по времени и количеству участников: до 60 минут, до 30 человек. В платных лицензиях Webinar предлагает больше возможностей: в вебинарах может быть до 5000 участников, в крупных мероприятиях — до 100 000.

VideoMost

Российский сервис для звонков VideoMost работает на всех устройствах через веб-версию и приложения для Windows, macOS, Linux, Android и iOS. Доступны три продукта:

VideoMost позволяет общаться в чате, делиться файлами, показывать презентации, создавать опросы и голосования. Можно записывать встречи, транслировать их на YouTube. Платформа может полностью заменить VK Teams, при этом допустимое количество участников больше — до 500 человек.

Сравнение сервисов

Сравним аналоги VK Teams в виде таблицы.

Количество участниковВерсии для разных ПОПлатные лицензии в РоссииБесплатные лицензии

SberJazz До 3000 для SberJazz Webinars, до 200 для SberJazz ВКС веб, Android, iOS, Windows, macOS для физических лиц — без ограниче­ний по времени

Яндекс Телемост до 40веб, Android, iOS, Windows, macOSверсия без рекламы

TrueConf до 1000 веб, Android, iOS, Windows, macOS, Linux, Android TVс ограниче­ниями по участникам (10)

Webinar до 5000веб, Android, iOS, Windows, macOSс ограниче­нием по времени (60 минут) и участникам (30)

VideoMost до 500веб, Android, iOS, Windows, macOS, Linuxс ограниче­ниями по времени (45 минут) и участникам (100)

Замены VK Teams для общения

Ещё один российский мессенджер, доступный на Android, iOS, Windows и macOS. Он входит в подписку «Яндекс 360 для бизнеса», предлагает безопасное общение в привычном интерфейсе.

Яндекс Мессенджер использует закрытый рабочий контур, который позволяет избежать путаницы между личными и рабочими переписками. Чаты доступны только внутри компании: уволившиеся сотрудники не могут читать переписку.

Сервис использует сквозное шифрование, а коммуникация проходит по защищённому TLS-каналу. Данные хранятся в нескольких копиях на разных серверах в России.

Яндекс Мессенджер подходит для замены ВК Тимс, особенно если компания уже использует продукты Яндекса для бизнеса: все сервисы интегрируются между собой.

Pachca

Российский корпоративный мессенджер Pachca доступен в приложениях для Android, iOS, Windows, macOS, Linux, а также в веб-версии. Сервис предлагает только облачное решение (нет коробочной версии).

В отличие от VK Teams и других аналогов, у Pachca есть бесплатный тариф с ограничением по количеству сообщений: до 2000 в месяц.

Telegram

Это бесплатный облачный мессенджер, который доступен в веб-версии и приложениях для Android, iOS, Windows, macOS и Linux.

Преимущество Telegram в том, что он полностью бесплатный. Главный недостаток — сервис не заточен специально под задачи бизнеса. Из-за этого многие важные процессы не автоматизированы. Например, когда в команду приходит новый сотрудник, его нужно вручную добавлять во все чаты, а при увольнении — удалять. Кроме того, Telegram активно используют для личного общения, из-за чего сотрудники могут отвлекаться от работы.

Представим сравнение корпоративных мессенджеров в виде таблицы.

Версиивеб, Android, iOS, Windows, macOS, Linuxвеб, Android, iOS, Windows, macOS, Linuxвеб, Android, iOS, Windows, macOS, Linux

Личные и групповые чаты

Адресная книга сотрудни­ков

Бесплатные лицензии с ограниче­нием по числу сообщений в месяц (2000)

VK открыла коммуникационную платформу VK Teams для разработчиков. С помощью самого приложения можно планировать задачи, отслеживать события в календаре и общаться. Теперь разработчики могут создавать собственные приложения для интеграции.

VK Teams представляет собой суперапп для командной работы. Платформа объединяет мессенджер, приложение для онлайн-конференций, календарь, планировщик задач, почтовый сервис и другие рабочие инструменты. Также администраторы компаний могут встраивать сторонние сервисы и приложения. К примеру, приложения для работы с отпусками, адаптации сотрудников или для запросов бухгалтерских документов. Теперь компания открыла возможность создавать собственные приложения для интеграции с помощью JavaScript и HTML. В будущем ожидается релиз конструктора для быстрого прототипирования идей или создания простых приложений.

Многие популярные мессенджеры пошли по пути создания супераппов, а потом запустили версии для бизнеса. Команда VK изначально создавала VK Teams как коммуникационную платформу для корпоративной работы, а потом стала расширять её функциональность дополнительными сервисами: интеграцией с почтой, календарём, таск-трекером и другими инструментами. Для того чтобы платформа была более гибкой и эффективной, партнёры могут кастомизировать её под свои задачи и дополнять уникальными мини-приложениями.

Руководитель коммуникационных продуктов VK Tech Михаил Чижов

Установка новых приложений в VK Teams осуществляется с помощью специального чат-бота. После этого ссылкой на приложение можно поделиться с сотрудниками и коллегами. Также устанавливать интеграции со сторонними сервисами можно с помощью панели администратора. В таком случае новое приложение автоматически появится в меню VK Teams у всех сотрудников. Работать с VK Teams можно на любых устройствах под управлением Windows, macOS, Linux, Android, iOS или в браузере.

Понравилась статья? Поделиться с друзьями:
ТВОЙ ВК