ScriptObject

class ScriptObject(name=None, guid=None, parent=None)[исходный код]

Создает объект для генерации событий

Параметры:
  • name (str, optional) – Имя объекта. По умолчанию None
  • guid (str, optional) – Guid объекта. По умолчанию None
  • parent (str, optional) – Guid родительского объекта. По умолчанию None

Примечание

  • Имя объекта по умолчанию - BaseUtils.get_script_name()
  • Guid объекта по умолчанию строится по шаблноу "{script_guid}_object"
  • Guid родительского объекта по умолчанию - BaseUtils.get_server_guid()

Examples

>>> # Создаем объект
>>> scr_obj = ScriptObject()
>>> # Проверяем текущее состояние объекта
>>> scr_obj.health
'OK'
>>> # Установить флаг возле объекта
>>> scr_obj.check_me = True
>>> # Сгенерировать событие с текстом
>>> scr_obj.fire_event_v2("New event")
health

Состояние объекта

Type:"OK" | "Error"
check_me

Флаг check_me объекта

Type:bool
name

Имя объекта

Type:str
folder

Папка объекта

Type:str
context_menu_button(text, callback)[исходный код]

Добавляет кнопку в контекстное меню объекта

Параметры:
  • text (str) – Текст кнопки
  • callback (function) – Функция, которая вызывается при нажатии на кнопку. В качестве единственного аргумента функция приимает текущий объект (host_ip.object(self.guid)).
Результат:

Хендлер контекстного меню

Тип результата:

SE_ContextCatcher

Raises:
  • ValueError – Если пустой текст кнопки.
  • TypeError – Если callback нельзя вызвать в качестве функции.

Examples

>>> scr = ScriptObject()
>>>
>>> def switch(obj):
...     scr.check_me = not scr.check_me
...     btn.set_name("OFF" if scr.check_me else "ON")
>>>
>>> btn = scr.context_menu_button("ON", switch)
_images/context_menu_button.png
>>> btn
<host_ip.SE_ContextCatcher object at 0x17B01A98>
>>> scr.context_menu
[('ON', 'switch', <host_ip.SE_ContextCatcher object at 0x17B01A98>)]
fire_event_v2(message, channel='', data='')[исходный код]

Создает событие в Trassir

Параметры:
  • message (str) – Сообщение события (p1)
  • channel (str, optional) – Ассоциированный с событием канал (p2)
  • data (str, optional) – Дополнительные данные (p3)

Examples

>>> scr = ScriptObject()
>>> scr.fire_event_v2("Hello world")
_images/fire_event_v2.png