2017-09-09 6 views
0

私は、"[v1:ThingName]"のような文字列ペイロードをトピック(someTopic/トピック1)にパブリッシュします。ルールエンジンにルールを適用してこのトピックを取得し、ラムダ関数に送信します。AWS IOTルールから文字列ペイロードを処理する

SELECT * FROM 'someTopic/+' 

私は、ペイロードと一緒にルールエンジンからキャプチャされますtopic1一部を送りたいです。したがって、トピック(2)から取り込むことができます。 select文でtopic(2)を*と連結するにはどうすればよいですか?

答えて

0

多くの試行錯誤の末、ペイロードが文字列なので、そのようにすることはできないと考えていました。

しかし、私はこの問題を解決するために、エンコード関数を使用していました。基本的には、ペイロード全体をjsonオブジェクトとしてbase64にエンコードしてから、topic(2)の値を取得します。

したがって、私のルールのSQLクエリではこれが好きです。

SELECT encode(*, 'base64') as encode, topic(2) as topic FROM 'someTopic/+' 

次に、ラムダ関数でペイロードをデコードします。

関連する問題