#ノーコード ツールを使って #LINE公式アカウント のチャットに来た問い合わせをDiscordに通知する #LINEDC

この記事は [🌟LINE DC🌟 LINE Developer Communityのカレンダー | Advent Calendar 2022 - Qiita](https://qiita.com/advent-calendar/2022/linedc) 20 日目の記事です。

> 19日目： [SwichBot APIを用いて帰宅前にエアコンをつけるか尋ねるLINE Botを作成する](https://qiita.com/katta1024/items/bfd420329f48dce898d5) @katta1024 
> 21日目： Clasp で GAS のローカル開発環境作って、LINE BOT を作成する @umorih-hm

## TL;DR

- `LINE公式アカウント`のチャットに来た問い合わせを、`Discord`に通知する方法を紹介します。
    - この記事の内容を応用して、Slack や LINE にも送れます
- 最近、[LINE公式アカウントでWebhookとチャットが併用できるようになりました](https://developers.line.biz/ja/news/2022/12/01/use-both-chats-and-webhooks/)。
- 少し開発が必要なので、ノーコードツール`Make`を利用してプログラムを書かずに実装する方法を説明します。

## 動作イメージ

<a href="https://gyazo.com/e2b3b5ac366db2dcc13c3cd271a059f9"><img src="https://i.gyazo.com/e2b3b5ac366db2dcc13c3cd271a059f9.gif" alt="Image from Gyazo" width="800"/></a>

## LINE公式アカウントの問い合わせに気づけますか？

こんにちは。 [@mitsuoka0423](https://twitter.com/mitsuoka0423) です。
プロトタイピングと発信を続ける人のためのコミュニティ「プロトアウトジム」を運営しています。

https://note.com/protoout/n/n6a536c350571

プロトアウトジムでは、問い合わせ窓口に LINE 公式アカウントのチャットを利用しています。
ユーザーが普段利用している LINE のインタフェースを通して問い合わせができるので、ユーザー側のハードルが低くて良いです。

しかし、運営側のハードルがあります。
それは問い合わせに`気づく`ことです。

LINE 公式アカウントに来たチャットに気づくには、現状、以下のいずれかで対応する必要があります（他に良い方法があればコメントで教えて下さい）

- （1）チャット画面をブラウザで開いておき、ブラウザから通知を受け取る
- （2）スマホに LINE 公式アカウントアプリをインストールし、アプリから通知を受け取る

（1）はチャット画面をずっと開いておく必要があり、数人で運用しているコミュニティでは現実的ではありません。
現状（2）を採用していますが、通知のためだけに LINE 公式アカウントアプリをインストールしなければならないのは面倒です。

> 余談ですが、LINE Botを開発しようと新たにMessaging APIチャネルを作成すると、同時に作成されたLINE公式アカウントから「プロフィールを完成させましょう」などのアドバイスが数日に渡って送られてきます。
> 「お、問い合わせ来たかな？」と思い、確認してがっかりするというイベントがしばしば発生していたりします。

先日、LINE 公式アカウントでチャットと Webhook が同時利用可能になったとアナウンスされました。
こちらを活用して、LINE 公式アカウントのチャットを Discord に通知してみます。

https://developers.line.biz/ja/news/2022/12/01/use-both-chats-and-webhooks/

https://qiita.com/stachibana/items/3e1a9ef6089367272d0e

## 準備

下記の準備を行います。

- [Make](https://www.make.com/en)
    - サインアップ
- LINE
    - LINE 公式アカウントの作成
    - チャネルアクセストークンの取得
    　　　- 参考 URL：[LINE公式アカウントの作成 / LINE Botの初め方](https://zenn.dev/protoout/articles/16-line-bot-setup)
- Discord
    - 通知を送るサーバー・チャネルの作成

## Makeシナリオ作成

Make で以下のシナリオを作成します

<a href="https://gyazo.com/30b97a3550b3a5851258aa4f09b3d21c"><img src="https://i.gyazo.com/30b97a3550b3a5851258aa4f09b3d21c.png" alt="Image from Gyazo" width="751"/></a>

> Makeの用語やベースとなる使い方は下記動画で解説してますのでご覧ください。

https://www.youtube.com/watch?v=NMdgJ3MuDTM

### LINEモジュールの設定

`準備`で取得したチャネルアクセストークンをを使用して、`Connection`・`Webhook`を作成します。

Wehbook エンドポイント URL が発行されるので、[LINE Developers](https://developers.line.biz/console/)の Webhook URL に設定します。

<a href="https://gyazo.com/14170cd4b6390dbefbee39a33cf86b77"><img src="https://i.gyazo.com/14170cd4b6390dbefbee39a33cf86b77.png" alt="Image from Gyazo" width="753"/></a>

<a href="https://gyazo.com/36cfcef35413b10fee967172cfb9ec8c"><img src="https://i.gyazo.com/36cfcef35413b10fee967172cfb9ec8c.png" alt="Image from Gyazo" width="759"/></a>

### Discordモジュールの設定

通知を送りたい Discord サーバーへの`Connection`を作成します。
`Channel ID`は通知を送りたい Discord チャネルを選択します。
`Message`はお好みで設定してください。

<a href="https://gyazo.com/c5f58caf311cf373f487a1f1201a3aa0"><img src="https://i.gyazo.com/c5f58caf311cf373f487a1f1201a3aa0.png" alt="Image from Gyazo" width="758"/></a>

### 定期実行設定

左下にある`SCHEDULING`を`ON`にします。
頻度は`Immediately as data arrives.`を選んでおきます。

<a href="https://gyazo.com/879bce5d1b30f2ff912bd38f4d115290"><img src="https://i.gyazo.com/879bce5d1b30f2ff912bd38f4d115290.png" alt="Image from Gyazo" width="1393"/></a>

## 動かしてみる

- 左：ユーザーの LINE
- 右上：LINE 公式アカウント
- 右下：通知用 Discord

です。ユーザーの LINE から問い合わせが来たら、Discord にも通知を送ることができました。

<a href="https://gyazo.com/e2b3b5ac366db2dcc13c3cd271a059f9"><img src="https://i.gyazo.com/e2b3b5ac366db2dcc13c3cd271a059f9.gif" alt="Image from Gyazo" width="1000"/></a>

## まとめ

[LINE公式アカウントでWebhookとチャットが併用できるようになりました](https://developers.line.biz/ja/news/2022/12/01/use-both-chats-and-webhooks/)のおかげで、LINE 公式アカウントのチャット通知の選択肢が広がりました（ほんとは公式で Web Notification 対応してもらえると理想）。
普段利用している Discord で通知を受け取れるようになったので、他のツールをインストールする必要がなくなったのも嬉しいポイントです。