AlexaスキルとMySQLデータベースの接続方法はあるか?

AlexaスキルとMySQLデータベースの接続方法はあるか?

皆さん、どうも。Smartio開発部研究員のシバトウです。前回はAlexaスキルから、Amazonのサービスの1つであるDynamoDB(データベース)を操作することに成功したところでしたね。

実際にどのような操作ができるのかは、以下の記事を参考にしてみてください。今日はまた変わったことを試すための準備をしていきましょう!

さて、普段皆さんがレンタルサーバーで目にすることの多いのは、MySQLで管理されているデータベースですね!ワードプレスを使ったサイトを運営しているのであれば、もうMySQLで間違いありません。

今回はそのMySQLとAlexaスキルを連携しデータベースが操作できるか、その可能性について調査しました。さっそく、調査結果を紹介していきますね!

MySQLって何者?

MySQLとは?

そもそもMySQLというのは、データベースを管理するためのシステムのこと。MySQLを通じてデータベースに蓄積されているデータを操作すれば、利用目的に合わせてデータを検索(加工)することができます。

ワードプレスもこのMySQLを利用してデータを操作しているので、記事の編集や追加などができているというわけ!

AlexaスキルとMySQLの接続方法って?

AlexaスキルとMySQLの接続方法って?

MySQLについて少し理解が深まったところで、本題に移りましょう!

通常Amazon Echoで受け取ったユーザーの音声を処理するために、AWS Lambdaのサービスを利用することが多いですね。でもこれは、Alexaスキルの開発にAWS(Amazon Web Services)を利用した環境が推奨されているためでもあります。

MySQLのデータベースはAWSサービス外のサーバーに設置されているので、接続方法を調べてみました!

1.AWS Lambdaから操作を試みる

AWS LambdaからとMySQLを操作する

AWS Lambdaから外部のMySQLにアクセスできれば、これが手っ取り早くデータが入手できる最短ルートになります。ただしAWS LambdaからMySQLを操作するためには、利用している言語(Node.jsあるいはPython)に合わせた外部ライブラリ(拡張機能)の導入が必要です。

この点がかなりの手間になりそうですが、その手間を惜しまなければLambda内でSQL文が実行できるようになります。これができれば、Lambdaから目的のデータベースのデータを操作することができるようになるというわけ。

ただ、この方法。MySQLを置いているレンタルサーバーによっては、外部からのアクセス制限が厳しくなっている場合があります。そもそも外部からアクセスできない可能性もあるため、レンタルサーバーのデータベースが外部アクセスを許可しているかを確認しましょう!

2.MySQLが動作するサーバーから操作

エンドポイントの変更で、データベースのあるサーバーから直接MySQLを操作する

Alexaスキル開発の推奨環境こそAWS Lambdaなのですが、そこにこだわらなければ別の方法も考えられます。その方法とは、MySQLが動作するサーバーで直接データを扱うこと!

開発者コンソール内の設定には、「エンドポイント」という項目があります。エンドポイントでは、Alexaがユーザー音声をテキスト化したものをどこで処理するかを決めることができるんですね。

つまりエンドポイントがMySQLが動作しているサーバーであれば、このテキストを含むデータがそのサーバーにJSON形式で送られてきます。その情報をもとに必要なデータを操作・取得したら、あとはAlexaに応答として返すだけです!

MySQLと接続できる可能性

AlexaスキルからMySQLへ接続方法を2つ紹介しました。これらが実際に動けば、AlexaスキルからMySQLを利用してデータベースを操作できるようになります。もし既存のサービスがMySQLで構成されているのであれば、Alexaスキル化することも容易になったといえるでしょう!

しかし、今回の記事の時点では実際に接続するところまではできませんでした…。今後も研究は継続していくので、成果が出たときにはあらためて記事を公開していきますね!

特集コンテンツ
売れ筋スマートガジェットランキング

smartioでみんなが買っているスマートホームガジェットをカテゴリー毎にランキング形式で紹介しています。

  • スマートリモコン部門
    SwitchBot Hub
    SwitchBot Hub Mini¥3,980
    いまの家電そのままでスマートスピーカーと連携して音声だけで操作ができる定番ガジェット
    Amazonで見る
    商品の口コミを見る
  • スマートプラグ部門
    Meross
    Merossスマートタップ¥3,184
    コンセント+USBポートが4つ!このスマートプラグだけで色んな家電をスマート化できる
    Amazonで見る
    商品の口コミを見る
  • スマートロック部門
    QrioLock
    Qrio Lock¥25,300
    玄関に取り付けるだけでスマホを持ってるだけでオートロック化、遠隔で解施錠が可能になる
    Amazonで見る
    商品の口コミを見る

特集コンテンツ
smartioが選ぶ買って正解のスピーカー

数あるスマートスピーカーの中から初心者向けのエントリーモデル、こだわりたい人向けのハイエンドモデルなど価格帯などからも買って間違いないスピーカーを紹介。

Amazon Echo Dot
初めての人向けのエントリーモデル部門
Amazon Echo Dot(3rd)¥5,980
Alexa搭載のスマートスピーカー。Echoシリーズの中でも最安値のモデルだが、基本的なことはすべてできるコスパ抜群の商品。
Amazonで見る
口コミを見る

注目今1番オススメする記事