Шаблоны вещей
Шаблоны вещей предоставляют базовую функциональность с помощью свойств, сервисов, событий и подписок, которые экземпляры вещи используют в своем выполнении. Каждая вещь создается из шаблона вещи. Шаблон вещи может расширять другой шаблон вещи. При выпуске новой версии изделия вы просто добавляете дополнительные характеристики версии без необходимости переопределять всю модель. Такая конфигурация модели предоставляет различные уровни обобщения актива. Шаблон вещи может получить одну или несколько дополнительных характеристик путем применения профиля вещи. При внесении изменения в шаблон вещи изменение распространяется на вещи, которые реализуют этот шаблон вещи. Это упрощает поддержку модели.
Шаблон вещи может использоваться, чтобы классифицировать тип вещи или как класс актива, или как модель конкретного изделия с уникальными возможностями. Если имеются две модели изделия и их взаимодействие с решением является одинаковым (те же свойства, сервисы и события), вы можете моделировать их как один шаблон вещи. Можно классифицировать шаблоны вещей, чтобы объединить вещи в наборы, которые полезны в мэшапах. Можно создавать отдельные шаблоны вещи для индексации, поиска и будущего развития изделий.
Шаблоны вещей, определяемые системой
Существует ряд определяемых системой шаблонов вещей, которые можно использовать для создания вещи для конкретных целей. Некоторые из таких шаблонов вещей могут быть полезны при создании различных сервисов и возможностей во время создания приложений.
Система определяет следующие шаблоны вещей:
Blog - вещь блога используется для реализации в ваших мэшапах таких объектов совместной работы, как блог, комментарии и дискуссионный форум.
Content Crawler - вещь, предназначенная для обработки конкретного интерфейса с внешней системой или областью содержимого. Вы определяете сервис, чтобы получить список внешнего содержимого для индексации, а также сервис для загрузки подробных данных для каждого объекта содержимого. ThingWorx затем будет индексировать эти данные и делать их доступными через функции поиска ThingWorx.
Database - соединение JDBC с любой сторонней системой реляционной базы данных.
Data Table - таблица данных аналогична таблице в реляционной базе данных и может использоваться, чтобы сохранять строки транзакции данных в ThingWorx.
File Repository - определенная сущность ThingWorx для сохранения файлов внешнего содержимого. Передача файлов в вещь Edge или из нее выполняется через конкретный репозиторий. Репозиторий файлов указывает на папку в серверной папке ThingworxStorage/repository. Сервисы репозитория файлов позволяют просматривать файлы в его папке и управлять ими.
Generic Thing - базовая вещь с минимальными наследуемыми характеристиками. Рекомендуется определять пользовательский шаблон вещи. Однако возможны случаи, когда имеется определение единичной вещи и требуется использовать базовую вещь.
Mail Server - вещь почтового сервера может быть создана, если требуется отправлять сообщения электронной почты из приложения.
Edge - вещью Edge является устройство или источник данных, который установлен на другом сервере, обычно в другой сети за брандмауэром. Вещь Edge связывается с сервером через локально установленный EMS. Примером вещи Edge является сервер OPC-DA.
Edge Database- вещь базы данных Edge для связи с базой данных OLE-DB или ADO.NET либо с источником данных на другом сервере или рабочей станции. Примерами базы данных Edge являются Microsoft Excel или Microsoft Access.
Edge Enhanced- вещь модели сервера, соответствующая удаленно установленному устройству или хранилищу данных, которым требуется поддержка туннелирования удаленного рабочего стола или передачи файлов.
Scheduler - вещь планировщика может использоваться для выполнения задания на основе шаблона cron (например, один раз в день или раз в час).
Source Control Repository - репозиторий системы управления источниками может указывать любую папку в файловой системе сервера, которая может быть корнем вашего локального репозитория. Он используется в разделе Импорт/экспорт > Сущности системы контроля версий.
Stream - хранилище данных временного ряда.
Timer - простой таймер, который инициирует событие через определенный промежуток времени.
Wiki - объект совместной работы для общего доступа к документам и связанным комментариям в мэшапах.
При создании конкретного экземпляра одного из системных шаблонов вещи можно сконфигурировать его в соответствии с бизнес-потребностями и средой Интернета вещей.
Определяемые системой удаленные шаблоны
Некоторые определяемые системой шаблоны вещей можно использовать для связи через веб-сокеты с устройствами или хранилищами данных Edge. RemoteThing является правилом именования для использования веб-сокетов, чтобы связываться с другим узлом или вещью в сети. Определены следующие шаблоны вещи для WSEMS и SDK:
RemoteDatabase - удаленный источник данных OLE-DB.
RemoteThing - удаленная вещь, не требующая передачи файлов или туннелирования. Также используется для вещей источника данных OPC-DA. Поддерживает свойства, сервисы и события.
RemoteThingWithFileTransfer - удаленная вещь с возможностью передачи файлов.
RemoteThingWithTunnels - удаленная вещь с возможностью туннелирования.
RemoteThingWithTunnelsAndFileTransfer - удаленная вещь с возможностью передачи файлов и туннелирования.
EMSGateway - шаблон вещи EMSGateway используется, когда требуется возможность обращаться к WSEMS как к автономной вещи. Это может быть полезно в ситуациях, когда WSEMS выполняется на компьютере интерфейса и поддерживает связь для одной или нескольких удаленных вещей, которые могут иметь различные IP-адреса в локальной сети.
SDKGateway - аналогично EMSGateway, но для использования реализации SDK в качестве интерфейса.
В дополнение к перечисленным выше шаблонам вещи следующие удаленные шаблоны могут использоваться в сценарии федеративного хранилища, где требуется разгрузить объекты постоянного хранения на другой сервер, оптимизированный для дисковых операций ввода-вывода:
RemoteStream - создание локального прокси-объекта для вещи потока, которая выполняется и сохраняет постоянные данные на другом сервере ThingWorx.
RemoteValueStream - создание локального прокси-объекта для вещи потока значений, которая выполняется и сохраняет постоянные данные на другом сервере ThingWorx.
RemoteDataTable - создание локального прокси-объекта для вещи таблицы данных, которая выполняется и сохраняет постоянные данные на другом сервере ThingWorx.
RemoteBlog - создание локального прокси-объекта для вещи блога, которая выполняется и сохраняет постоянные данные на другом сервере ThingWorx.
RemoteWiki - создание локального прокси-объекта для вещи вики, которая выполняется и сохраняет постоянные данные на другом сервере ThingWorx.
Создание шаблонов вещи с помощью расширения
Шаблоны вещи, создаваемые с помощью расширения, являются в основном такими же, как создаваемые в ThingWorx Composer. Это базовые шаблоны, которые используются для создания вещей с одними и теми же свойствами, параметрами конфигурации и сервисами. Различия между созданием их в Composer и внутри платформы расширения состоят в языке, используемом для сервисов, и в видимости этих сервисов.
Шаблон Composer:
Использует JavaScript для сервисов.
Исходный код является видимым.
Шаблон расширения SDK:
Использует Java для сервисов.
Исходный код не является видимым.
Может определять значения конфигурации.
Было ли это полезно?