エネルギーモニター Cloud Connectの使い方③Web APIの利用方法その2
まず、SQLiteのdllを入手します。
System.Data.SQLite: Downloads Page
これに加えて、VC++再頒布可能パッケージもインストールしましょう。
https://support.microsoft.com/ja-jp/help/2977003/the-latest-supported-visual-c-downloads
以下は必要なファイルを配置した例です。
次に、タスクスケジューラで定期実行する、バッチファイルを用意します。上のツリーのC:¥TOOLS¥OWL¥owl_SQLite.batがそれになります。(最後にソース記載)
処理の流れとしては、
まず測定データが格納されているbe.dbをツールが置いてあるところにコピーします。
次に、PowerShellのアプリ(C:¥TOOLS¥OWL¥owl_SQLite.ps1)を動かします。
PowerShellのアプリのソースは、最後に記載してあります。
まず、C:¥TOOLS¥owl_setting.iniを読み込み、設定値を取り込みます。
このiniファイルにログインID(メールアドレス)とAPI Keyも記入してあります。
[URL]
https://****************/api/getdata
[Tool Path]
C:\tools\OWL
[Database Path]
C:\tools\OWL
[Bit]
32
[email]
***********@gmail.com
[apikey]*************************
[URL]
[Tool Path]
ツールが置いてあるパス
[Database Path]
コピーしたbe.dbが置いてあるパス
[Bit]
例では32ビットOSで動かしているので、32と設定してあります。これはSQLiteのランタイムライブラリでどのバージョンを動かすかを決めるのに利用しています。(例えば32ビット版では、C:¥TOOLS¥OWL¥32¥〜)
[email]
Webアプリケーションでログインする際のユーザID
[apikey]
Web APIを利用するためのAPI Key(手順②で取得しました)
次に、C:¥TOOLS¥owl.iniというファイルを開いています。ここでは、データを取得開始する測定日時を設定しています。
例えば、2017年1月24日6時28分からのデータを取得する場合は、
2017
01
24
06
28
のように記入します。
年
月
日
時
分
と記入しています。なお、一桁の場合は「01」のように頭に0を付けます。
このiniファイルは処理の一番最後に、実行日時で更新されるようになっています。
従って、次回からは手入力は不要です。また、手入力で再度さかのぼって実行させることも可能です。
ここまでできたら、次はタスクスケジューラにbatファイルを登録し、定期的に実行するように設定します。
または、最初はbatを手動で(ダブルクリックで)実行してみてもよいでしょう。
エラーなく表示されてPOSTデータ内容がどんどん表示されていれば、多分正常に表示されているでしょう。
なお、ここではいわゆるオレオレ証明書にも対応できるように、Invoke-WebRequestの設定をC#の記述で追加しています。(41行目add-type〜で始まるところ)
gist0c03e387b1017c6e7ba3fde0799bb201
Windows PowerShell実践システム管理ガイド 第3版 (TechNet ITプロシリーズ)
- 作者: 横田秀之,河野憲義
- 出版社/メーカー: 日経BP社
- 発売日: 2017/10/20
- メディア: 単行本
- この商品を含むブログを見る
【改訂新版】 Windows PowerShell ポケットリファレンス
- 作者: 牟田口大介
- 出版社/メーカー: 技術評論社
- 発売日: 2013/02/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る