[Модуль] slack (slack)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

[Модуль] slack (slack)

Сообщение directman66 » Чт авг 23, 2018 11:41 am

Slack — корпоративный мессенджер. Запущен в тестовом режиме в августе 2013 года, публичный релиз состоялся 12 февраля 2014. В первый день тестирования зарегистрировались 8 тысяч компаний. По данным компании на июнь 2015, Slack ежедневно используют 1,1 миллиона пользователей[1]. Slack стал самым быстрорастущим бизнес-приложением в истории[2]. Wikipedia

Бесплатный акаунта slack дает возможности (применительно для системы умного дома):
1) хранение архива 10000 сообщений с вложениями;
2) возможность отправки текстовых сообщений, изображений, ссылок, кнопок и много других возможностей;
3) различные клиенты для всех платформ;
4) нет необходимости использовать VPN (спасибо РКН);
5) возможность отправлять сообщения в системный чат (на примере имеющего модуля телеграм) - в планах.
6) широчайшие возможности интеграции (хороший api)

Что реализовано модулем в настоящий момент:
1) подписка на системный чат в зависимости от требуемого приоритета (меню настройки);

2) отправка текстовых сообщений через webhook

Код: Выделить всё

include_once(DIR_MODULES . 'slack/slack.class.php');
 $slack_module = new slack();
 $slack_module->sendMessageToAll("test message to all");
2) отправка сообщений с вложением (картинка) через webhook. Картинка должна быть доступна по внешней ссылке (из локальной ссылки почему-то не работает).

Код: Выделить всё

include_once(DIR_MODULES . 'slack/slack.class.php');
 $slack_module = new slack();
 $slack_module->sendImageToAll("http://192.168.1.xx/img.jpg","test image");
Для отправки снапшотов с камеры, пока приходится их выкладывать во временную папку по внешней ссылке. Просьба проверить возможность отправки тем, у кого вэбморда недоступна по сети.

Планы на будущее:
1) Добавить другие доступные типы отправляемого контента;
2) Добавить подписку на бота (импорт сообщений в системный час Алисы)
3) Настроить систему callback.

Настройка:

Отправка сообщений:
1) отправка сообщений возможна через vebhook, для этого:
а) Регистрируемся https://api.slack.com/
б) Создаем новое приложение https://api.slack.com/apps/new AppName — название приложения, .
Short description — краткое описание приложения.
Describe what your app does on Slack — полное описание приложения.
Link to clear instructions on how to install your Slack app.
Link to support for your Slack app — две ссылки на страницы с описанием установки и использования данного приложения.
в) Получаем ссылку на Webhook. Для этого на вкладке Basic Information выбираем Add features and functionality, далее Incoming Webhooks, и включаем Activate Incoming Webhooks.
Ссылка Webhook имеет формат: https://hooks.slack.com/services/T00000 ... XXXXXXXXXX
Эту ссылку добавляем на странице "Настройки" модуля.
г) настраиваем необходимый приоритет отправляемого системного чата.
СпойлерПоказать
slack2.png
slack2.png (306.4 КБ) 5554 просмотра
slack1.png
slack1.png (18.4 КБ) 5554 просмотра
За идею интеграции спасибо пользователю neromih.
предыдущая тема viewtopic.php?f=4&t=5649
За это сообщение автора directman66 поблагодарили (всего 8):
Igor.P (Чт авг 23, 2018 12:06 pm) • neromih (Чт авг 23, 2018 4:09 pm) • dengi.76 (Чт авг 23, 2018 4:24 pm) • odinvolk (Пт авг 24, 2018 12:42 am) • K070HY (Пт авг 24, 2018 9:57 pm) • chimik (Сб сен 15, 2018 12:41 am) • Romancho (Ср ноя 07, 2018 12:27 pm) • Yashalta (Чт дек 13, 2018 9:22 pm)
Рейтинг: 9.3%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
dengi.76
Сообщения: 222
Зарегистрирован: Вт фев 06, 2018 9:40 pm
Откуда: Пермь
Благодарил (а): 117 раз
Поблагодарили: 7 раз

Re: [Модуль] slack

Сообщение dengi.76 » Чт авг 23, 2018 4:24 pm

Попробовал...,ОТЛИЧНО РАБОТАЕТ !!!
vitar78
Сообщения: 128
Зарегистрирован: Пт июл 15, 2016 3:12 am
Благодарил (а): 6 раз
Поблагодарили: 2 раза

Re: [Модуль] slack

Сообщение vitar78 » Вт сен 04, 2018 12:31 am

не понимаю где ссылка вебхок
Вложения
Screenshot.png
Screenshot.png (154.67 КБ) 5422 просмотра
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: [Модуль] slack

Сообщение directman66 » Вт сен 04, 2018 1:27 pm

СпойлерПоказать
s1.png
s1.png (112.9 КБ) 5401 просмотр
s2.png
s2.png (24.28 КБ) 5401 просмотр
s3.png
s3.png (49.02 КБ) 5401 просмотр
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
Руслан
Сообщения: 193
Зарегистрирован: Чт дек 17, 2015 10:08 am
Откуда: Уфа
Благодарил (а): 36 раз
Поблагодарили: 14 раз

Re: [Модуль] slack

Сообщение Руслан » Пн сен 24, 2018 8:13 am

Чат системы так и не отправляется. Костыль пока сделал:

Код: Выделить всё

//ThisComputer.lastSayMessage
$mess=gg("ThisComputer.lastSayMessage",0);
include_once(DIR_MODULES . 'slack/slack.class.php');
$slack_module = new slack();
$slack_module->sendMessageToAll($mess);
А как обратно на бот отправлять сообщения?
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: [Модуль] slack

Сообщение directman66 » Пн сен 24, 2018 8:42 am

Модуль должен быть подписан на событие HOOK_EVENT_SAY. Проверьте во вкладке "Общие настройки" -> Обработчики -> HOOK_EVENT_SAY
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: [Модуль] slack

Сообщение directman66 » Пн сен 24, 2018 8:44 am

Руслан писал(а):
Пн сен 24, 2018 8:13 am

А как обратно на бот отправлять сообщения?
Пока не реализовано, модулем вроде как не активно пользуются, приоритеты в пока в других направлениях.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
Руслан
Сообщения: 193
Зарегистрирован: Чт дек 17, 2015 10:08 am
Откуда: Уфа
Благодарил (а): 36 раз
Поблагодарили: 14 раз

Re: [Модуль] slack

Сообщение Руслан » Пн сен 24, 2018 8:57 am

Тут ещё и кнопки можно делать...
Руслан
Сообщения: 193
Зарегистрирован: Чт дек 17, 2015 10:08 am
Откуда: Уфа
Благодарил (а): 36 раз
Поблагодарили: 14 раз

Re: [Модуль] slack

Сообщение Руслан » Пн сен 24, 2018 9:07 am

directman66 писал(а):
Пн сен 24, 2018 8:42 am
Модуль должен быть подписан на событие HOOK_EVENT_SAY. Проверьте во вкладке "Общие настройки" -> Обработчики -> HOOK_EVENT_SAY
У меня написано : {"yandex_tts":{"filter":"","priority":10},"telegram":{"filter":"","priority":10},"slack":{"filter":"","priority":10}}
pash4uga
Сообщения: 192
Зарегистрирован: Чт окт 04, 2018 12:04 pm
Благодарил (а): 28 раз
Поблагодарили: 45 раз

Re: [Модуль] slack

Сообщение pash4uga » Пн окт 08, 2018 4:17 pm

Отличная альтернатива Telegram!
Ждем доработок, что бы можно было и отправлять команды серверу.
Ответить