Работа со сценариями системы

Общие сведения

Сценарий – текст, описывающий выполнение определенной последовательности действий над объектами системы. Например, таких действий как: постановка под охрану, снятие с охраны, получение состояния, протоколирования события и т.д..

Различается два вида сценариев: сценарии XDEV - для охранных приборов и сценарии Contact ID - для Contact ID совместимых устройств.

Правила запуска, порядок выполнения и список доступных функций отличается в зависимости от типа.

Вырианты запуска сценария

Тип сценария

Варианты запуска

Сценарий XDEV

  • по команде оператора;

  • автоматически системой при возникновении события по прибору (устройству);

  • автоматически системой при выполнении задачи из планировщика задач.

Сценарий Contact ID

  • автоматически системой при получении сообщения от устройства в протоколе Contact ID.

Порядок выполнения сценария XDEV

  1. «Ядро» выполняет поиск сценария в базе данных.

  2. «Ядро» отправляет найденный сценарий на выполнение приложению «Сервер Сценариев».

  3. «Сервер Сценариев» анализирует текст сценария и выполняет его. Во время выполнения сценария происходит обмен служебной информацией между приложениями «Ядро» и «Сервер сценариев».

  4. «Ядро» выполняет команды, полученные от «Сервер Сценариев», и протоколирует свои действия в ленту событий системы.

Порядок выполнения сценария Contact ID

  1. «Ядро» при получении сообщения в формате Contact ID в ленте событий регистрирует событие «Звонок».

  2. «Ядро» выполняет поиск устройства с Account Number из сообщения. Проверяется наличие сценария у найденного устройства.

  3. «Ядро» отправляет найденный сценарий на выполнение приложению «Сервер Сценариев».

  4. «Сервер Сценариев» анализирует текст сценария и выполняет его. Во время выполнения сценария происходит обмен служебной информацией между приложениями «Ядро» и «Сервер сценариев».

  5. «Ядро» выполняет команды, полученные от «Сервер Сценариев», и протоколирует свои действия в ленту событий системы.

Правила написания сценариев

Текст сценария состоит из двух блоков:

  • заголовок;

  • список функций.

Пример сценария
1from PritokModule import *        # заголовок
2
3def SCRIPT(handle):               # функция SCRIPT
4  send_command(handle,1011,202)    # тело функции

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

Пример заголовка
from PritokModule import *
  1. Правила написания сценария XDEV

  1. Правила написания сценария Contact ID

Предупреждение

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