Плагин Telegram

Назначение

Плагин Telegram предназначен для передачи сообщений от системы intraHouse в мессенджер Telegram с помощью бота.

Для работы плагина необходимо создать телеграм-бот. Эта процедура выполняется в приложении Telegram.

Создание Telegram-бота

Бот в Telegram создается при помощи другого бота под названием BotFather

Нажимаем кнопку СТАРТ для начала общения с ботом BotFather

Отправляем команду /newbot 

Бот предложит ввести имя, которое будет отображаться в списке контактов:

Бот предложит ввести имя бота, в конце оно должно оканчиваться на «bot»:

Если имя не занято, BotFather пришлет в ответ сообщение с токеном — «ключом» для доступа к созданному боту:

Настройка плагина

Двойным кликом на строке плагина открыть окно свойств плагина.
На вкладке Параметры заполнить следующие поля:

  1. Токен — ключ к созданному боту
  2. Прокси — выберите нужный режим (Авто/Ручная настройка/Выключен)
Если в настройках Прокси выставлен режим Авто, плагин автоматически выбирает адрес Прокси сервера.
 
Нажать кнопку Сохранить.

Получение идентификатора пользователя

После настройки плагина, можно написать любое сообщение (/start) боту.  Если все сделано правильно в ответ будет получено сообщение с идентификатором пользователя:

Настройка информирования

Для добавления адреса информирования, проделайте следующие шаги

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

Заполните поля:
  1. Канал информирования — выберите необходимый плагин информирования.
  2. Группа —  присвойте необходимую группу информирования.
  3. Адрес (номер) — введите полученный ранее идентификатор пользователя
Нажать кнопку Сохранить.

Примечание. После добавления пользователя необходимо перезагрузить плагин.

Использование

Плагин Telegram можно использовать в сценариях для передачи сообщений.

Например, этот скрипт отправит сообщение в Telegram при протечке воды

/** 
* @name Water leak
* @desc Shut off the water valve and report the water leakage.
*/

const actor  = Device("ActorD", "Water valve"); 
  
const sensor = Device("SensorD", "Leakage sensor");  

const script = {
    check() {
      return sensor.dval;
    },
    
    start() {
     this.startTimer("T1", 3, "close");       
    },
    
    close() {
     this.do(actor,"off");  

     this.info('telegram', 'OWNER', 'Water leak! The water valve is shut off!');
    }
    
};