TENKitとIFTTTの連携（LINE編）

**本記事は、[TENKit](https://tenkit.jp/) の応用的な利用について説明いたします。
事前に基礎編「 [TENKitとGoogleスプレッドシートの連携（簡単記録編）](https://qiita.com/tetotetote/items/bbacc6671b7b9f5846b3)」をご確認いただきますようお願いします。**

[TENKit](https://tenkit.jp/) （テンキット）は「テンキー」を「IoT」化するキットです。
[TENKit](https://tenkit.jp/) では、テンキーで入力された「数字」と、Googleスプレッドシートなどクラウド上のサービスを簡単に結びつけることができます。

ここでは、[TENKit](https://tenkit.jp/) の応用的な利用として、IFTTTと連携する方法について説明します。
具体的には、テンキーからの入力を、IFTTTを通じてLINEに送信する方法について記載します。
![スクリーンショット 2019-09-11 15.56.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/8add839a-18fe-24a0-fd00-d968a766c062.png)
本手順をマスターすると、IFTTTに登録されている多種多様なサービスと[TENKit](https://tenkit.jp/) を組み合わせて利用することができるようになります。

# 設定前の準備

IFTTTとの連携を設定する前に、以下の項目を確認してください。

**1. 基礎編をマスター**

**事前に基礎編「 [TENKitとGoogleスプレッドシートの連携（簡単記録編）](https://qiita.com/tetotetote/items/bbacc6671b7b9f5846b3)」をご確認いただき、TENKitの基本的な利用方法についてマスターしていただくようお願いします。**

**2. IFTTTのアカウントを作成**

IFTTTのアカウントを取得されていない方は、事前に [IFTTT](https://ifttt.com) にアクセスし、アカウントを作成してください。
![スクリーンショット 2019-09-11 16.02.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/31389a71-76b5-a59b-3906-0284a434dbd0.png)
「Continue with Google」より、Googleアカウントを用いてサインアップする方法が簡単でおすすめです。

# 連携の設定

IFTTTでは、「〇〇した時」に「〇〇する」という形で設定を行います。
ここでは「（TENKitから）HTTPリクエストを受信した時」に「LINEを送信する」という形でIFTTTの設定を行います。

その後、IFTTTで生成されたWebhook URLをTENKitに登録し、TENKitからHTTPリクエストが送信されるよう設定します。

## IFTTTの設定

まず最初に、IFTTTにログインし、利用したいサービスを検索します。
上部メニューの「Search」をクリックし、興味のあるサービスを探します。
今回はHTTPリクエストを受信する「Webhooks」サービスと、LINEにメッセージ送信する「LINE」サービスを利用します。

### Webhooksサービス

上部メニューの「Search」より「webhook」を検索します。
検索結果には「Connections」と「Services」というタブがあるので、「Services」の方を選択します。
![スクリーンショット 2019-09-11 16.18.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/0054ebfb-05ba-b231-0376-7a84d86e7c3b.png)
表示されている「Webhooks」をクリックするとWebhooksサービスのページに移動するので、ここで「Connect」ボタンをクリックします。
これでWebhooksサービスが利用できるようになります。
![スクリーンショット 2019-09-11 16.20.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/6f18ba4b-4396-1953-aff1-87675664db0d.png)

### Lineサービス

同様に「Line」を検索して、LINEサービスに遷移し、「Connect」ボタンをクリックします。
![スクリーンショット 2019-09-11 16.23.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/10f1d7d7-a3aa-c2a9-b42c-fbbd984c3fad.png)
Lineのログイン画面に遷移しますので、お使いのLineアカウントを入力してログインボタンを押します。
![スクリーンショット 2019-09-11 16.24.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/c2a10a4e-c986-9877-1c40-1c64cdd7d598.png)
承認画面が表示されるので「同意して連携する」ボタンをクリックします。

これによりお使いのLineアカウントに「LINE Notify」という公式アカウントが追加されます。
IFTTTから送信されるLineメッセージは、この「LINE Notify」を通じて受信します。

### アプレットの作成

アプレットを作成し、「HTTPリクエストを受信した時」に「LINEを送信する」という動作を実現します。

右上のメニューボタンをクリックし、「Create」を選択します。
![スクリーンショット 2019-09-11 16.32.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/7d8396f2-e632-1396-f319-b936c0034bb9.png)
「〇〇した時」をThis、「〇〇する」をThatに設定します。
まず「This」を選択して、「HTTPリクエストを受信した時」を設定します。
![スクリーンショット 2019-09-11 16.33.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/2947f14a-b7e0-8866-4762-a359eb391a98.png)
サービスの選択画面が表示されるので「webhook」を検索し、Webhooksサービスを選択します。
![スクリーンショット 2019-09-11 16.36.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/77bbaeb0-0920-9e32-52e6-7acac6421ebb.png)
Webhooksサービスのトリガーとして「Receive a web request」を選択します。
これが「HTTPリクエストを受信した時」にあたります。
![スクリーンショット 2019-09-11 19.16.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/e06b241a-6769-9b17-f353-cde08621a04e.png)
イベント名に「tenkit」を設定し「Create Trigger」ボタンを押します。
イベント名は、IFTTT（Webhooksサービス）で生成されるWebhook URLに関連するので覚えといてください。
![スクリーンショット 2019-09-11 19.18.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/b1ba8c5a-1b40-723f-3a27-163f4fe5c410.png)
これで、「This」にあたるWebhooksサービスの設定が完了しました。
次に、「That」を選択して「LINEを送信する」を設定します。
![スクリーンショット 2019-09-11 19.21.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/ad15723f-7e33-0253-1c9b-005b884f7996.png)
サービスの選択画面が表示されるので「Line」を検索し、LINEサービスを選択します。
![スクリーンショット 2019-09-11 19.22.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/0a3357e1-4d76-e0ea-c54d-58998bd04984.png)
LINEサービスのアクションとして「Send message」を選択します。
これが「LINEを送信する」にあたります。
![スクリーンショット 2019-09-11 19.28.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/94f42239-5f99-5f2f-e384-4cdfe6d82c7c.png)
最後に、以下のように各欄を設定して「Create action」ボタンをクリックします。

「Recipient」はLineの送信先を表しており、下記では「LINE Notify」を設定しています。
他にもLineのグループを指定することができます。

「Message」は送信されるLineメッセージを表しており、下記では「Value1」を設定しています。
TENKitでは、「Value1」にテンキーの入力値、「Value2」に入力した時刻を格納しています。
そのため、下記ではテンキーの入力値を、そのままLineに送信することを示しています。
![スクリーンショット 2019-09-11 19.31.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/105b56f5-8dd1-fd82-add0-651d5c3a4b18.png)
最後に「Finish」ボタンを押して設定を完了します。

## Webhook URLの登録

TENKitに、IFTTT（Webhooksサービス）のWebhook URLを登録します。
イベント名に「tenkit」を設定したことを思い出してください。

IFTTTの上部メニューの「Search」より「webhook」を再度検索し、「Webhooksサービス」にアクセスします。
![スクリーンショット 2019-09-11 19.47.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/1a078ffb-6af1-1522-c57f-8733c7dc678e.png)
右上の「Documentation」ボタンをクリックすると、下記のように「Key」と「Webhook URL」が表示されます。
![スクリーンショット 2019-09-11 19.48.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/552f23a2-3dba-565c-32cd-de52a02c5a41.png)
「Webhook URL」内の「{event}」はイベント名を表し、ここを「tenkit」に置き換えます。
「Key」を「ABCDEFGHIJKLMN123456789」とした場合、Webhook URLは最終的に次のようになります。
「ABCDEFGHIJKLMN123456789」部分を置き換えてご利用ください。

```
https://maker.ifttt.com/trigger/tenkit/with/key/ABCDEFGHIJKLMN123456789
```

最後に、このWebhook URLを以下専用の設定ページで登録します。
[![スクリーンショット 2019-09-10 17.45.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160696/0ec1a3af-ba00-8eec-a628-547b848d6dea.png)](https://tenkit.jp/webhook/register)
TENKitに接続されたテンキーを入力し、Lineにメッセージが送信されれば成功です。

# 最後に
本手順では、[TENKit](https://tenkit.jp/) の応用的な利用として、Line送信を例にIFTTTと連携する方法について説明しました。
これにより、[TENKit](https://tenkit.jp/) をIFTTTに登録されている多種多様なサービスと連携して利用することが可能になります。

どのように利用するはかアイデア次第です。面白い使い方を是非発見してください。