Armadilloフォーラム

Node-RED にてAWS IotCoreにモノ登録する際にSyntaxErrorが発生する

new_bee

2024年7月3日 10時32分

いつもお世話になっております。

https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/d…
を参考にIotCoreにA6Eを登録する際に デバイス名の取得のノードで以下エラーが発生します。

function : (error)
"SyntaxError: Unexpected token 's', "ssse-flw: "... is not valid JSON"
IoTcoreのモノには登録されており、AWSまでは問題なく接続できていそうです。
またデバイス登録ではWARNINGが発生しておりこれが原因でしょうか?
sss :WARN :Communication channel is Plain.
sss :WARN :!!!Not recommended for production use.!!!
ssse-flw: Version: 1.0.5
ssse-flw: EmbSe_Init(): Exit
ssse-flw: Control Command EMBSE_LOG_LEVEL; requested log level = 4
{JSONデータ}
が出力されており、JSONデータ自体は,thingArn,thingId,thingNameでarmadilloのSNが問題なく表示されています

申し訳ありませんが解決方法をご教授いただけたら助かります。
宜しくお願いいたします。

コメント

new_bee

2024年7月3日 10時37分

デバイス登録ノードには
コマンド bash $file
queue1
Debug Mode と Append msg.payload にチェックを入れています。
構文shell
AWS_ACCESS="$1"
AWS_REGION="$2"
ENDPOINT="$3"
URI=/things/${AT_SERIAL_NUMBER}
curl \
--cacert /cert/AmazonRootCA1.pem \
--user "${AWS_ACCESS}" \
--aws-sigv4 "aws:amz:${AWS_REGION}:execute-api" \
--request POST -v \
-d "{}" \
"https://${ENDPOINT}${URI}"
で実行しております

デバイス名の取得は以下になります。
var res = JSON.parse(msg.payload);
msg.payload="thingName:" + res.thingName;
return msg;

宜しくお願いいたします。

at_reika.yamazaki

2024年7月3日 11時02分

お世話になっております。山崎です。

開発ガイドの「4.6.5. デバイスを登録するフローの作成」の [デバイス名の取得] ノードでエラーがでているということでよいでしょうか?
だとすると、以下にあるようにすでにモノに登録されているため、登録できずに失敗していると思われます。
>IoTcoreのモノには登録されており、AWSまでは問題なく接続できていそうです。

すでに登録済だと思われますので、
「4.6.9. デバイスシャドウを取得するフローの作成」に進めると思います。
こちらのフローを実行するとどうなるかご確認ください。

以上、どうぞよろしくお願いいたします。