やっと使い始めたのに、Sigfox経営難で破産しているね。。段階的にメッセージの保管期間も短縮される予定だそうです
https://www.kccs.co.jp/sigfox/blog/technical/2022/0225/
う〜っむ、何かやろうとするといつもこれだな、旬な時すぐ飛びついてやらないからだね。まぁ、そういう技能がないからだという話もあるけど。スイッチサイエンスにはたくさん在庫があるようなので、購入して登録、1年間の無料期間ということになっている。
mbedから接続してAT$SF=なんかpayloadを送信。。sigfoxクラウドで見ることはできた。
で、コレをどうすんだということだが、とりあえず、macに入っているphpとApacheで、urlを取得してみた。
<html>
<head>
<title>PHP TEST</title>
</head>
<body>
<?php
date_default_timezone_set('Asia/Tokyo');
$data = file_get_contents('https://username:password@api.sigfox.com/v2/devices/deviceid/messages');
$data_json=json_decode($data,true);
var_dump($data_json);
echo "<br/>";
$payload = $data_json["data"][0]["data"];
$timedate = $data_json["data"][0]["time"];
echo "<table border=\"1px\">";
echo "<tr>";
echo "<td>payload</td><td>".$payload."</td>";
echo "</tr>";
echo "<tr>";
echo "<td>time</td><td>".date("Y-m-d H:i:s",$timedate/1000)."</td>";
echo "</tr>";
echo "</table>";
?>
</body>
</html>
sigfoxのAPIでアクセスする時、Basic認証を突破しないといけないため、urlにusername:passwordを書いてる。usernameとpasswordは、sigfoxのデバイスのGroupタブから作れる。deviceidは自分の登録したデバイスID(製品についてるSIGFOX ID)
phpにjsonをデコードしてくれる関数があるのでそれを使ってpayloadを取り出した。一応うまく表示されている
timestampはUnixタイムスタンプだが1000倍されているようです、msオーダーということですが。
さて、このphpの処理をmbedでやらせたいと思っています。で、現在mbedで接続してるデバイス側をMSP430と電池で駆動できるようにして1日数回送信するみたいな仕組みにしたら面白いかな、なんて思ったり、あと、自分的には、これはLoRaをやるための1ステップなので、ある程度できたら、そっちへ移行したいなと思ってる。
ところで、このjson、昔xmlって言ってたやつ?
FifoxでAPIのURLを開くとタグ表示してくれる。
{
"data":[
{
"device":
{"id":"deviceID"},
"time":1652101795000,
"data":"412aeec1",
"rolloverCounter":0,
"seqNumber":185,
"rinfos":[],
"satInfos":[],
"nbFrames":3,
"operator":"SIGFOX_Japan_KCCS",
"country":"JPN",
"computedLocation":[],
"lqi":2
},
], ・・・
"paging":
{
"next":"https://api.sigfox.com/v2/devices/deviceID/messages?limit=100&before=1652024692000"
}
}
Chromeでも可能
Chromeでも、拡張機能をインストールすればできます。「設定」→「拡張機能」でストアでjson検索
コメントを追加