AmazonEchoからUbuntuのコマンドを実行する(node-red-contrib-amazon-echo)

ALL
スポンサーリンク

AmazonEcho から Ubuntu のコマンドを実行する方法です。
アレクサ、に続けて「○○オン」や「○○オフ」で、Ubuntu上のコマンドを実行できます。

Raspberry Pi や Windows上のコマンドを実行する場合は、次の記事を参照してください。

AmazonEchoからRaspberryPiのコマンドを実行する(node-red-contrib-amazon-echo): パソコン鳥のブログ
AmazonEchoからWindowsマシンのコマンドを実行する(node-red-contrib-amazon-echo): パソコン鳥のブログ

本記事では、上の RaspberryPi での設定をベースに、Ubuntu での設定方法を説明します。

AmazonEchoからRaspberryPiのコマンドを実行する(node-red-contrib-amazon-echo) の「準備」の「Raspberry Piでの設定」が、Ubuntu では次のようにします。

nodejs をインストールします。

sudo apt install nodejs

Node-REDをインストールします。

bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)

次の表示が出たら y を入力します。

Are you really sure you want to install as root ? (y/N) ? y

次の表示が出たら N を入力します。

Would you like to install the Pi-specific nodes ? [y/N] ? N

Ubuntu起動時に Node-RED が自動実行されるようにします。
ここでは一般ユーザで起動するようにします。一般ユーザでの起動でも問題ありません。

crontab(crontab -e を実行) で次を追加します。

@reboot node-red-start

続けて、ポートフォワーディングの設定を行います。
お使いのシステムのファイアウォール iptables / ufw によって、以下の iptablesの場合/ufwの場合 の作業をします。
作業は sudo または rootで行ってください。
以下の –to-port 8111 で Ubuntu で使用していないポート番号を指定します。
この例の通り、8111 で通常は問題ありません。

iptablesの場合
次のコマンドを実行します。

iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT
iptables -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8111

この設定は再起動すると消えてしまうので、設定が消えないようにします。
次のコマンドを実行してください。

apt-get install iptables-persistent

現在のIpv4ルールを保存しますか?
現在のIpv6ルールを保存しますか?
と出た場合は、はい を選択します。

続けて次のコマンドを実行してください。

/sbin/iptables-save > /etc/iptables/rules.v4

後は、AmazonEchoからRaspberryPiのコマンドを実行する(node-red-contrib-amazon-echo) の「Node-REDでの設定」以降の作業を行ってください。
なお、Raspberry Pi となっているところは、適宜 Ubuntu と読み替えてください。

ufwの場合
次のコマンドを実行します。

ufw allow 80

/etc/ufw/before.rules の *nat ~ COMMIT の間に記述を追加します。

*nat
:
-A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8111
:
COMMIT

設定を反映します。

ufw reload

後は、AmazonEchoからRaspberryPiのコマンドを実行する(node-red-contrib-amazon-echo) の「Node-REDでの設定」以降の作業を行ってください。
なお、Raspberry Pi となっているところは、適宜 Ubuntu と読み替えてください。

コメント