問題タブ [aws-iot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
aws-iot - 動的トピックへの AWS Iot ルールの再発行
Aws Iot トピックをサブスクライブします。
12345678/州
このトピックのペイロードを取得するルールを作成しようとしています
12345678/影/更新
これらの手順に従ってルールを作成しました。
- 私のクエリ文字列は
SELECT * FROM '+/状態'
- 私の行動は、以下のような他のトピックに変更せずにすべてを再公開することです
$$aws/things/${topic(1)}/shadow/update
「テスト」などのトピック(1)関数の代わりに静的データを書き込むと、機能します。ただし、トピック名を動的に取得できませんでした。このトピック名を取得する方法を説明する適切なドキュメントはありません。
私の場合「12345678」であるトピック名を取得する正しい方法は何ですか?
amazon-web-services - AWS で WebSockets メッセージを処理する最も簡単な方法は何ですか?
WebSockets クライアントを AWS にデプロイする良い方法は何ですか?
いくつかの WebSocket といくつかの REST ソースにサブスクライブし、受信メッセージ (WebSocket) を処理するか、定期的なリクエスト (REST) を行う必要がある AWS でアプリを構築しています。VM や OS パッチなどを管理する必要をなくすために (そしてできればコストを削減するために)、サーバーレスに移行して AWS プラットフォーム サービスを最大限に活用しようとしています。
これまでの私の考えは、メッセージが到着するたびに Lambda 関数をトリガーすることです。その後、関数はメッセージを変換/正規化し、それを SQS キューにプッシュして、他のサブシステムでさらに処理することができます。
このような Lambda クライアントには 2 つのタイプがあります。1 つは WebSockets メッセージをサブスクライブし、もう 1 つは CloudWatch スケジュールによって呼び出されたときに定期的に HTTP リクエストを作成します。次のようになります。
このアプローチは、私の REST クライアントには妥当なように思えますが、Lambda を使用して WebSockets メッセージにサブスクライブできるかどうかを判断できませんでした。Lambda は IoT によってトリガーされる可能性があり、IoT は現在 WebSocket をサポートしているようですが、MQTT プロトコルのトランスポートとしてのみサポートされているようです。
AWS IoT が WebSocket、カスタムキープアライブ間隔、強化されたコンソールをサポートするようになりました
EC2 または Docker インスタンス全体をデプロイせずに WebSockets クライアントをデプロイするための最良/最も簡単/安価な方法は何ですか?
python - AWS IoT デバイスが、iOS アプリによって発行されたメッセージを取得していません
そこで、AWS IoT 経由でデバイスと通信できる iOS アプリを構築しています。デバイスとアプリの両方が、update/accepted、get/accepted、および update/delta にサブスクライブされます。どちらの側からも更新を発行でき、更新は AWS IoT Thing Shadow に反映されますが、どういうわけか、更新がデバイス間で中継されることはありませんでした。そのため、アプリで送信を押すと、更新が AWS IoT に表示されますが、トピックにサブスクライブされていると思われるデバイスはそのような更新を受信しないようで、その逆も同様です。 以下は、デバイス側のタラ スニペットです。
node.js - Node.js を使用して aws-iot で thing-shadow を更新すると、いくつかのエラーが発生します。reffrence 用のコードも添付されています
これを行っている間にエラーが発生しました:-
エラー: getaddrinfo ENOTFOUND at errnoException (dns.js:37:11) at Object.onanswer [as oncomplete] (dns.js:124:16)
node.js - aws-iot を使用してデバイスから画像 (サイズが 128KB を超えるファイル) を送信する方法
aws IoT はデフォルトのメッセージ サイズとして 128KB をサポートしているため、nodejs SDK を使用して aws-iot に接続するデバイスが 128KB を超えるサイズの画像またはファイルを送信するにはどうすればよいでしょうか。
amazon-web-services - 認証済みの AWS Cognito ID を使用して AWS IoT エンドポイントにアクセスするにはどうすればよいですか?
JavaScript で MQTT クライアント (paho-mqtt-js) を使用して AWS IoT エンドポイントに接続していますが、独自の AWS 認証情報を使用すれば接続できます。
ただし、ログインしているユーザーに対して Cognito によって生成された資格情報を使用すると、それができません。IAM の私の Cognito 承認済みロールには「AWSIoTFullAccess」のポリシーが添付されているため、これらの資格情報が毎回 403 エラーを返す理由について混乱しています。
これに関して何か助けていただければ幸いです。
amazon-web-services - AWS IoT ルール エンジンが機能しない
どういうわけか、AWS IoT ルールがどれも機能していません。トピックに投稿し、SNS を送信しました (例のとおり)。SELECT * FROM 'acme/temp'
すべてのポリシーと信頼ポリシーは正しいですが、ルールを起動しません。悲しい部分は、ログ レベルが DEBUG に設定されているが、クラウド ウォッチには INFO のみが表示され、ルールが起動されない理由を知るための情報が表示されないことです。
信頼ポリシー
ロール ポリシー
トラブルシューティングの方法を提案してください。
AWS コンソール内で MQTT クライアントを使用してメッセージをトピックに発行しています。購読すると、メッセージが届きます。ここにルール設定を入れます forums.aws.amazon.com/thread.jspa?messageID=741034&tstart=0 トラブルシューティングできる方法を考えてもらえますか..どのようなルールを記述し、どのようなアクションを定義しても..そうはなりませんIot ルール エンジンを起動します。私は東 1 リージョンを使用しています。
amazon-web-services - AWS IOT: モノを登録し、ルールとアクションでモノの属性を使用する
aws iot ソリューションについていくつか質問があります。
いくつかの属性を持つ「モノ」を登録し、クライアント証明書をモノに関連付けたいと考えています。
Java SDKでこれを行うことはできますか? 多分あなたは例へのリンクを持っていますか?
(aws-iot-device-sdk では見つかりませんでした。aws cli の例しか見たことがありません)
デバイスが (クライアント証明書を使用して) メッセージを発行する場合、関連するモノとその属性をどのように使用できますか? (アクションまたはルールで)
シャドウデバイスを取得するためだけに参照してください
。 iot-sql-function-get-thing-shadow
誰でも私を助けることができますか?
よろしく、
マーカス
amazon-web-services - 信頼できない接続を介してクラウドからデバイスに AWS IoT コマンドを送信する
信頼性の低いネットワーク接続を備えたデバイスを特徴とする今後のプロジェクトに AWS IoT を検討しています。要件の 1 つは、コマンドをデバイスに送信することです。コマンドは確実に配信 (ACK) される必要があり、コマンドが後で完了したときに、デバイスも成功/失敗を通知する必要があります。AWS が永続的なセッションをサポートしていないことを考えると、MQTT トピックにコマンドを発行するだけではメッセージが確実に配信されないようです。これは正しいですか?
私たちは、デバイス シャドウの「望ましい」状態内のコマンドの配列にコマンドを突っ込むことについて推測してきました。次に、デバイスは、シャドウの「報告済み」状態でコマンドを複製することによってコマンドの受信を確認し、「報告済み」状態のコマンド内の結果フィールドを設定することによって成功/失敗を報告できます。
AWS IoT の経験が不足していることを考えると、これは正気のアプローチのように思えますか? または、誰かがもっときちんとしたものを見ることができますか? これに関する厄介な点の 1 つは、シャドウが完了したコマンドを蓄積することです。これはおそらく、シャドウを適切なサイズに保つために、完了したコマンドを削除する何らかのハウスキーピングが最終的に必要になることを意味します。
最後に、帯域幅の使用がどれほど巧妙であるかを知っている人はいますか? 私のサーバーが「望ましい」状態の奥深くにネストされた 100 個の要素の配列に要素を追加した場合、実際にどのくらいのデータがネットワーク上を流れますか? 同様に、デバイスが要素を「報告済み」状態に移動したとき。