Node-redでスマートハウス-LG製テレビを操作してみる(3/5)

スマートホーム
スポンサーリンク
このエントリーをはてなブックマークに追加

はじめに

我が家にも有機ELテレビがやってきました。国産メーカのテレビも、有機ELパネルはほとんどがLG製のパネルを利用しているらしく「同じパネルなら安い方がいいんじゃない?」という事でOLED 55C7Pを購入!

このLG製のテレビ、内部はwebOSというOSで動作していてWeb APIが公開されているんです。そこで、今回はLG製のテレビをNode-redから操作してみたいと思います。

やりたいこと

最終的にやりたいのは、以下のようにAmazon Alexaとスマホを使って、テレビのチャンネルやYoutube動画を切り替える事です。
 1-1.(子供が)Amazon Alexaに「テレビをプリキュアにして」という
 1-2.(大人が)スマホから指定のYoutube動画のボタンを押す
 2.テレビのアプリをYoutubeアプリに切り替え
 3.プリキュアの動画を再生

ちなみに、テレビをNode-redから操作するためには、テレビがLANに繋がっていることが前提となりますので、有線かWifiでLANに接続しておきましょう。

実現に向けた連載

やりたいことを実現するために、以下のように少しずつに記事を書いていきます(予定)。

 1回目:Node-redからテレビの電源を消す 
 2回目:Node-redからテレビのチャンネルを変える
 3回目:Node-redからYoutubeアプリを起動して動画を再生する ←この記事
 4回目:スマホからテレビを操作できるようにする
 5回目:Alexaから声でテレビを操作できるようにする
 付録:Wake-On-LANでテレビの電源をつける
 付録:Gravioで子供用プリキュアボタン

3回目:Node-redからYoutubeアプリを起動して動画を再生する

第2回目では、チャンネルリストを取得し、Node-redからテレビのチャンネルを変える事をやりました。第3回目では、テレビをYoutubeアプリに切り替え、指定の動画を再生することをやってみたいと思います。

Video IDの確認

Node-redでYoutube動画を再生するためには、VideoIDを指定して動画を再生する必要があります。まずはVideoIDを調査します。

①ViodeIDの確認

VideoIDの確認は簡単です。WebブラウザからYoutubeを開いて、テレビで再生したい動画を検索・選択して再生してください。この時、ブラウザのURL部分に記載されている「v=」のあとに指定されているのがVideoIDです。

Youtubeアプリで動画を見る

次に、調査したVideoIDを使って、Youtube動画を再生するノードを作成していきます。

①youtubeノードの追加

lgtvのパレットから、youtubeノードをドラッグして追加します。

②youtubeノードの設定

追加したyoutubeノードをダブルクリックして設定画面を開き、TV欄に第1回目で設定したテレビのIPアドレスのものを選択します。最後に「完了」ボタンを押します。

③templateノードの追加

パレットからtemplateノードをドラッグして追加します。

④templateノードの設定

追加したtemplateノードをダブルクリックして設定画面を開き、以下のように設定して「完了」ボタンを押します。
 ・名前:消防車 ※チャンネル名:なんでもよい
 ・設定先:payload
 ・形式:平文
 ・構文:なし
 ・テンプレート:Jkgh_P2uz-g ※上で調べたVideoID

⑤injectノードの追加とノードの接続

最後にinjectノードを追加し、injectノード→templateノード→youtubeノードの順に接続します。

⑥ノードのデプロイ

右上の「デプロイ」ボタンを押して、追加したノードをデプロイしましょう。

テスト

それでは、設定したノードを使ってテレビで動画を再生してみましょう。テレビの電源をつけて、Youtube以外に変更しておきましょう。

①トリガのボタンを押す

injectノードの左に付いているボタンを押しましょう!

②テレビがパッツ!

テレビYoutubeに切り替わり、指定の動画が再生されましたか?これで完了です。
他の動画を再生するには、同じようにtemplateノードを作成してVideoIDを指定してください。

おわりに

今回はNode-redからLG製テレビのアプリをYoutubeアプリに切り替え、動画を再生する事をやってみました。次回は、スマホからテレビを操作する簡易WebアプリをNode-redで作成してみることをやって見ようと思います。

連載記事
 1回目:Node-redからテレビの電源を消す 
 2回目:Node-redからテレビのチャンネルを変える
 3回目:Node-redからYoutubeアプリを起動して動画を再生する
 4回目:スマホからテレビを操作できるようにする ←次はこれ
 5回目:Alexaから声でテレビを操作できるようにする
 付録:Wake-On-LANでテレビの電源をつける
 付録:Gravioで子供用プリキュアボタン

関連文書

この記事は以下を参考にさせていただいています。ありがとうございます。

WebOS TV Standard Web API
node-red-contrib-lgtv
npm lgtv2
GoogleHomeからテレビ(LG製WebOS)をコントロールしてみる

記事が参考になったら、ブログランキングに協力(クリック)して貰えると嬉しいです。
スポンサーリンク
naka-kazz

昼間はIT企業に勤めてますが、プライベートでは「育児×家事×IoT」をテーマに家のスマートホーム化に取り組んでいます。Androidアプリも作っているので使って下さい。質問・コメントは、↓のコメント蘭でもFacebookメッセンジャーでもどちらでも大丈夫です。
E-mail:naka.kazz.d@gmail.com

naka-kazzをフォローする
スマートホーム 開発者向け
naka-kazzをフォローする
育児×家事×IoT

コメント

タイトルとURLをコピーしました