Serverを作りました。作り方は以下の記事で公開しています。PowerAutomateのコネクタとしても利用できます。色んなコマンドが用意されていて面白いので、実際に試してみました。公開されている50エンドポイントは全部網羅しています!なので、バッテリーのチャージ状況から、シートヒーター、近くの充電サイトまで取れる!(ダミーデータだけど!)さらにアラートでフラッシュライトしたり、ドアのロック・アンロック、最高時速制限の設定から、サンルーフの開け締め、空調システムで温度を上げたり、メディアコントロール、ソフトウェア・アップデートまで、APIでできる!(Mockだけど!おそらく以下のアプリで実施できることは、ほとんど実施できると思います。ルーフを開閉する車両をガレージまたは狭い駐車スペースから呼び出す(オートパイロット搭載車用どこにいても車両のソフトウェアをアップデートできますパワーウォールへのソーラーからの充電量、家庭でのエネルギー使用量、系統への売電量をモニターするソーラー発電量とバッテリー消費データをダウンロードカスタムコネクタの作り方それでは実際に作り方・使い方を見ていきましょう。v2.0」のファイルは以下のURLで公開しています。接続する場合の手順は後述します。カスタムコネクタの作成カスタムコネクタの作成はすごく簡単です。ファイルをインポートします」を選択します。Specファイルをインポートします。全般は基本的に変更不要です。アイコンはどこからか引っ張ってくると映えます。接続する場合は不要です。アクション定義も基本的にほぼそのまま動きます。そのままコネクタの作成をクリックすればOKです。あとは適当に接続を作成して、GET系でテストを実行するとデータが取得できます。車両IDが求められますが、MockAPIは値が存在することしか確認しないので適当な文字列でOKです。カスタムコネクタを使ってみるそれでは作成したカスタムコネクタをPowerAppsのキャンパスアプリで使ってみます。キャンパスアプリを作成したら、データソースとして先程作成したカスタムコネクタを選択します。あとは、任意のオブジェクトにコネクタから取得したデータを紐付けていくだけです。バッテリーレベルを取得したい場合は、以下のようなリクエストを行います。TeslaAPI.getapi1vehiclesiddatarequestchargestate("id").response.battery_levelそんな機能を駆使して、以下のようにバッテリーレベルをそれっぽく表示してみました。接続する場合の手順について解説します。アプリにも触っていませんが、まあたぶん動くでしょう。APIに接続するためにいくつか制御が抜けているので、その点を解説しておきます。ServerのURLになっているので、これを「https://owner-api.teslamotors.com/」に変更します。接続するためのAccessTokenを取得します。APIでは利用することができません。アクションとして定義されているTokenエンドポイントを使って、マニュアルでログイン処理を行い、AccessTokenを取得する必要があります。取得することもできるのですが、動的にAuthorizationヘッダーを指定することができないため、「AccessToken取得」→「カスタムコネクタの接続作成」みたいなことを繰り返す必要があり、あまりUX的によろしくありません。サンプルデータを見る限り、AccessTokenのExpireは45日(3888000秒)っぽいので、ドキュメント上から取得して、PowerAppsで使う場合は、現状Expireしたら切り替えるくらいが良さげかもです。最後に取得したAccessTokenを指定する認証部分を定義します。カスタムコネクタの認証タイプから「APIキー」を選択し、パラメータ名をAuthorization:パラメータの場所をヘッダーにします。」と入力するだけです。おわりにこれで本物のテスラが手に入っても問題なし!とは言いつつも、やっぱりちゃんと本物のテスラにつながって動くのかどうかは不安なので、もしテスラをお持ちで、実際に試したいという方が居ましたらお気軽に連絡ください。(翻訳)Twitter@sugimomotoさんのツイートはてなブログをはじめよう!sugimomotoさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。