LoginSignup
0
0

More than 1 year has passed since last update.

LINEでアカウントを知られずにメッセージ交換っぽい事をしたい

Posted at

ご近所さんと簡単に連絡が取りたかったんです…

このツールを思いついたきっかけは、ご近所トラブルからでした。
住んでいるマンションの部屋の並びが

[私][Aさん][Bさん]

という並びなんですが、この真ん中のAさんが10月に引っ越してきてから、ヘビースモーカーでも臭いと言う位の強烈なタバコ臭が部屋に侵入したり、深夜~明け方にかけてマイクで喋っているような声が響く日々・・。
同じ状況だったBさんから昨年末にお手紙をもらってから、手紙でお互いの状況や管理会社・大家とのやり取り内容を共有しているのですが・・・・

毎回手書きでお手紙を書くのはシンドイ!!

サクっと手間をかけずに情報交換したい!でもなるべく連絡先等の情報は公開したくない・・・という思いからLINE Botを使って 強引に メッセージを交換するツールを作成しました。

使用ツール

  • LINEmessagingAPI
  • GoogleAppsScript

処理イメージ

ちなみに、他の人から動画が届くと、下の図の黄色マーカー部分のような表示になります。

処理の流れ

qiitaImg.png

作成方法

LINE側の準備

こちらの公式マニュアルを参考に、LINE Developersにログインし、チャネルの作成とBotの作成を行ってください。
Messaging APIを始めよう
ボットを作成する

プログラム

GoogleAppsScriptに以下プログラムを書いていきます。

const CHANNEL_ACCESS_TOKEN = "チャネルアクセストークン";

function doPost(e) {

    handleMessage(e);
}


function handleMessage(e) {
  const replyToken = JSON.parse(e.postData.contents).events[0].replyToken;
  const lineType = JSON.parse(e.postData.contents).events[0].type
  if (typeof replyToken === "undefined" || lineType === "follow") {
    return;
  }
  let userMessage = JSON.parse(e.postData.contents).events[0].message.text;

  return push(userMessage);

}

//実際にメッセージを送信。
function push(text) {
  const url = "https://api.line.me/v2/bot/message/broadcast";
  const headers = {
    "Content-Type" : "application/json; charset=UTF-8",
    'Authorization': 'Bearer ' + CHANNEL_ACCESS_TOKEN,
  };

  let postData = {
    "messages" : [
      {
        'type':'text',
        'text':text,
      }
    ]
  };

  let options = {
    "method" : "post",
    "headers" : headers,
    "payload" : JSON.stringify(postData)
  };

  return UrlFetchApp.fetch(url, options);
}

今回自分のアカウントを知られたくないという事なので、オウム返しのLINE Botを参考にして、全員にメッセージを送るブロードキャストメッセージを使ってBotを登録している人全員にオウム返しされるようにしました。

アカウント名を伏せるため、受信するメッセージはすべてBotからのメッセージになります。

その後

連絡を取りたかったBさんがLINEを使わない人だったので、使わずに終了・・・・。
それもあったので、Qiitaに記念投稿しました。
ちなみに、強烈タバコ臭と夜間騒音は、管理会社は何もしない(というか他人事状態)。その代わり、情報を知った大家がお怒りモードで動いている感じです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0