Luaスクリプト活用によるルーター拡張機能の実装 1

(掲載日:2020年10月30日)

#Luaスクリプト #ルーター

皆様はヤマハルーター上で、「独自に作成したプログラム」を実行可能であることをご存知でしょうか?

ヤマハルーターは内部ファイルシステム内に保存したLuaスクリプト(※)を実行可能です。Luaスクリプト内から活用できる「ヤマハルーター専用 API」 も準備されているため、これらを活用することでルーター標準機能に無い様々な機能を実現したり、外部機器やクラウドアプリケーションと連携させることができます。

※ Luaスクリプトは移植性が高く、高速な実行速度を特徴とするスクリプト言語です。ゲーム開発や画像処理など、主に組込言語として活用されています。Luaスクリプトの詳細はこちらをご参照ください (Luaスクリプト機能)。

ヤマハルーター専用APIは以下の4つから構成されています。

基本ライブラリ:ルーターコマンドの実行、メールの送信など基本的な操作が可能です。
ハードウェアライブラリ:ブザーやLED等ハードウェアの制御が可能です。
HTTPライブラリ:HTTPクライアントとしてWebAPIを介してクラウド等と通信することが可能です。
ソケット通信ライブラリ:ソケットを使用して外部機器等と通信することが可能です。

ヤマハルーター専用APIの詳細はこちらをご参照ください(http://www.rtpro.yamaha.co.jp/RT/docs/lua/rt_api.html)。

  • 基本ライブラリにより特定のログを検出したら、ハードウェアライブラリによりブザーを鳴らす
  • ソケット通信ライブラリにより外部機器から取得した情報を、HTTPライブラリによりクラウド上のデータベースに転送する

など、様々なアプリケーションを開発することが可能です。
設定例ページ内ではいくつかのサンプルプログラムをご紹介しております (設定例>Luaスクリプト)。
導入手順マニュアルも公開しておりますので、簡単に利用し始めることができます。

Luaスクリプトの活用例として、2つご紹介させていただきます。

①Luaによるインターネットブレイクアウトの実現

クラウドアプリケーションの普及により、特定のアプリケーションを検出して直接インターネットに振り分ける「インターネットブレイクアウト」の需要が高まっています。Luaを使えばSD-WANソリューションを導入することなくブレイクアウトの実現が可能です。

②Luaによるネットワークカメラ、クラウドアプリケーション連携

Luaスクリプトを活用することで、ルーター配下の外部機器とクラウドアプリケーションを連携させることが可能です。2019年のIoT/M2M展では

  • ネットワークカメラ
  • 顔認識クラウドサービス
  • ヤマハ PoEスイッチ
の3つを連携させて「顔認証により無線アクセスポイントの電源ON/OFFを制御するデモ」を展示させていただきました。このデモでは無線LANアクセスポイントのONをしていますが、インターネット接続やVPN接続のON/OFFをすることも可能です。

本デモのLuaスクリプトは、以下ページ中段のリンクからダウンロードしてご利用いただけます。
Luaスクリプトのサンプル

HTTPライブラリ、ソケット通信ライブラリの2つを活用することで、顔認証に限らずさまざまな端末やクラウドと連携し、ネットワークの動作変更や、機器の制御、管理者への通知などを実行することができます。クラウドサーバーへのデータ転送や、回転灯の点灯、LINEによる通知などIoT用途にもご活用可能な機能が簡単に実現できます。

「NWを自動制御してみたい」や「あのクラウドサービスと連携させたい」といったLuaスクリプト活用についてのご相談がありましたら、お気軽にご相談ください。

メール

ご相談・お問い合わせ