Skype является самым популярным IM-клиентом с более чем 200 миллионами пользователей в месяц. Это просто и надежно: любой может использовать его где угодно, даже на мобильном телефоне. Когда вы работаете с виртуальными командами, групповые чаты Skype становятся жизненно важным инструментом общения.
В Skype отсутствует хорошая встроенная поддержка внешних сервисных сообщений или роботов, отправляющих и получающих автоматические сообщения. Sevabot, дружественный Skypebot , решает эту проблему , позволяя легко и даже удаленно создавать сценарии Skype через простой HTTP-интерфейс и с любым языком сценариев UNIX. Вы даже можете отправлять сообщения Skype в групповой чат прямо из веб-браузера Javascript.
Севабот любит тебя.
1. Варианты использования
Sevabot предназначен для поддержки искусственного интеллекта в группах виртуальной разработки и эксплуатации.
- Получать информацию о состоянии разработки в чате Skype (непрерывная интеграция, например коммиты Jenkins, Travis, Github и Subversion)
- Получайте оперативные оповещения, такие как перегруженные серверы, отключение сервиса (например, оповещения о мониторинге Zabbix)
- Добавьте свои собственные команды группового чата, чтобы Sevabot выполнял для вас автоматизированные задачи (вы можете писать скрипты на * любом * поддерживаемом UNIX языке программирования)
Область применения Sevabot не обязательно должна быть ограничена разработкой программного обеспечения: вы можете, например, заставить Sevabot взаимодействовать с Google Docs или Salesforce.
2. Установка
Sevabot может работать на сервере Linux, рабочем столе Linux и рабочем столе OSX. Из-за того, как построен Skype, вам необходимо запустить клиент Skype с графическим интерфейсом внутри виртуального X-сервера, чтобы развернуть Skype на рабочем сервере. Автоматизированная конфигурация сервера Vagrant поддерживается для автоматического создания и развертывания виртуальной машины под управлением Sevabot .
Sevabot может работать под Windows, теоретически, но авторы не имели вдохновения для изучения этого хитрого варианта.
3. Программирование
Севабот написан на Python . Сценариям Sevabot, однако, не нужны знания Python, так как
- Модули Sevabot — это обычные сценарии UNIX, которые вы можете написать на Bash, Python, Perl, Ruby, Javascript, Haskel или на любом другом ежедневном препарате.
- Внешние сервисы вызывают Sevabot через HTTP webhooks, и любой язык программирования может выполнять HTTP-запросы
Вы даже можете создавать сценарии Sevabot без знания программирования, поскольку существуют HTTP-сервисы-посредники, такие как Zapier , которые позволяют подключать источники событий (например, Github API) и приемники (интерфейс Sevabot HTTP).
Фактически Sevabot является посредником между инфраструктурой веб-сервера Flask (включает HTTP-интерфейс) и Skype4Py API (управлять клиентом Skype GUI с помощью Python).
Вот простой пример того, как отправить сообщение в чат Skype из сценария оболочки Bash. Это перехват Subversion после фиксации, который отображает сообщение фиксации в определенном групповом чате Skype ( полный пример ):
#!/bin/bash repo="$1" rev="$2" svnlook="/usr/bin/svnlook" # Get last commit author author=`$svnlook author $repo` # Get last commit message commit_message=`$svnlook log $repo` # List of changed files changed=`$svnlook changed $repo` # Chat id chat="YOUR-CHAT-ID-HERE" # Sevabot endpoint informaiton # Shared secret secret="YOUR-SHARED-SECRET-HERE" msgaddress="http://YOURSERVER.COM:5000/msg/" # Create chat message msg="★ $author - $commit_message $changed" # Sign the message with MD5 md5=`echo -n "$chat$msg$secret" | md5sum` #md5sum command prints a '-' to the end. Let's get rid of that. for m in $md5; do break done # Call Sevabot's HTTP interface curl $msgaddress --data-urlencode chat="$chat" --data-urlencode msg="$msg" --data-urlencode md5="$m" exit 0
4. Хочешь — приходи к нам
Перейдите на страницу проекта Sevabot Github для получения дополнительной информации . Также проверьте информацию сообщества ; в настоящее время у нас около пяти активных участников.