C++ 创建mqtt客户机并使用Amazon AWS Embedded C SDK订阅

C++ 创建mqtt客户机并使用Amazon AWS Embedded C SDK订阅,c++,c,amazon-web-services,aws-iot,C++,C,Amazon Web Services,Aws Iot,我试图创建一个简单的mqtt客户机并订阅一个特定的主题。我需要从subscribe函数获取有效负载(接收到的消息) 有效负载是一个字符串变量,以Json格式包含以下内容: WorkOrder Request {"siteNumber":"client2780","testNumber":"1004","vehicle":{"make":"Dummy","model":"Vehicle","vrm":"ABC 123V","vin":"12345678901234567","vehicleClas

我试图创建一个简单的mqtt客户机并订阅一个特定的主题。我需要从subscribe函数获取有效负载(接收到的消息)

有效负载是一个字符串变量,以Json格式包含以下内容:

WorkOrder Request
{"siteNumber":"client2780","testNumber":"1004","vehicle":{"make":"Dummy","model":"Vehicle","vrm":"ABC 123V","vin":"12345678901234567","vehicleClass":"4","firstRegistrationDate":"2016-12-20","fuelType":"PETROL"},"workOrderState":"COMPLETE"}
遗憾的是,我不能使用AWS SDK的C++示例版本,因为我正在使用RAD Studio来构建应用程序。我使用Amazon嵌入式C版本,使其与Embarcadero IDE交叉兼容

这是我的尝试,但显示的是客户机密钥,而不是我尝试显示有效负载时所需的有效负载字符串:

     // Subscribing
    IOT_INFO("Subscribing...");
    rc = aws_iot_mqtt_subscribe(&client, "mot/in/client2780", 17, QOS0, iot_subscribe_callback_handler, NULL);
    ShowMessage(rc);
    if(SUCCESS != rc)
    {
        IOT_ERROR("Error subscribing : %d ", rc);
    }

    // Display PayLoad on screen
    paramsQOS0.payload = (void *) sPayload;       // Showing client key instead of payload string
    char * sp = &sPayload[100];
    ShowMessage(sp);