IchigoJamでLINEを送る方法 <その1>【IchigoJam × MixJuice × IFTTT】
IchigoJam × MixJuice × IFTTT でLINEを送る方法をご紹介します。
#IchigoJam × #MixJuice × #IFTTT でLINEにメッセージを送ってみました!動画では「ムカエニキテ」と送っています。
— 初代 *Hana道場【師範】 (@shoichi1031da) October 11, 2020
これでスマホを持っていない小学生でもLINEができる!? pic.twitter.com/zF6tovZnTE
IchigoJamBASICのみのプログラムでLINEが送れます!!
ただ、カタカナ(日本語)で送るにはUTF-8に変換するプログラムをBASICで書く必要があります。そちらは<その2>のブログで紹介します。
<その3>では自宅のインターホン(呼び鈴)をIoT化しています。
今回はIFTTTを使って、IchigoJamからLINEでメッセージを送る方法を紹介!!
【目次】
1. 必要なもの
【一覧】
【概要】
IFTTTは複数のwebサービスを連携させるサービスです。
さまざまなサービスが連携できる「IFTTT(イフト)」の使い方 (1/3):IFTTT入門 - @IT
今回は「Webhoocks」と「LINE」を連携させます。
(IFTTTで連携させて新たにできたサービスを「アプレット(Applet)」と言います)
WebhoocksにMixJuiceで通信することが「トリガー(引き金)」となり、LINEにメッセージを送ります。メッセージはMixJuiceからGETメソッドのパラメータとして送信します。
2. IFTTTの手順
2-1 アカウント作成
IFTTTからアカウントを作成しましょう。
2-2 Applets(サービス連携)をつくる
(1)ホーム画面から「Create」→「Applets」を選択
(2)「If This」を選択
トリガーとなる「Webhoocks」を登録していきます。
(3)webと検索し「Webhoocks」を選択
(4)「Receive a Web request」を選択
(5)「Event Name」を決め「Create trigger」を選択
※今回のブログではEvent Nameを「test」にしています。
(6)「Then That」を選択
最終的に実行するサービスであるLINEを登録していきます。
(7)LINEと検索し「LINE」を選択
(8)「Send messagae」を選択
(9)「Continue」を選択
(10)「Applet Title」を決め「Finish」を選択
はじめから入力されているタイトルでいいと思います。
2-3 個別設定① - LINE -
(1)LINEのアイコンを選択
(2)「Connect」を選択
(3)IFTTTとLINEの連携にすることを同意する
下のようなメッセージがLINEに届いたらOKです。
2-4 Appletの設定
(1)ホーム画面から作成したAppletを選択
(2)「Connect」を選択
(3)「Settings」を選択
(4)下記画像のように設定
2-5 個別設定② - Webhoocks -
(1)Webhoocksのアイコンを選択
(2)「Documentation」を選択
(3)Appletが正常に作動するかテスト
{event}にWebhoockのイベント名、value1にLINEに送る文字列を入れましょう
試しに「hello」と送ってみましょう。
「Test It」を選択し、LINEにメッセージが届けばAppletの作成成功です!!
赤枠で囲んだURLにMixJuiceで通信することになります。
メモしておきましょう。
3. プログラム概要
【プログラム】
5 CLS:POKE#1E03,1,34:INPUT S
10 ?"MJ GETS maker.ifttt.com/trigger/イベント名/with/key/Webhoocksのkey?value1=";
20 FOR I=0 TO LEN(S)-1
30 ?STR$(S+I,1);
40 NEXT
50 ?:LC 0,10:?”>”;STR$(S):?
2-5(3) を見て、イベント名とkeyを入力しましょう。
【実行画面】
【プログラム解説】
5 CLS:POKE#1E03,1,34:INPUT S 文字列(メッセージ)を変数Sに入力
10 ?"MJ GETS maker.ifttt.com/trigger/イベント名/with/key/Webhoocksのkey?value1="; Webhoocksにvalue1のパラメータをGETメソッドで送信
20 FOR I=0 TO LEN(S)-1 文字列(メッセージ)の長さ分くりかえし
30 ?STR$(S+I,1); URLに文字列(メッセージ)を1文字ずつ付加する
40 NEXT 文字列(メッセージ)全て付加するまでくりかえし
50 ?:LC 0,10:?”>”;STR$(S):? シリアル通信+送信した文字列(メッセージ)を表示
5行目:INPUT命令で変数Sに文字列を代入する特別な方法を使用しています。
30行目:変数Sに代入された文字列を1文字づつPRINT出力
UARTコマンドを使えば、例えば「UART9」で画面表示だけOFF(シリアル出力はON)にできます。詳しくは https://fukuno.jig.jp/2689
4. 補足
最初にも書きましたが、カタカナ(日本語)を送る場合は、メッセージをUTF-8に変換して送る必要があります。
UTF-8に変換して送信するIchigoJamプログラムはできていますが、長くなったので、<その2>として記事を分けようと思います。
【連載記事一覧】
<その2>IchigoJamでUTF-8変換して日本語をLINEで送る方法
<その3>呼び鈴を押すとLINEが届く「IoT呼び鈴」の作り方
CC BY shoichi1031da / @shoichi1031da