システムを開発してFiware
いますが、 経由でデバイスからメジャーを送信する方法がわかりませんIDAS
iot-agent
。
Orion と Cygnus を実行していますが、サーブレットを使用してメジャーを直接 Orion に送信しており、プロセスを に切り替えたいと考えていIDAS iot-agent
ます。
サービスとデバイスを適切に作成しましたが、デバイスから iot-agent への POST でスタックしています。
私のデバイスは次のように作成されます。
{ "device_id" : "0010", "entity_name" : "0010", "entity_type" : "xxxxx", "timezone" : "Europe/Madrid", "attributes" : [ { "object_id" : "0010"," name: "fecha", "type": "timestamp", "name": "coord_x", "type": "double", "name": "coord_y", "type": "double", "name" : "coderr", "type": "string", "name": "s_temp", "type": "double", "name": "s_hum", "type": "double", "name":" num_sat", "type": "int", "name": "voltaje","type": "double", "name": "inicio", "type": "int" } ], "service": "xxxxx", "service_path": "/xxxxx" }
測定値を送信するデバイスからの POST はどのようになりますか?
ありがとう。
編集:
コマンドラインから POST して、次のようにテストしようとしました。
curl -X POST xxxxxxxxxxxx:8080/iot/d?i=0010 \ -i \ -H "Content-Type: application/text" \ -H "Fiware-Service: xxxxxx" \ -H "Fiware-ServicePath: /xxxxxx " \ -d "s_temp|25"
そして、ここに応答があります:
HTTP/1.1 415 接続: 閉じる Content-Length: 88 {"reason": "サポートされていないメディア タイプ (application/xml および application/json のみをサポート)"}
問題は... iot-agent-base と iot-agent-ul をインストールした場合、テキストを POST できないのはなぜですか? いくつかの構成を見逃しましたか?
編集:
この URL に値を送信できます。
http://xxxxxxxx:8080/iot/xx?k=xxxxxxx&i=xxxxxxxx#fecha|1#coord_x|1#coord_y|1#coderr|1#s_temp|1#s_hum|1#s_temp|1#num_sat|1#voltaje|1#inicio|1
そして、これが応答です
DEBUG - Accept: */*
DEBUG - End filters status 200
DEBUG - Proccessing in handle /iot
DEBUG - iota::AdminService::error_response 0
DEBUG - finish connection 2
DEBUG - Get statistics /iot/ngsi Counters 0
INFO - Agent Activity {"statistics":[{"resource":"/iot/ngsi","data":[]}]}
しかし、オリオンは何も得られません
編集:
これはバージョンの問題でした。現在、最新バージョンの iot-agent が UltraLight モジュールと "protocol":"PDI-IoTA-UltraLight" のデバイスと共にインストールされており、プロトコル自体が機能しています。
しかし、デバイスから対策を投稿するための正しい URL がわかりません。何か助けはありますか?