格が違う人間になろう(GoogleAssistantで遊ぼう)


#メニュー
* 言い訳
* なにするの？
* なんで？
* マストドンについて少し
* GoogleAssistantを使い、遊んでみる
* 実践！
* まとめ的なもの

# 言い訳
最初から言い訳なんてしていいわけ！？

A.*ダメです*

でもします。

初投稿、クッソ雑で大変見辛い記事になっております。ご了承ください。
日付変わって今日(12/18)1日でやって1日で書いた

#なにするの？
今回はGoogleHomeの登場により、より私たちの身近になったGoogleAssistantを使い、少し遊んでみようと思います。
また、今回の記事で書くことはGoogleHomeのみではなく、iPhoneなどでもGoogleAssistantのアプリを入れることにより実践できるので、是非試してみてください！！

#Q.なんで？
<h2>A.今年だけでTwitterアカウント5つ以上凍結されたから別のSNSのことを書きたかった

#マストドンについて少し。(*個人の見解です)
今年4月に日本に上陸した連合型SNSであり、特徴として"インスタンス"というものがあり、自分が所属するインスタンスを自由に決めることができる。
日本の中で主なインスタンスは
[mstdn.jp](https://mstdn.jp)、niconico動画のような[friends.nico](https://friends.nico/)、Pixivが運営する[Pawoo](https://pawoo.net/about)、そしてQiitaが運営する[Qiitadon](https://qiitadon.com/about)などがある。


このインスタンスとは設置するための特別な資格や権限は必要ないため、自分で使用するためのインスタンスを新たに設置する事もできる。
また、インスタンスにはカスタムemojiにも対応していて最高:hugging:
以下、Wikipedia先生のアレ

>マストドン (Mastodon) はミニブログサービスを提供するためのフリーソフトウェア、またはこれが提供する連合型のソーシャルネットワークサービスである。「脱中央集権型」 (decentralized) のマストドンのサーバーはだれでも自由に運用する事が可能であり、利用者は通常このサーバーの一つを選んで所属するが、異なるサーバーに属する利用者間のコミュニケーションも容易である。開発者はドイツのプログラマーであるオイゲン・ロチコ (Eugen Rochko)。
([Wikipedia](https://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%B9%E3%83%88%E3%83%89%E3%83%B3_(%E3%83%9F%E3%83%8B%E3%83%96%E3%83%AD%E3%82%B0))より引用)

#GoogleAssistantを使い、遊んでみる
やっと本題です。
ゲーム中など、手が離せないようなことをしているときに
####今起きたことを共有したい！
だとか
####SNS上でお話をしながら作業もしたい！！
などと思ったことはありませんか？
その際にわざわざ作業の手を止め、SNSを開くのは面倒ですし、作業効率も悪くなってしまいますよね。

ですので今回はこんなご提案です。

##喋って投稿
と、いうことでN高だけにN番煎じネタですが*喋るヤツ*です。

#####Q.そもそもなんで喋る必要あるん？
#####A.俺のコミュ障を直すため
結論から言います、治りませんでした。
##すること
* Mastodon側の設定(今回は[mstdn.jp](https://mstdn.jp/about)というインスタンスを例にやっていきます。他のインスタンスで使用する場合、アクセストークンの部分だけ差し替えれば動作するかと思われます。)

####そのいち クライアントの登録
まずは、ユーザー設定を開き、下の方にある開発という項目を開きます。
そして、遷移先のページにある新規アプリというボタンを押します。
<img width="885" alt="スクリーンショット 2017-12-18 5.48.21.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/c28f6fb5-530e-cd4a-cefb-9856d9ef091e.png">

すると、このような画面に移動するので、一つ目の入力欄に任意のクライアント名。
二つ目の項目にそのクライアントのリンク先を指定してあげます。
<img width="504" alt="スクリーンショット 2017-12-18 5.53.08.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/76d07750-4f1c-f02f-402e-c33c757d4ad9.png">
入力し終わったら、送信ボタンを押しましょう

####そのに アクセストークンの取得
送信ボタンを押すとアプリ一覧のページにリダイレクトされるので、先ほど作ったクライアント(アプリ)名をクリックし、3行目にある`アクセストークン`の部分を控えて起きましょう。
<img width="1006" alt="スクリーンショット 2017-12-18 6.08.06.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/fab53702-8a67-4c83-f609-3c8d19026419.png">



* [IFTTT](https://ifttt.com/)側の設定

####そのいち アカウントの作成

まず、IFTTTのアカウントがない方は作ります。
<img width="1171" alt="スクリーンショット 2017-12-18 4.44.32.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/479f3eaf-3ff8-dd68-3860-defc2b43cdf6.png">

####そのに　アプリの作成
IFTTTのアカウントを作成し、右上のユーザー名の部分から `NewApplet`の部分をクリック。
開かれるページに表示される `+this`の部分をクリックして進んでください
![アプリ作成.png](https://qiita-image-store.s3.amazonaws.com/0/153740/63283a73-5ea4-af81-f8ab-054017152e00.png)

そうしますと、このような画面が出て来ますので、`Search services`となっている箇所に
`Google`と入れてあげます。
<img width="1170" alt="スクリーンショット 2017-12-18 6.40.48.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/5a78ba40-f61d-a30b-c62c-cfdaf8d50ea1.png">

そうしましたら、検索結果に出て来た`GoogleAssistant`をクリックして進んでください。
<img width="938" alt="スクリーンショット 2017-12-18 6.42.45.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/5df97a61-ed91-5e8b-b4ca-5a5fe1769c1a.png">

進みますと、`Connect Google Assistant`というページに移動します。
ここで、GoogleAssistantにて使っているGoogleアカウントを紐づけることによって、IFTTTとの連携を行なっています。
<img width="982" alt="スクリーンショット 2017-12-18 6.47.22.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/5c3081a1-0940-4545-b209-b73cdb2ca1a6.png">

アカウントを登録することができましたら、次はトリガーの設定を行います。
今回の場合ですと、特定のテキストを受けた時に作動すれば良いので、右から二つ目の
`Say a phrase with a text ingredient`という項目を選んであげれば良いですね。
<img width="1260" alt="スクリーンショット 2017-12-18 6.52.35.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/fb08dc17-e1c6-e788-963c-bfd025119ed5.png">

該当の項目をクリックすると、以下の画面に進みます。
ここでは、 *なんと言った時に作動するか*を設定することができます。
<img width="513" alt="スクリーンショット 2017-12-18 6.58.27.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/6ae0fe51-ccf1-063c-9f55-4580358140eb.png">
この画像ですと、`マストドンで $`となっているので`マストドンで こんにちは`というと、`こんにちは`と投稿されます。

下にスクロールしますと、投稿完了時の設定を行うことができます。
<img width="374" alt="スクリーンショット 2017-12-18 7.05.56.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/87873641-cf7d-eee0-4910-f56f5f8c35ea.png">
こちらも上でやったものと同様に`$`を使用し、GoogleAssistantに投稿完了時になんと言わせるかを設定することができます。
画像の場合ですと、`こんにちは　と投稿しました。`と喋ります。
また、言語の設定の部分では日本語に設定しておきましょう。

入力が完了しましたら、`Create trigger`をクリックし、トリガーの作成を完了させます。

作成が完了しますと、次はトリガーが作動した時の設定をします。
`if then +that`と出てくるので、`+that`の部分をタップし、進んだ先で
`web`と入力して、出て来た `Webhooks`をクリックし、進んだ先でアカウントを紐づけます。
<img width="939" alt="スクリーンショット 2017-12-18 7.13.09.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/160fe171-0fca-5719-6c70-ecc31b4a67ea.png">

URLの部分に `https://mstdn.jp/api/v1/statuses`と入力し、今回は投稿なのでMethodはGETからPOSTに変更しましょう。
その下に進み、`Content Type`という項目は`application/x-www-form-urlencoded`を選択し、bodyという所には
`access_token=先ほど控えたトークン&status= {{TextField}} 投稿の語尾につけたい言葉&visibility=public`と入力してあげます。
また、この*投稿の語尾につけたい言葉*というのは自由に設定できるので、お好みで設定しましょう。今回は例として `from しゃもじぃハウス`と設定します。
<img width="1031" alt="スクリーンショット 2017-12-18 7.18.35.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/a71b7339-57ba-dcc4-abc7-209ad48cc2e8.png">
こちらの項目を入力しましたら`Create action`をクリックし、次のページで`Finish`をクリックすれば、設定は終了です。

#実践！！
では早速試しにGoogleAssistantを利用して投稿してみましょう！！
[実際の投稿](https://mstdn.jp/@syamozy/99192084712302762/)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/153740/33d64492-9619-fbba-686b-50d5dc1f972c.png)

<img width="306" alt="スクリーンショット 2017-12-18 7.58.52.png" src="https://qiita-image-store.s3.amazonaws.com/0/153740/333f8f89-eef9-903a-9a32-c2799c876ef1.png">


このように、設定した通りに投稿されているのが確認できますね！！


#まとめ
####どうでしたか？格が違う人間になれましたか！？
そもそも僕が今回参加しようと思ったきっかけが完全に今日(12/18)が誕生日だからというノリだけの理由で、勢い余って参加してしまいました。
技術系ちょっとはかすってるから許して欲しいです。
なんだかんだ、やってみて楽しいと思えたので自分は満足しています :thumbsup: 

まとめとなりますが、今回これをきっかけに気になっていたIFTTTに初めて触ることができたのでいい機会だったなぁと思っています。
今回はマストドンに限定したものでしたが、アクセストークンの部分を変更するだけで簡単にツイッターなどにも投稿できそうなので、それも今後試してみたいなぁと思っています:muscle: 


あと、今はiPhoneからなんですけどiPhoneからだといちいちアプリを立ち上げておかないといけないので、「GoogleHomeほしいなぁ」みたいな気持ちになっています。
サンタさん、お願いしま〜す :pray: 

###以上、N高等学校アドベントカレンダー2017年12/18担当の*syamozy*でした！！