Сети
Сети вещей определяют взаимосвязи между вещами. Одна вещь может быть родительской, дочерней или родственной для другой вещи. Сети вещей определяют иерархию вещей. С помощью сетей и через интерфейсы REST можно запрашивать вещь о том, кто является ее родителем или какая вещь является для нее родственной, когда необходимо пройти по иерархии вещей. Можно выполнить обход сети с помощью сценария в сервисе или подписке либо с помощью сервисов REST. Существует сервис REST, позволяющий частично или полностью загрузить всю сеть, а затем показать сеть в мэшапе.
Функции сценариев на стороне сетевого сервера
GetChildren(name) - (необязательно) возвращает массив строк с наименованиями дочерних узлов. name = узел, для которого нужно получить дочерние. Если наименование отсутствует, формирование списка начнется с корневого узла.
GetParent(name) - возвращает строку, содержащую наименование родительского узла, пустую строку, если это узел первого уровня, или значение null, если это корневой (пустой) узел. Параметр name - это наименование узла, для которого нужно получить родительский.
GetChildrenForShape(parentName,shapeName) - возвращает массив наименований вещей.
GetChildrenForTemplate(parentName,templateName) - возвращает массив наименований вещей.
Сетевые сервисы (сценарий + мэшап + REST API)
GetNetworkConnections(maxDepth) - возвращает таблицы данных со всеми связями родитель-потомок в одной таблице. Если maxDepth не определено (необязательно), возвращает все взаимосвязи родитель-потомок.
GetSubNetworkConnections(start,maxDepth) - возвращает таблицу данных со всеми взаимосвязями родитель-потомок в одной таблице для подмножества всей сети, начинающегося с конкретного наименования узла.
start - узел, для которого нужно начать поддерево. Если не определен, начинается в корневом узле.
maxDepth - если не определено, возвращает все взаимосвязи родитель-потомок.
GetNetworkAsNestedInfoTables(maxDepth) - аналогично GetNetworkConnections, но использует вложенные таблицы данных. maxDepth является необязательным и возвращает все, если значение не предоставлено.
GetSubNetworkAsNestedInfoTables(start,maxDepth) - аналогично GetSubNetworkConnections, но использует вложенные таблицы данных.
start - узел, для которого нужно начать поддерево. Если не определен, начинается в корневом узле.
maxDepth - если не определено, возвращает все взаимосвязи родитель-потомок.
GetChildConnections(name) - возвращает таблицу данных только с прямыми дочерними узлами, где name - узел, для которого нужно получить дочерние. Если не указан, будет начинаться в корневом узле.
GetParentName(name) - возвращает строку, содержащую наименование родительского узла, пустую строку, если это узел первого уровня, или значение null, если это корневой (пустой) узел, где name - это наименование узла, для которого нужно получить наименование родительского узла.
IsInNetwork(name) - возвращает логическое значение, где name - наименование узла, который ищется.
IsInSubNetwork(start,name) - возвращает логическое значение.
start - узел, для которого нужно начать поддерево. Начинается в корневом узле, если не указан.
name - наименование узла, для которого нужно выполнить поиск.
GetChildConnectionsForShape(parentName,shapeName) - возвращает таблицу данных дочерних узлов после фильтрации по родителю и профилю вещи.
GetChildConnectionsForTemplate(parentName,templateName) - возвращает таблицу данных дочерних узлов после фильтрации по родителю и шаблону вещи.
GetChildren(name) - возвращает массив строк с наименованиями дочерних узлов.
name - узел, для которого нужно получить дочерние. Если наименование отсутствует, формирование списка начнется с корневого узла.
GetParent(name) - возвращает строку, содержащую наименование родительского узла, пустую строку, если это узел первого уровня, или значение null, если это корневой (пустой) узел.
name - узел, для которого нужно получить родительский.
GetChildrenForShape(parentName,shapeName) - возвращает массив наименований вещей.
GetChildrenForTemplate(parentName,templateName) - возвращает массив наименований вещей.
Сети и видимость
Пользователь не видит в сети вещи, для которых у него нет разрешения на видимость. Если у пользователей имеется видимость для сети, содержащей родительские и дочерние вещи, и имеется видимость только для потомков, они не будут видеть родителей или потомков. Если у них есть видимость для родительской вещи, они будет видеть родителя и всех потомков, на которые у них имеется видимость.
Было ли это полезно?