Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Отправка переменной в Telegram-сообщении  (Прочитано 1937 раз)

Saurin

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Здравствуйте, задача состоит в том, что бы скада присылала сообщение каждые 15-20 минут в телеграм  с температурой на момент отправки сообщения. 
Вопрос 1. Как затащить в скрипт команду, которая отправляет значение переменной  в телеграм сообщении?
Вопрос 2. К какому событию привязывать скрипт, что бы он выполнялся не по какому то событию, а по определенному промежутку времени (каждые 15-20 минут)?
Вот скрипт, который я попытался написать.
Код
var
aMesTemp: TDateTime;
begin
RecodeTime(Now, HourOf(Now), MinuteOf(Now), 0, 0);
SendTelegram('Температура');
aMesTemp:= IncMinute (Now, -5);
end.

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1400
    • Просмотр профиля
Re: Отправка переменной в Telegram-сообщении
« Ответ #1 : 31 Марта 2020, 10:30:22 »
Здравствуйте.

1. Для отправки Telegram сообщений нужно использовать функцию SendTelegram. Для получения значения переменной в виде строки нужно использовать свойство переменной AsStr.
2. Для этого можно создать скрипт с типом события "Прошла секунда", создать виртуальную переменную "vrTimer" с типом данных Integer для подсчета секунд и написать к примеру такой код:
Код: (delphi)
const
  INTERVAL = 10;  // Интервал таймера в секундах
begin
  vrTimer.Value := vrTimer.Value + 1; // накапливаем секунды в vrTimer

  { если прошло больше, чем INTERVAL секунд с последнего срабатывания таймера }
  if vrTimer.Value >= INTERVAL then
  begin
    SendTelegram('Температура: ' + vrTemp.AsStr);

    vrTimer.Value := 0;
  end;
end.
, где vrTemp это переменная температуры, INTERVAL - интервал отправки сообщений в секундах.

Saurin

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: Отправка переменной в Telegram-сообщении
« Ответ #2 : 31 Марта 2020, 11:05:48 »
а скрипт нужно прикреплять к какому-то событию? или есть какой то планировщик событий?

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1400
    • Просмотр профиля
Re: Отправка переменной в Telegram-сообщении
« Ответ #3 : 31 Марта 2020, 11:13:38 »
Перейдите в редактор скриптов через меню "Проект -> Скрипты", нажмите кнопку создания нового скрипта, выберите необходимый тип события(см. скриншот во вложении) и напишите код скрипта.
« Изменён: 31 Марта 2020, 11:15:14 от Simple_Scada »

Saurin

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: Отправка переменной в Telegram-сообщении
« Ответ #4 : 31 Марта 2020, 11:45:27 »
Спасибо :)