Tekvel Magic
|
Классы | |
class | _MMSVar |
Абстрактный базовый класс для MMS переменных Подробнее... | |
class | BehaviourModeKind |
Перечисление видов режимов поведения. Подробнее... | |
class | ClientSimulator |
Класс ClientSimulator для имитации клиентских взаимодействий с IED. Подробнее... | |
class | ControlModelKind |
Перечисление для типов моделей управления. Подробнее... | |
class | Dbpos |
Класс значения двухбитового сигнала. Подробнее... | |
class | HealthKind |
Перечисление видов состояния здоровья. Подробнее... | |
class | IedClientError |
Перечисление для клиентских кодов ошибок в коммуникации с IED. Подробнее... | |
class | MmsClientNotConnected |
Исключение когда MMS-клиент не подключен. Подробнее... | |
class | MmsClientNotSupported |
class | OriginatorCategoryKind |
Перечисление для категорий происхождения команд. Подробнее... | |
class | Quality |
Класс Quality для работы с атрибутами качества. Подробнее... | |
class | RCBReportOptions |
Класс опциональных полей буферизируемого отчёта. Подробнее... | |
class | ServerSimulator |
Класс ServerSimulator для имитации MMS-сервера. Подробнее... | |
class | Subnetwork |
Класс Subnetwork для моделирования подключения имитируемого сервера (или клиента) к подсети. Подробнее... | |
class | TimeQuality |
Класс флага качества метки времени. Подробнее... | |
class | TimeStamp |
Класс MMS-метки времени. Подробнее... | |
class | TrgOps |
Класс триггеров управляющего блока отчётов - TrgOps. Подробнее... | |
class | Validity |
Перечисление возможных значений флага Validity в атрибуте качества по стандарту IEC 61850. Подробнее... | |
Функции | |
def | get_local_arp_table () |
Возвращает ARP-таблицу локальной машины. Подробнее... | |
def | get_vendor_by_mac (mac_address) |
Возвращает наименование вендора по MAC-адресу. Подробнее... | |
bool | is_valid_ipv4 (str ip) |
Проверяет, является ли предоставленная строка допустимым IPv4-адресом. Подробнее... | |
def | extract_ied_name (signals, typical_ldinsts=None) |
Извлекает имя IED из строки, содержащей iedName+ldInst в ссылках на сигналы. Подробнее... | |
def | parse_datamodelvalues_to_tree (data) |
Преобразует модель данных со значениям в иерархическую JSON структуру Подробнее... | |
def extract_ied_name | ( | signals, | |
typical_ldinsts = None |
|||
) |
Извлекает имя IED из строки, содержащей iedName+ldInst в ссылках на сигналы.
Функция полезна для извлечения имени IED из строк, содержащих как имя IED, так и инстанс логического устройства (ldInst), обычно получаемых из списка ссылок на сигналы. Она сравнивает общий префикс всех ссылок на сигналы в списке и корректирует его, удаляя типичные суффиксы логических устройств. Если найден общий префикс, функция дополнительно корректирует его, удаляя суффиксы или разделяя по символу подчеркивания.
signals | Список строковых ссылок на сигналы, содержащих склеенные строки iedName+ldInst (например, "IED1_LD1/SignalName"). |
typical_ldinsts | Список типичных имен инстансов логических устройств (по умолчанию: ["PROT", "LD", "LD0", "CTRL", "MEAS"]). |
def get_local_arp_table | ( | ) |
Возвращает ARP-таблицу локальной машины.
Функция извлекает ARP-таблицу локальной машины, выполняя команду arp -a
. Затем она анализирует вывод, чтобы извлечь MAC- и IP-адреса. Широковещательные (например, FF-FF-FF-FF-FF-FF) и мультикастовые адреса, начинающиеся с 01, игнорируются.
Возвращает ARP-таблицу локальной машины.
def get_vendor_by_mac | ( | mac_address | ) |
Возвращает наименование вендора по MAC-адресу.
Функция обрабатывает полученный на входе MAC-адрес, получает для него данные из библиотеки OUI Wireshark. Ссылка на обновляемый список устройств: https://gitlab.com/wireshark/wireshark/raw/master/manuf
mac_address | MAC-адрес в формате текстовой строки. |
bool is_valid_ipv4 | ( | str | ip | ) |
Проверяет, является ли предоставленная строка допустимым IPv4-адресом.
Функция использует регулярное выражение для проверки, соответствует ли данная строка правильному формату IPv4-адреса. Она проверяет, что каждый октет находится в диапазоне от 0 до 255, и что адрес состоит из четырех октетов, разделенных точками.
ip | Строка, представляющая IPv4-адрес, который необходимо проверить. |
True
, если строка является допустимым IPv4-адресом, False
в противном случае. def parse_datamodelvalues_to_tree | ( | data | ) |
Преобразует модель данных со значениям в иерархическую JSON структуру
Преобразует JSON, возвращаемый функцией IED.get_datamodel_values() в иерархическую структуру JSON формата: