AWS IoT Device SDK
AWS IoT предоставляет SDK для TimeTec для быстрого и быстрого подключения аппаратного устройства TimeTec IoT и мобильного приложения. SDK AWS IoT Device позволяет устройствам TimeTec подключать, аутентифицировать и обмениваться сообщениями с помощью AWS IoT с использованием протоколов MQTT, HTTP или WebSockets. SDK устройства поддерживает C, JavaScript и Arduino и включает в себя клиентские библиотеки, руководство разработчика и руководство по переносу для производителей.
Шлюз устройства
Шлюз устройства AWS IoT позволяет устройствам TimTec IoT безопасно и эффективно взаимодействовать с AWS IoT. Шлюз устройства может обмениваться сообщениями с использованием модели публикации / подписки, которая обеспечивает связь «один к одному» и «один ко многим». Благодаря этому шаблону связи «один ко многим» AWS IoT позволяет подключенному устройству TimeTec передавать данные нескольким подписчикам для данной темы. Шлюз устройства поддерживает протоколы MQTT, WebSockets и HTTP 1.1, а TimeTec может легко реализовать поддержку проприетарных или устаревших протоколов. Device Gateway автоматически масштабируется для поддержки более миллиарда устройств без инфраструктуры предоставления услуг.
Аутентификация и авторизация
AWS IoT обеспечивает взаимную аутентификацию и шифрование во всех точках соединения, поэтому данные никогда не обмениваются между устройствами и AWS IoT без проверенной идентичности. AWS IoT поддерживает метод аутентификации AWS (называемый «SigV4»), а также аутентификацию на основе сертификатов X.509.
Соединения с использованием HTTP могут использовать любой из этих методов, в то время как соединения с использованием MQTT используют проверку подлинности на основе сертификатов, а соединения с использованием WebSockets могут использовать SigV4. С AWS IoT TimeTec может использовать AWS IoT сгенерированные сертификаты, а также те, которые подписаны нашим предпочтительным центром сертификации (CA). Мы можем сопоставить наш выбор роли и / или политик для каждого сертификата, чтобы мы могли разрешить устройствам или приложениям иметь доступ или изменить наш разум и полностью аннулировать доступ, даже не касаясь устройства.
TimeTec может создавать, развертывать и управлять сертификатами и политиками для наших устройств IoT с консоли или с помощью API. Эти сертификаты устройств могут быть подготовлены, активированы и связаны с соответствующими политиками, которые настроены с использованием AWS IAM. Это позволяет нашим клиентам мгновенно отменить доступ к отдельному устройству, если они этого захотят. AWS IoT также поддерживает подключения мобильных приложений пользователей с помощью Amazon Cognito, который выполняет все шаги, необходимые для создания уникального идентификатора для пользователей нашего приложения и получения временных учетных данных AWS с ограниченными правами.
реестр
Реестр устанавливает идентификатор для устройств и отслеживает метаданные, такие как атрибуты и возможности устройств. Реестр присваивает уникальный идентификатор каждому устройству, которое будет отформатировано независимо от типа устройства или того, как он подключается. Он также поддерживает метаданные, описывающие возможности устройства, например, сообщает ли датчик температуру, а также данные по Фаренгейту или Цельсию.
Реестр позволяет нашим клиентам хранить метаданные об их устройствах без дополнительной оплаты, а метаданные в реестре не истекают, пока вы получаете доступ или обновляете запись в реестре не реже одного раза в 7 лет.
Теневые устройства
С AWS IoT мы можем создать постоянную, виртуальную версию или «тень» каждого устройства, которое включает в себя последнее состояние устройства, чтобы приложения или другие устройства могли читать сообщения и взаимодействовать с устройством. Теневые устройства сохраняют последнее состояние сообщения и желаемое будущее состояние каждого устройства, даже когда устройство находится в автономном режиме. TimeTec может извлекать последнее сообщенное состояние устройства или устанавливать желаемое состояние в будущем через API или с помощью механизма правил.
Device Shadows упрощают сбор приложений, которые взаимодействуют с устройствами TimeTec, предоставляя всегда доступные API REST. Кроме того, приложения могут устанавливать желаемое состояние будущего устройства без учета текущего состояния устройств. AWS IoT будет сравнивать разницу между желаемым и последним сообщенным состоянием и управлять устройством, чтобы составить разницу.
SDK AWS IoT Device упрощает для устройства TimeTec синхронизацию своего состояния с его тенью и реагирование на нужные состояния будущего, установленные через тень.
Device Shadows позволяет нашим клиентам хранить состояние своих устройств до года бесплатно. Device Shadows сохраняются навсегда, если вы обновляете их не реже одного раза в год, иначе они истекают.
Двигатель правил
Механизм правил позволяет создавать приложения IoT, которые собирают, обрабатывают, анализируют и обрабатывают данные, созданные подключенными устройствами в глобальном масштабе, без необходимости управлять какой-либо инфраструктурой. Механизм правил оценивает входящие сообщения, опубликованные в AWS IoT, и преобразует их и передает их на другое устройство или облачную службу на основе бизнес-правил, которые вы определяете. Правило может применяться к данным с одного или нескольких устройств, и оно может принимать одно или несколько действий параллельно.
Механизм правил также может направлять сообщения на конечные точки AWS, включая AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Machine Learning, Amazon DynamoDB, Amazon CloudWatch и Amazon Elasticsearch Service со встроенной интеграцией Kibana. Внешние конечные точки могут быть достигнуты с использованием AWS Lambda, Amazon Kinesis и простой службы уведомлений Amazon (SNS).
Легко создавать правила в консоли управления или писать правила, используя синтаксис типа SQL. Правила могут быть созданы, чтобы вести себя по-разному в зависимости от содержания сообщения. Например, если показание температуры превышает определенный порог, оно может вызвать правило для передачи данных в AWS Lambda. Правила также могут быть созданы с учетом других данных в облаке, таких как данные с других устройств. Например, вы можете сказать, что предпримите действие, если эта температура более чем на 15% выше, чем в среднем по 5 других устройств.
Механизм правил предоставляет множество доступных функций, которые могут использоваться для преобразования данных, и с помощью AWS Lambda можно создавать бесконечно больше. Например, если мы имеем дело с широким диапазоном значений, мы можем взять среднее число входящих чисел. Правила также могут инициировать выполнение кода Java, Node.js или Python в AWS Lambda, обеспечивая максимальную гибкость и мощность для обработки данных устройства.