#PIR Hat + M5StickC で、人を感知したら、Microsoft Teamsにお知らせします。
LINEは個人用途、Microsoft Teamsは会社用途って感じで使い分けていると思います。
職場で使うことを想定して、PIRセンサー(人感センサー)がMicrosoft Teamsにお知らせします。
職場で、またはリモートワークで、「この人が机に戻ってきたら知らせてほしいな」とか「この廊下を人が通過したら知らせてほしいな」という場面があったら、これを作ってみましょう。
M5StickC PIR Hatはこちら
https://www.switch-science.com/catalog/5756/
M5StickC PIR HatとM5StickCを接続します。
#Microsoft TeamsのWebhook URLを取得する
このサイトの説明が分かりやすいです。
https://faq.form.run/microsoftteams-webhook
1.Teamsアプリ内で「Incoming Webhook」を追加
2.Incoming Webhookをチームに追加する
3.通知を受け取るチャネルの設定
4.Webhookに任意の名前とアイコンを設定する
5.Webhook URLをコピー
までの手順を行って、Webhook URLを下のコードにペーストします。
#M5StickCは以下のコードを
#include <M5StickC.h>
#include <WiFi.h>
#include <ssl_client.h>
#include <HTTPClient.h>
const char* ssid = "XXXXXXXXX"; //INPUT your wifi ssid
const char* passwd = "XXXXXXXXXXXXX"; //INPUT your wifi password
HardwareSerial serial_ext(2);
void setup_wifi() ;
void setup() {
M5.begin();
setup_wifi();
M5.Lcd.setRotation(3);
M5.Lcd.fillScreen(BLACK);
M5.Lcd.println("WiFi_Connected, for Teams");
pinMode(36,INPUT_PULLUP);
}
void loop() {
M5.update();
delay(500);
M5.Lcd.setCursor(60, 30, 4);
M5.Lcd.println(digitalRead(36));
int data = digitalRead(36);
if (data == 0) {
M5.Lcd.setCursor(60, 30, 4);
M5.Lcd.println(data);
} else if (data == 1) {
send_message();
M5.Lcd.setCursor(60, 30, 4);
M5.Lcd.println(data);
}
vTaskDelay(2000 / portTICK_RATE_MS);
}
/* Wifiに接続する */
void setup_wifi() {
// We start by connecting to a WiFi network
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, passwd);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
}
// Teamsへの通知
void send_message(){
HTTPClient http;
String url = "XXXXXXXXXXXXXXXXXXXX"; //INPUT Teams Webhook URL
if (http.begin(url))
{
String payload = "{'text':'感知した'}"; //INPUT your original message
int httpCode = http.POST(payload);
}
}
#こんな動きをします
PIRセンサーが感知していない時は0が表示され、感知したときは1が表示されます。
そして感知したときに、Microsoft Teamsにメッセージが届きます。
PIRセンサーは、Passive Infra Red(赤外線)センサーで、温度変化が発生すれば、反応します。横切るような動きには敏感に反応しますが、ゆっくりな動きでは反応しないことがあります。また空調による空気の温度変化のユラギにも反応することもあり、思った通りには反応してくれないこともありますが、まず試してみるプロトタイプには最適です。
まず試してみる楽しいプロトタイプ生活を!!