![](/img/trans.png)
[英]Wait for async calls to return before exiting program when using AWS-cpp-sdk
[英]aws-cpp-sdk : How to IoT publish using MQTT over Web Socket (in c++)
我做了很多研究(這里和github),以了解Iot Data Plane類是如何工作的。
我想知道如何使用c ++ sdk和端口443發布關於主題的數據。我想建立我的連接,並且在我關閉它之前保持連接。
簡而言之,我需要幫助才能在Linux上使用cpp sdk通過Web Socket發送MQTT。
有人可以幫忙嗎?
Aws::SDKOptions options;
options.loggingOptions.logLevel = Aws::Utils::Logging::LogLevel::Info;
Aws::InitAPI(options);
Aws::Auth::AWSCredentials credentials;
credentials.SetAWSAccessKeyId("a valid key id generated in Aws IAM");
credentials.SetAWSSecretKey("a valid secret key generated in Aws IAM");
Aws::IoTDataPlane::IoTDataPlaneClient client(credentials);
Aws::IoTDataPlane::Model::PublishRequest request;
std::shared_ptr<Aws::StringStream> stream = std::make_shared<Aws::StringStream>("Something to publish.");
request.SetBody(stream);
request.SetTopic("MyTopic");
Aws::IoTDataPlane::Model::PublishOutcome outcome(client.Publish(request));
if(outcome.IsSuccess())
{
printf("Success");
}
else
{
printf("%s", outcome.GetError().GetMessage().c_str());
}
Aws::ShutdownAPI(options);
正如Aws在Git Hub上的軟件工程師所回答的,我想要做的還不可能。
https://github.com/aws/aws-sdk-cpp/issues/594
c ++ sdk目前不支持mqtt。 我們計划將此添加到即將推出的c99 sdk中。 我們會告訴你。 在此期間,如果您需要使用mqtt,您可以使用iot sdk。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.