EnOcean의 화장실 센서를 LINE Bot으로 확인

EnOcean의 화장실 센서를 LINE Bot에서 확인해 보았습니다.
Dialogflow에서 LINE Bot 연계를 하고 LIFF로 감시 화면을 표시하도록 했습니다.

EnOcean에서 화장실 센서를 만들어 본 기사는 여기를 확인하십시오.
htps : // 코 m / h - 타카 우마 / ms / 에 81f46c9170 훗 d1 바아 18

완성 동영상



「화장실 센서 x LINEBot x EnOcean x React」스위치 스트라이크 에어를 사용해 LINEBot로 상황을 응답합니다. LIFF로 시각화도 가능합니다. 피 c. 라고 r. 이 m / z3GQf jH1 — 가마루 @ 스마트 스피커 앱 개발 입문 발매 중! (@ gaomar) 2018년 11월 14일


시스템 개요



EnOcean에서 수신한 신호를 라즈파이로 잡아 Firebase에 개폐 상태의 값을 저장하고 있습니다.

React를 사용하여 Amazon S3에 설치한 정적 사이트에 센서 상태를 시각화하고 있습니다.



React로 시각화하는 부분은 이쪽의 기사를 확인해 주세요.

h tps:// 퀵했다. 작은 m/h-높은 말/있어 MS/208df83887 에세 15f0C45



시스템 구성도





1. LINE Developer에서 채널 만들기



Messaging API의 채널을 새로 만듭니다.





1-1. LIFF URL 얻기



LIFF URL은 최근 LINE Developer 내에서 게시할 수 있습니다.

추가 버튼을 클릭하여 Amazon CloudFront에서 설정한 URL(https)의 사이트 URL을 지정합니다.



LIFF의 크기는 원하는 크기를 지정하십시오.





2. Dialogflow에서 채팅봇 만들기



Dialogflow에서 새 에이전트를 만듭니다.



2-1. Intent 만들기



왼쪽 메뉴에서 Intents 의 오른쪽에 있는 [+] 버튼을 클릭하고 Intent 이름에 ToiletIntent 를 입력합니다.

여기서 대문자 소문자를 조심하십시오.



Traning phrases에 '화장실은'이나 '화장실 비어 있음' 등 사용자가 입력할 것 같은 단어를 등록합니다.

Fulfillment 항목의 상단 플래그를 활성화하십시오.

이 단어에 반응하여 ToiletIntent가 날 수 있습니다.





2-2. Fulfillment 설정



왼쪽 메뉴에서 Fulfillment 를 클릭하여 인라인 에디터의 오른쪽에 있는 체크를 활성화합니다.





2-3. 프로그램 수정



Inline Editor에서 프로그램을 수정합니다.

Firebase 액세스 URL 및 LIFF URL은 적절하게 수정하십시오. 프로그램을 수정했으면 맨 아래에 있는 [DEPLOY] 버튼을 클릭합니다.




index.js

'use strict';

const {dialogflow} = require('actions-on-google');
const functions = require('firebase-functions');
const app = dialogflow({debug: true}); 
const admin = require("firebase-admin");

process.env.DEBUG = 'dialogflow:debug'; // enables lib debugging statements

// 接続するFirebaseのRealtimeDatabaseのURLを指定する 
admin.initializeApp({
  credential: admin.credential.applicationDefault(),
  databaseURL: "https://toiletmanager-xxxxxx.firebaseio.com/"
});

// toiletのwordの値を取得しにいく
const getToiletStat = () => {
    return admin.database()
            .ref('toilet/word')
            .once('value');
};

// 2-1で決めたIntent名を指定します
app.intent('ToiletIntent', (conv) => {
    return getToiletStat().then((snapshot) => {

        // LIFFのURLは適宜修正してください
        conv.json(
            JSON.stringify({
                "fulfillmentText": `${snapshot.val()} \nline://app/xxxxxxxxxx-xxxxxxxx`
            })
        );

    }).catch((e) => {
        conv.json(
            JSON.stringify({
                "fulfillmentText": "エラー"
            })
        );

    });  
});

exports.dialogflowFirebaseFulfillment = functions.https.onRequest(app);



3. LINE Bot 및 Dialogflow 활성화



Dialogflow의 왼쪽 메뉴에서 Integrations를 클릭합니다.

그 안에 있는 LINE을 활성화합니다.



3-1. LINE Bot의 연결



LINE Developer에 표시된 ChannelID , Channel Secret , アクセストークン 를 복사합니다.

Dialogflow 측의 Webhook URL은 LINE Developer의 Webhook URL에 복사합니다.





3-2. LINE Bot 시작



Dialogflow 측의 START 버튼을 클릭하여 LINE Bot을 시작합니다.





요약



Google Home 기술을 만들 때 매우 사용하는 Dialogflow에서 LINE Bot을 쉽게 사용할 수 있었습니다.

앞으로는 이러한 Bot이 늘어나는 것 실수라고 생각합니다.

아이디어 나름으로 여러가지 Bot 제휴가 나오는 것이 기대되네요!



시스템화의 검토나 상담은 당사에 문의해 주세요.

htps : //아니- r. 이. jp/이런 ct/


좋은 웹페이지 즐겨찾기