Визуализация топологии

Компоненты Граф и Карта позволяют визуализировать топологию устройства, например, связи между устройствами.

Визуализация топологии настраивается определенными свойствами:

Поставщик

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

  • Пользовательский (визуализирует любые связи между устройствами, которые определены нестандартным образом)

  • Сеть (топология сети всех типов, например, Уровень 2 и Уровень 3)

  • Уровень 2 (OSI модель, слой топологии 2)

  • Уровень 3 (OSI модель, слой топологии 3)

Для компонента Карта Поставщик может быть выставлен в пустую строку, чтобы отключить визуализацию топологии.

Имя свойства: provider

Тип свойства: String

Входной и выходной узлы являются контекстами

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

Имя свойства: contextMode

Тип свойства: Boolean

Показывать несвязанные узлы

Определяет показанные узлы, которые не имеют ссылок.

Имя свойства: displayUnlinkedNodes

Тип свойства: Boolean

Выражение топологии

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

Среда вычисления выражения топологии:

Контекст по умолчанию

Отсутствует.

Таблица данных по умолчанию

Отсутствует.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: topologyExpression

Тип свойства: String

Выражение связей

Используется только Пользовательским поставщиком топологии. Это выражение должно иметь результатом таблицу данных. Каждая запись в этой таблице будет определять одну связь топологии, то есть она должна каким-либо образом соотносить источник связи с целью, которая будет получена через Выражение идентификатора связей, Выражение источника и Выражение назначения. Запись может также определять и другие свойства связи, например, цвет, ширину, описание и пр. Эти свойства будут получены с помощью Выражения цвета, Выражения ширины и пр.

Среда вычисления выражения топологии:

Контекст по умолчанию

Отсутствует.

Таблица данных по умолчанию

Результат Выражения топологии.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: linkExpression

Тип свойства: String

Выражение идентификаторов связей

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

Среда вычисления выражения топологии:

Контекст по умолчанию

Отсутствует.

Таблица данных по умолчанию

Результат Выражения связей.

Строка по умолчанию

Обрабатываемая в данный момент строка таблицы по умолчанию.

Переменные среды

Только стандартные переменные.

Имя свойства: linkIdExpression

Тип свойства: String

Выражение источника

Используется только Пользовательским поставщиком топологии. Это выражение оценивается для каждой записи таблицы, возвращенной Выражением топологии. Выражение должно иметь результатом Строку, интерпретируемую как путь контекста источника топологической связи (например, контекст устройства).

Среда вычисления выражения источника:

Контекст по умолчанию

Отсутствует.

Таблица данных по умолчанию

Таблица данных, возвращенная Выражением Топологии.

Строка по умолчанию

Обрабатываемая в данный момент строка таблицы по умолчанию.

Переменные среды

Только стандартные переменные.

Имя свойства: sourceExpression

Тип свойства: String

Выражение цели

Используется только Пользовательским поставщиком топологии. Это выражение оценивается для каждой записи таблицы, возвращенной Выражением топологии. Выражение должно иметь результатом Строку, интерпретируемую как путь контекста источника топологической связи (например, контекст устройства).

Среда вычисления выражения цели:

Контекст по умолчанию

Отсутствует.

Таблица данных по умолчанию

Таблица данных, возвращенная Выражением Топологии.

Строка по умолчанию

Обрабатываемая в данный момент строка таблицы по умолчанию.

Переменные среды

Только стандартные переменные.

Имя свойства: targetExpression

Тип свойства: String

Выражение узлов

Используется только Пользовательским поставщиком топологии. Результат выражения должен быть Таблицей данных. Каждая запись этой таблицы будет опрелеять один узел топологии, поэтому она должна содержать информацию для Выражения идентификаторов связей.  Запись может также определять другие свойства узла, например, цвет, ширину, описание и пр.

Среда вычисления выражения топологии

Контекст по умолчанию

Отсутствует.

Таблица данных по умолчанию

Результат Выражения топологии.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: nodeExpression

Тип свойства: String

Выражение идентификаторов узлов

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

Среда вычисления выражения топологии

Контекст по умолчанию

Отсутствует.

Таблица данных по умолчанию

Результат Выражения узлов.

Строка по умолчанию

Обрабатываемая в данный момент строка таблицы по умолчанию.

Переменные среды

Только стандартные переменные.

Property name: nodeIdExpression

Property type: String

Выражение описания узла

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

Среда вычисления выражения описания узла:

Контекст по умолчанию

Контекст объекта (обычно устройство), соответствующий источнику или цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строковое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: nodeDescriptionExpression

Тип свойства: String

Выражение цвета

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

Среда вычисления выражения цвета:

Контекст по умолчанию

Контекст объекта (обычно устройство), соответствующий источнику или цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строковое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: colorExpression

Тип свойства: String

Выражение типа

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

Пиктограммы топологического узла находятся в подпапке /images/shapes установочной папки SberMobile. Имя файла пиктограммы должно соответствовать Строке, возвращенной Выражением типа. Расширение файла пиктограммы должно быть .svg, т.e. все пиктограммы - это векторные SVG изображения.

Каждое SVG изображение, используемое как пиктограмма топологического узла, должно включать единственный элемент (тег) внутри его тегов <svg></svg>. Этот тег может быть, например, <path>, <circle> или любым другим разрешенным SVG элементом. Вложенные элементы не разрешаются.

Среда вычисления выражения типа:

Контекст по умолчанию

Контекст объекта (обычно устройство), соответствующий источнику или цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строковое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: typeExpression

Тип свойства: String

Выражение интерфейса

Это опциональное выражение оценивается для каждого Контекста, являющегося источником или целью топологической связи. Оно должно иметь результатом целое число, которое определяет интерфейс узла источника/цели, к которому принадлежит текущая связь.

Среда вычисления выражения интерфейса::

Контекст по умолчанию

Контекст объекта (обычно устройство), соответствующий источнику или цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строквое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: interfaceExpression

Тип свойства: String

Выражение направленности

Это опциональное выражение оценивается для каждой топологической связи. Оно должно иметь результатом логическое значение, определяющее, направлена или не направлена связь (например, направляется из своего Источника к Цели). По умолчанию все связи не направлены.

Это свойство недоступно для компоновки типа Дерево, Радиальная и Пузырьковая. Эти компоновки не рекомендуются для визуализации топологий, т.к. изначальная информация направления связи перекрывается алгоритмом компоновки.

Среда вычисления выражения направленности:

Контекст по умолчанию

Контекст цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строковое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: directedExpression

Тип свойства: String

Выражение ширины

Это опциональное выражение оценивается для каждой топологической связи. Оно должно иметь результатом число с плавающей точкой, определяющее ширину топологической связи. Ширина связи по умолчанию - 1 пиксель.

Среда вычисления выражения ширины:

Контекст по умолчанию

Контекст цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строковое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: widthExpression

Тип свойства: String

Выражение описания связи

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

Среда вычисления выражения описания связи:

Контекст по умолчанию

Контекст цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строковое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: linkDescriptionExpression

Тип свойства: String

Показывать описания связи

Если этот флажок активирован, будет отображаться описание связи.

Имя свойства: linkDescriptionShowMode

Тип свойства: Boolean

Выражение цвета связи

Это опциональное выражение оценивается для каждой топологической связи. Оно должно иметь результатом Цвет, используемый для отрисовки топологической связи.

Среда вычисления выражения цвета связи:

Контекст по умолчанию

Контекст цели топологической связи.

Таблица данных по умолчанию

Таблица данных, представляющая текущую топологическую связь. Строковое поле source содержит путь контекста источника связи. Строковое поле target содержит путь контекста цели связи.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Имя свойства: linkColorExpression

Тип свойства: String

Выражение изображения

Выражение, которое вернет изображения объектов слоя.

Контекст по умолчанию

Контекст слоя (для типа Геозона), контекст устройства (для типа Контекст), отсутствует (для типа Выражение таблицы узлов).

Таблица данных по умолчанию

Итоговая таблица выражения таблицы узлов (для типа Выражение таблицы узлов), отсутствует для остальных.

Строка по умолчанию

Указывает на обрабатываемую в данный момент ряд таблицы данных по умолчанию, отсутствует (для типа Контекст).

Переменные среды

Только стандартные переменные.

Имя свойства: imageExpression

Тип свойства: String

Выражение по умолчанию (select({users.admin.models.deviceImages:deviceImages}, 'image', 'name', {.:genericProperties$type})) берет изображения из Изображения устройства

Только чтение

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

Метки

Конфигурация динамических меток, обозначающих текущее состояние устройства.

Свойства метки:

Поле

Тип

Описание

Выражение

Строка

Выражение текста метки. Это выражение будет рассчитываться каждый Период. Его результат будет преобразован в строку и отображен на метке.

Контекст по умолчанию выражения метки:

Контекст по умолчанию

Контекст, определенный свойством Источник данного компонента устройства. Если Источник не определен, Контекст по умолчанию работающего в данный момент виджета.

Таблица данных по умолчанию

Таблица параметров виджета.

Строка по умолчанию

0

Переменные среды

Только стандартные переменные.

Вертикальное выравнивание

Целое

Вертикальное выравнивание метки.

Горизонтальное выравнивание

Целое

Горизонтальное выравнивание метки.

Шрифт

Таблица данных

Шрифт метки.

Передний план

Цвет

Цвет метки

Период

Длинный

Период обновлений текста метки, т.e. период переоценки Выражения.

Имя свойства: labels

Тип свойства: Data Table

Визуализация отношения "устройство-родитель дочернему устройству" на карте визуализации

Этот пример объясняет, как использовать поставщика топологии Custom для визуализации отношения "устройство-родитель дочернему устройству", определенное моделью Подключаемость устройств, включенной в продукт SberMobile Network Manager.

Модель Подключаемость устройств прикрепляет табличное свойство Родители к каждому устройству Хост сети (можно легко прикрепить ко всем устройствам). Таблица Родители имеет поле Путь, представляющее путь контекста устройства-родителя. Таблица содержит список устройств, влияющих на подключаемость к сети текущего устройства.

Чтобы визуализировать все связи "дочернее устройство устройству-родителю" на топологическом графике или карте, необходима следующая настройка Пользовательского поставщика топологии:

  • Выражение топологии: callFunction("", "executeQuery", "SELECT parents.parents$path as parent, children.info$remotePath as child FROM users.*.devices.*:parents as parents LEFT OUTER JOIN users.*.devices.*:info as children ON children$CONTEXT_ID = parents$CONTEXT_ID"). Это выражение выполняет запрос, возвращающий список всех связей "устройство-родителю", определяемых в SberMobile Server и доступных текущему пользователю. Таблица результатов запроса имеет поля parent и child, содержащие пути контекстов конечной точки связи.

  • Выражение источника: {parent}. Это выражение извлекает путь контекста источника связи из каждой строки вышеобозначенных результатов запроса.

  • Выражение цели: {child}. Это выражение извлекает путь контекста цели связи из каждой строки вышеобозначенных результатов запроса.

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