Tekvel Magic
Загрузка...
Поиск...
Не найдено
Пространство имен mms

Классы

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 структуру Подробнее...
 

Функции

◆ extract_ied_name()

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"]).
Возвращает
Извлеченное имя IED, если оно найдено, или пустую строку, если общий префикс не определен.

◆ get_local_arp_table()

def get_local_arp_table ( )

Возвращает ARP-таблицу локальной машины.

Функция извлекает ARP-таблицу локальной машины, выполняя команду arp -a. Затем она анализирует вывод, чтобы извлечь MAC- и IP-адреса. Широковещательные (например, FF-FF-FF-FF-FF-FF) и мультикастовые адреса, начинающиеся с 01, игнорируются.

Возвращает
Список списков, где каждый внутренний список содержит MAC-адрес и соответствующий IP-адрес.

Возвращает ARP-таблицу локальной машины.

◆ get_vendor_by_mac()

def get_vendor_by_mac (   mac_address)

Возвращает наименование вендора по MAC-адресу.

Функция обрабатывает полученный на входе MAC-адрес, получает для него данные из библиотеки OUI Wireshark. Ссылка на обновляемый список устройств: https://gitlab.com/wireshark/wireshark/raw/master/manuf

Аргументы
mac_addressMAC-адрес в формате текстовой строки.
Возвращает
Наименование производителя в виде текстовой строки.

◆ is_valid_ipv4()

bool is_valid_ipv4 ( str  ip)

Проверяет, является ли предоставленная строка допустимым IPv4-адресом.

Функция использует регулярное выражение для проверки, соответствует ли данная строка правильному формату IPv4-адреса. Она проверяет, что каждый октет находится в диапазоне от 0 до 255, и что адрес состоит из четырех октетов, разделенных точками.

Аргументы
ipСтрока, представляющая IPv4-адрес, который необходимо проверить.
Возвращает
Возвращает True, если строка является допустимым IPv4-адресом, False в противном случае.

◆ parse_datamodelvalues_to_tree()

def parse_datamodelvalues_to_tree (   data)

Преобразует модель данных со значениям в иерархическую JSON структуру

Преобразует JSON, возвращаемый функцией IED.get_datamodel_values() в иерархическую структуру JSON формата:

"SIEMENS_1PROT": {
"LLN0": {
"Beh": {
"q": {
"value": "0000000000000",
"type": "bit-string",
"FC": "ST"
},
"stVal": {
"value": "1",
"type": "boolean",
"FC": "ST"
}
},