おんどとりWebStorageのWebAPIを使うとおんどとり(TR-7シリーズやRTR500シリーズ)がサーバに送信しているデータを取得する事ができます。
WebAPIを実行するのは似たような処理になるので、Rubyでgemを作成しました。
## インストール方法
```
$ gem install ondotori-ruby-client
```
## 使い方
```ruby
`gutter:true;
require "ondotori-ruby-client"
params = { "api-key" => "xxxxxxxxxx", "login-id" => "rbac0000", "login-pass" => "pass"}
client = Ondotori::WebAPI::Client.new(params)
begin
response = client.current()
puts "#{response}"
rescue Ondotori::WebAPI::Api::Errors::ResponseError => e
puts "http access error #{e.message}"
rescue Ondotori::WebAPI::Api::Errors::Error => e
puts e.message, e.code
end
```
事前に[おんどとりWebStorage](https://ondotori.webstorage.jp/account/create-apikey.php)からAPIキーを取得してください。
それぞれ以下のメソッドで値を取得できます。
| メソッド | 引数 | 説明 |
|--------------------|--------------------------------------------------|--------------------------------------------------|
| current | 無し | 現在値の取得 |
| latest_data | 対象機器のシリアル番号 | TR-7wb/nw/wf, TR4 の最新300件を取得する |
| data | 対象機器のシリアル番号, データの範囲指定 | TR-7wb/nw/wf, TR4 のデータを範囲指定して取得する |
| latest_data_rtr500 | 親機のシリアル, 子機のシリアル | RTR500シリーズの最新300件を取得する |
| data_rtr500 | 親機のシリアル, 子機のシリアル, データの範囲指定 | RTR500シリーズのデータを範囲指定して取得する |
### 範囲を指定してRTR500のデータを取得する
```ruby
`gutter:true;
from = Time.now - (3600 * 24)
to = Time.now
limit = 16000
data_range = Ondotori::WebAPI::Api::DataRange.new(from: from, to: to, limit: 10)
response = client.data_rtr500(base: "BaseUnit Serial", remote: "Device Serial", data_range: data_range)
```
## ソースコード
- [ondotori-ruby-client](https://github.com/k28/ondotori-ruby-client)
- [おんどとり WebStorage API](https://ondotori.webstorage.jp/docs/api/)
0 件のコメント :
コメントを投稿