乐趣区

关于亚马逊:亚马逊AWS-Kinesis-Video-Streams-with-IOT-mqtt的demo示例


title: 亚马逊 AWS Kinesis Video Streams with IOT mqtt 的 demo 示例

categories:[Linux C]

tags:[亚马逊云平台]

date: 2021/12/22

作者:hackett

微信公众号:加班猿


AWS IoT Device SDK for Embedded C 通常面向须要优化的 C 语言运行时的资源受限设施。您能够在任何操作系统上应用此软件开发工具包,并将其托管在任何类型的处理器(例如 MCU 和 MPU)上。如果您有更多的可用内存和解决资源,咱们建议您应用更高级的 AWS IoT 设施和挪动开发工具包之一(例如,C++、Java、JavaScript 和 Python)。

1、下载 C 中的 Kinesis Video Streams with IOT 开发工具包

  1. 从 GitHub 将 AWS IoT Device SDK for Embedded C 下载到您的设施。

    git clone https://github.com/aws/aws-iot-device-sdk-embedded-c.git --recurse-submodules

    这将在当前目录中创立一个名为 aws-iot-device-sdk-embedded-c 的目录。

  2. 导航到该目录并签出最新版本。

    cd aws-iot-device-sdk-embedded-C
    git checkout latest-release-tag
  3. 装置 OpenSSL 1.1.0 或更高版本。当通过软件包管理器装置时,OpenSSL 开发库通常被称为“libssl-dev”或“openssl-devel”。

    sudo apt-get install libssl-dev

2、demo 应用程序配置

AWS IoT Device SDK for Embedded C 蕴含供您试用的示例应用程序。为了简略起见,本教程应用的是 mqtt_demo_mutual_auth 应用程序,此应用程序演示如何连贯到 AWS IoT Core 音讯代理并订阅和公布到 MQTT 主题。

  1. 将您在 AWS IoT Core 入门 中创立的证书和公有密钥复制到 build/bin/certificates 目录中。

    留神

    设施和根 CA 证书可能会过期或被撤消。如果您的证书过期或被撤消,则您必须将新的 CA 证书或公有密钥和设施证书复制到您的设施上。

  2. 您必须应用集体 AWS IoT Core 终端节点、公有密钥、证书和根 CA 证书配置示例。导航到 aws-iot-device-sdk-embedded-c/demos/mqtt/mqtt_demo_mutual_auth 目录。

    如果您已装置 AWS CLI,则可应用此命令查找您的账户端点 URL。

    aws iot describe-endpoint --endpoint-type iot:Data-ATS

    如果您尚未装置 AWS CLI,请关上 AWS IoT 控制台。在导航窗格中,顺次抉择 Manage (治理)Things (事物)。为您的设施抉择 IoT 事物,而后抉择 Interact(交互)。您的终端节点显示在事物详细信息页面的 HTTPS 局部中。

  3. 关上 demo_config.h 文件并更新以下各项的值:

    • AWS_IOT_ENDPOINT

      您的公有终端节点。

    • CLIENT_CERT_PATH

      您的证书文件门路,例如 certificates/device.pem.crt"

    • CLIENT_PRIVATE_KEY_PATH

      您的公有密钥文件名,例如 certificates/private.pem.key

    例如:

    // Get from demo_config.h
    // =================================================
    #define AWS_IOT_ENDPOINT               "my-endpoint-ats.iot.us-east-1.amazonaws.com"
    #define AWS_MQTT_PORT                  8883
    #define CLIENT_IDENTIFIER              "testclient"
    #define ROOT_CA_CERT_PATH              "certificates/AmazonRootCA1.crt"
    #define CLIENT_CERT_PATH               "certificates/my-device-cert.pem.crt"
    #define CLIENT_PRIVATE_KEY_PATH        "certificates/my-device-private-key.pem.key"
    // ================================================= 
  4. 应用此命令查看您的设施上是否装置了 CMake。

    cmake --version

    如果您看到编译器的版本信息,则能够持续下一部分。

    如果呈现谬误或看不到任何信息,则须要应用此命令装置 cmake 软件包。

    sudo apt-get install cmake

    再次运行 cmake –version 命令,确认 CMake 已装置并且您已筹备好持续操作。

  5. 应用此命令查看您的设施上是否装置了开发工具。

    gcc --version

    如果您看到编译器的版本信息,则能够持续下一部分。

    如果呈现谬误或看不到任何编译器信息,则须要应用此命令装置 build-essential 软件包。

    sudo apt-get install build-essential

    再次运行 gcc –version 命令,确认构建工具已装置并且您已筹备好持续操作。

构建并运行示例应用程序

运行 AWS IoT Device SDK for Embedded C 示例应用程序

  1. 导航到 aws-iot-device-sdk-embedded-c 并创立目录。

    mkdir build && cd build
  2. 输出以下 CMake 命令以生成 Makefiles 构建所需的文件。

    cmake ..  
  3. 输出以下命令以构建可执行应用程序文件。

    make
  4. 应用此命令运行 mqtt_demo_mutual_auth 应用程序。

    cd bin
    ./mqtt_demo_mutual_auth 

收到“来自 AWS IoT 控制台的问候”示意设施现已应用 AWS IoT Device SDK for Embedded C 连贯到 AWS IoT。

如果你感觉文章还不错,能够给个 ”三连 “,文章同步到集体微信公众号[ 加班猿]

我是hackett,咱们下期见

退出移动版