Goの勉強もかねて、おんどとり WebStorage APIのクライアントを作成しました。
取得した情報を使って、死活監視や前日の最高, 最低気温の算出、警報監視を自分で作成可能です。
使い方
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | package main import ( "context" "fmt" "github.com/k28/go-ondotori" ) func main() { client, err := ondotori.New( "API Token here" , "rbxx1234" , "password" ) if err != nil { fmt.Println(err.Error()) return } cp := ondotori.GetCurrentParam{ RemoteSerial: [] string {}, BaseSerial: [] string {}, } res, err := client.GetCurrent(cp, context.TODO()) if err != nil { fmt.Println(err.Error()) return } fmt.Println( "response " , res.DeviceList) } |
サポートしている機能
- 現在値の取得
- 直近のデータの取得(TR-7wb/nw/wf)
- 指定期間・件数によるデータの取得(TR-7wb/nw/wf)
今後サポート予定の機能
今後サポート予定の機能は以下になります。
(執筆当時の情報なので、もしかしたらすでに対応しているかも...?)
- RTR500BWシリーズのデータ取得
- エラーハンドリング
- RateLimitの取得
Rubyでも同じようなクライアント作成したのですが、Rubyの場合はコマンドでプロジェクトのテンプレートを作成してくれたので、作成が用意でした。
GOの場合は自分で1から作成する必要があるので、始めるための初期段階のコストが高い気がしました。
GOはjsonをパースするのにKeyを列挙した構造体を定義する必要があるので、ライブラリ化することでその手間が省ければ幸いです。
0 件のコメント :
コメントを投稿