スタッフブログ
OGP.png

スマートスピーカーのアプリを自分で開発すると超楽しいぞ!!

megaya
ライター: megaya
本職はWebエンジニアです。家出をしてママチャリ日本一周したあとに気づいたらライター活動もやるようになっていました。

Alexa(アレクサ)を買ったぞ!

声で指示して音楽が流せるぞ! ラジオが流せるぞ!!

テレビやエアコンがリモコンなしで操作できるぞ!!!!

section2_image
SwitchBotなどを利用するとスマートスピーカー対応でない家電も操作できる

うおおおお! スマートスピーカー最高!!!!!

使う必要がないのに「Alexa おはよう」「Alexa 今日もかわいいね」なんて話しかけてしまう。機械じゃない。家族だ!!!

……と、買ってから1カ月くらいは愛してやまなかったのだけれど、今や高級な目覚まし時計に成り下がってしまった。家族? 機械ですよ?

音楽やラジオを聴くのはパソコンで十分だし、家電はリモコンで操作したほうが手間が少ない。出かけたときに外からエアコンをつけられるという利点はあるが、フルリモートでほとんど家にいるため、あまり活用できていない。

section4_image
AlexaのスキルはWeb上で作成できる

そこで、だ!!

せっかく買ったスマートスピーカーをもっと活用するために、自分でAlexaのスキルを作ってみようと思った。( Alexaではアプリのことを「スキル」と呼ぶ)

開発のやり方さえ覚えてしまえば、発想次第でAlexaの活用方法が無限大に広がる。文鎮となってしまったAlexaをまた愛そうではないか。つまりこれは愛を取り戻すための記事でもある。

section6_image
Alexaスキル開発者向けの「Alexa Skill Blueprints」(https://blueprints.amazon.co.jp/

調べてみるとプログラミングする以外に、「Alexa Skill Blueprints」を利用すると簡単に作れることもわかった。Webでポチポチっと入力していけばいいだけなので、小学生でも作ることができる。これまじで便利なのでおすすめ。

さらに、Alexaには定型アクションという機能があり、「アラームが止まる」→「音量が下がる」→「天気予報を読む」のような感じで、パズルのように行動を組み立てることができる。

自作のスキルと定型アクションを組み合わせれば、たいていのものはだいたい作れそうだ。

ということで、今回は簡単にAlexa用のスキルをいくつかつくってみたので、それらを紹介していこうと思う。

  • 自分のツイートを読み上げる「黒歴史めざまし時計」
  • 自己肯定感をあげまくる「俺を褒めてくれ」
  • 音声でチャットに投稿できる「声メモ」
  • 最後のオマケ:この記事の担当編集にAlexaで気持ちを伝えてみた

自分のツイートを読み上げる「黒歴史めざまし時計」

僕は朝がとことん弱い。時計、スマホ、Alexaと3つの目覚ましを利用している。どうしても起きなければいけないときは、テレビのオンタイマーも使っている。たまにそれでも起きれないときがあるから、自分自身が怖くなる。

ということで「起きなければ恥ずかしい思いをする目覚まし」をつくることにした。大きい音ではなく心を動揺させて起床する作戦だ。

目覚ましに利用するのは、デジタルタトゥー量産機ことTwitterだ。過去のツイートは、大抵が恥ずかしさの塊だ。

おもしろくもないうえに嫌な気分にもならない0リツイート0いいねのツイートが山ほどある。例題として自分のツイートをのせたが、この記事に出すのも恥ずかしすぎるほどスベっている。Alexa 恥ずかしいときに入るための穴を掘ってくれ……。

そんな発想からつくったスキルが「黒歴史めざまし時計」だ。時間になったらAlexaが自分のツイートを垂流しで読みあげていく。

section15_image
実際に打ち込んだコードがこちら

雑なコードだけれど、こんな感じで簡単に実装できる。Alexa独自のコードは僕自身もあんまりよくわかっていないが、要はツイートを取得して、直近のものから遡って読み上げていくだけのシンプルなつくりだ。

このスキルを定型アクションで「朝8時になる」→「黒歴史めざまし時計を起動させる」という感じで組み合わせれば完成だ。

しかし、実際に使ってみてわかったが、3日目も経てば慣れてしまって起きられなくなる。「誰かにツイートを聞かれてしまう」という危機感がないので、恥ずかしさが足りない。一緒に誰かが住んでいたら、もっと効果が出たのかもしれない。

関係ないけれど、コードがたれていると、入院患者の写真にしか見えないな。

ということで、さらにパワーアップさせた黒歴史目覚まし時計のバージョン2として「起きることができなければ勝手に恥ずかしいツイートが投稿される」というアイデアも思いついたのだが、まだ怖くて使っていない。

ちなみに↑の画像に書いてある「ギターも弾いたことないのに漫画の影響で高校受験をやめようとしたことがあります」は実話だ。自分の生命を燃やしながら、この記事を書いている。

自己肯定感をあげまくる「俺を褒めてくれ」

Alexaにはデフォルトで褒めてくれる機能もあるのだが、「良い声ですね」「今日も素敵です」など、誰にでも当てはまることしか言ってくれない。

もちろんそれだけでも十分かもしれないが、やはりガチの褒め言葉をもらって自己肯定感をあげまくりたい。承認欲求という名の海に溺れたいのだ。

ということで、2つ目は極限に自分を褒めてくれる「俺を褒めてくれ」を作ることにした。

「機械にリアルな褒め言葉はムリじゃない?」と思うかもしれない。

しかし、そこはぬかりない。僕は普段から「褒められたことメモ」をつくっていて、過去のうれしかった発言をメモするようにしている。落ち込んだときに見るとどちゃくそにテンションあがる。今回はこの文章をAlexaにランダムで言ってもらおうと思う。

今回はプログラミングでつくるのではなく「Alexa Skill Blueprints」(https://blueprints.amazon.co.jp)を利用した。フォーム入力するだけで、スキルを作ることができるため、開発知識が一切必要ない。簡単にスキルを作ることができて超楽しい。

作ったスキルを1週間に1回くらいのペースでお昼に流すようにした。これで自動的に自己肯定感をアゲアゲにすることができる。

ああ、気持ちいい…! これだから褒められることはやめられねぇぜ…! もっと刺激の強い褒めをくれ…! ああ、もっと強い刺激のあるやつをくれぇ……!!!!

音声でチャットに投稿できる「声メモ」

最後はAlexaに話しかけた言葉をそのままチャットに投稿できるメモアプリだ。これはかなり実用的で重宝している。

僕の場合は自分の声をSlackに投稿しているが、APIさえ使用できればLINEでもChatworkでも使いやすいアプリでOKだ。

section34_image
実際に打ち込んだコードはこちら

ちょっとだけ技術的な話をすると、Alexaが発した言葉を取得するためにはインテント(※1)を設定する必要がある。{memo}とスロット(※2)を設定しておくと、handlerInput.requestEnvelope.request.intent.slots.memo.valueでAlexaに言った自分の言葉を取得できるようになる。

※1 Alexaスキルの機能、および実行するアクションのこと
※2 Alexaスキル内で用いる変数


最初にこれを作ったときは「スマホでメモしたほうが早いかな」と思っていた。しかし、使ってみると意外にもよかった。

アイディアや買い物した方がいいものなどは急に思いつくことがある。特に、寝ようとしているときにふと思いついたものをメモするときが楽だ。スマホだと、バックライトで目が冴えてしまうのが難点だったので、声だけでメモできるのは助かっている。

あとメモ帳に書くよりも、仕事で使うチャットツールに情報が集約されているほうが目にする確率が高い。このスキルは本当に作っておいてよかったし、まだまだ改良の余地がありそうだ。


最後のオマケ:この記事の担当編集にAlexaで気持ちを伝えてみた

スキル開発は思ったよりも簡単だったし、なによりもつくってすぐにAlexaがしゃべるという感動があっておもしろかった。

スキルを覚えさせていくのは、スマートスピーカーを使っているという状態から、スマートスピーカーを育てているような感覚になってくる。再びAlexaを愛せる日がまたやってきたのだ。

今回つくったスキルもいずれ使わなくなって、再びAlexaが文鎮化する可能性もある。ただし、「Alexaのスキルを自分でつくれる」という選択肢ができたのは大きい。使い道が無限大に広がった。アイディア次第でなんでもできる。

定型アクションやAlexa Skill Blueprintsは開発知識なんてまったく必要ないので、使ったことのない人は一度試してみてほしい。

今この記事を書いている途中なのだけれど、どうしても担当編集に伝えなければならないことがある。担当編集もAlexaを持っているため、せっかくならばスキルを作って僕の言葉を伝えたいと思う。

そのスキルを使ってもらって、担当編集からの感想をもらって終わりにしたいと思う。

(担当編集注)megayaさんから届いたのは、「すいません!本当にすいません!原稿が遅れています!本当に申し訳ありません!!!」と原稿の提出が遅れたことを詫びるメッセージでした。直接言ってくれ!

(編集:ノオト


おすすめ記事


188 件のコメント
139 - 188 / 188
れなーん
ルーキー
最近、色んなソフトでプログラムのやり方が簡単になってきてますね!言語かく→選択する、のような。これならプログラム音痴の自分でもできそうかなー
ドドンパ
レギュラー
難しい
yac_
yac_さん
エース
(・∀・)イイ!!
vezel
vezelさん
ルーキー
アレクサいいですね
4ne
4neさん
レギュラー
デイリーポータルZでmegayaさんの記事が面白かったのを覚えています。
mineoのスタッフブログにも寄稿されていたんですね~!
次の記事も楽しみにしています!
貝殻タカヤ
Gマスター
   なるほど。
ありがとうございました。

   (ノζ _ ヘ ξ)
けんた0248
ルーキー
やってみたい
アキクボ
ルーキー
いろんな可能性が見えました
なんなんな
エース
目から鱗ですね!
私も研究してみます🧪😊
がびごじ
ルーキー
👏👏👏
ビャクセツ
レギュラー
( ˙-˙ )
まー!!
レギュラー
楽しそう。私もやってみます。
めんちゃんこ
レギュラー
難易度高めだな😅
リオンンンンン
ルーキー
さすが、アレクサ
Ryomaboo
Ryomabooさん
ルーキー
アレクサ欲しくなりました
nezutaro
nezutaroさん
レギュラー
参考にします。
せいるる
レギュラー
なるへそ
コッペリア
レギュラー
テレワーク中に勝手にしゃべり出しそうで恐い・・・
★ひか☆
レギュラー
スピーカー大事ですよね!
かときち_9
レギュラー
一人暮らしには、いいかも!
miho-chang
ルーキー
楽しそう
くろしかん2018RM
レギュラー
最近本体とスキルだけで、できることが多くなり、なかなか使えるようになった気がしています。
プログラミングはやってみたいと思うのですが、文字の羅列が途中で受け付けなくなり、めまいを起こしそうです...
Monyhorse
Monyhorseさん
ルーキー
アレクサいいですね〜
もちあい
ルーキー
いろいろできそう
つとむZ
エース
おもろー
morima34
morima34さん
レギュラー
ガチすごすぎる
けんたすす
ルーキー
ありがとう
ukgddds2
ukgddds2さん
ルーキー
これはいい
ukgase
ukgaseさん
ルーキー
ふむふむ
REEEEEEI
REEEEEEIさん
ルーキー
なるほど!すごい✨
よっしーテネレ
レギュラー
そんなこと出来るんだぁ 凄い!
ひとろん
ルーキー
気軽にはできそうに無いですが時間が出来たら挑戦してみたいな。。良い記事だと思います。継続や追加記事希望!
杏鹿
杏鹿さん
Gマスター
何時から○○会議ですとか読み上げてくれると私設秘書がいる感覚?
a1111
a1111さん
レギュラー
あかさ
闇の底
マスター
凄いしか言えない…
sousuke815
レギュラー
すごいね。
ちょぽ
ちょぽさん
ルーキー
いいね
ムラリョウ
レギュラー
私にはできなさそう
ばるざっく
マスター
自分にはハードルが高い😞出来る方が羨ましい☺️
mezn1217
mezn1217さん
ルーキー
凄いけど使いこなすの難しそう。。。
夏野菜とまと
レギュラー
すごいですね
Uugigatank
レギュラー
そんなことができるのかあ、と思ってしまいました。
new回線
new回線さん
レギュラー
スマートスピーカーはいまひとつ興味がない
家に帰ってまで機械に声をかける元気もない時だってあります。
namename
namenameさん
レギュラー
常に会話を録音クラウドに保存されているのでしょうか?
norichang02
ビギナー
声メモ便利そう!
コメントするには、ログインまたはメンバー登録(無料)が必要です。