サイボウズ社が提供しているウェブサービス「kintone」は、一言で言うなら「簡単に自社の業務に適したシステムを作成できるクラウドサービス」だ。業務アプリを直感的に作成できるほか、社内SNSとしての機能も備えスピーディーに情報共有ができるなど魅力が盛り沢山だ。本連載では、そんなkintoneの導入から基本機能の紹介、そしてアプリの活用法など、ビジネスの現場で役立つ情報を取り上げていく。第104回では、IoTエッジデバイスの「Gravio」で取得したCO2の計測データを1分ごとにkintoneに記録する方法について紹介する。
データを蓄積、分析すれば新たな知見が得られるはず
コロナ禍で二酸化炭素(CO2)濃度を計測している会社は多いだろう。飲食店も個室のCO2濃度を計測し、一定ラインを超えたら換気をするようにしている。しかし、多くは独立したデバイスで、濃度を表示するだけ。筆者としてはせっかく計測しているのに、データが溜まらないのがちょっともったいなく感じる。
もしデータを分析できれば、金曜日の4人以上席は速攻でCO2濃度が高くなるので、そもそも少し窓を開いておこうといった知見が得られるかもしれない。
そこでエッジインテグレーションプラットフォーム「Gravio」を利用し、計測したCO2濃度をkintoneアプリに自動的に蓄積してみよう。「Gravio」は様々なセンサーやカメラからのデータをエッジで処理し、必要に応じてクラウドに接続するIoTデバイス。温度センサーやドア/窓開閉センサー、人感センサー、振動センサー、ワイヤレススイッチそしてCO2センサーなどがラインナップしている。
まずは、kintone側で、データを記録するアプリを作成しよう。計測した時刻を記録する「日時」フィールドとCO2濃度を保存する「数値」フィールドを配置。フィールドコードはGravioに設定するので、「time」と「CO2」など名前を付けておこう。
続けて、「設定」タブの「APIトークン」を開き、APIトークンを生成する。その際、アクセス権の「レコード追加」にチェックしておくこと。
CO2濃度を計測してくれる「Gravio CO2」をセットアップしたら、新しいアクションを作成する。Gravioでは様々なコンポーネントを用意しており、LINEやTeamsへの受け渡しやCSVの読み書きなどが可能になっている。残念ながらkintoneへのコンポーネントはないので、ここでは「HTTP Request」を選択する。
追加した「HTTP Request」の設定で、「HTTPメソッド」は「POST」、URLには「https://★kintoneのドメイン名★.cybozu.com/k/v1/record.json」と入力する。右側の「Pre Mappings」の「+」をクリックし、左側に「cp.Headers」、右側に「{"X-Cybozu-API-Token": "★生成したkintoneのAPIトークン★"}」と入力する。
もう一度「+」をクリックして、左側に「cv.Payload」、右側に「{"app": ★アプリ番号★, "record": {"time": {"value": tv.Timestamp}, "CO2": {"value": tv.Data}}}」と入力する。アプリ番号はkintoneアプリを開いたURLの「app=★★」を見ればわかる。自分で付けた「time」と「CO2」はフィールドコードを入力しよう。
次はアクションを実行するトリガーを設定する。「トリガー」タブから新規トリガーを作成し、「時間」タブで実行間隔を設定する。単位はミリ秒なので、1分おきに取得するなら「60000」と入力しよう。
「条件」タブでは「CO2」レイヤーが任意の値で動作するようにする。ここで、CO2濃度が1000ppm以上の時のみとすることも可能だ。CO2濃度が高いときだけ記録したいというときに設定するといいだろう。最後に「アクション」タブで先ほど作成したアクションを選び、「保存」をすれば準備完了。トリガーのスイッチをオンにすれば記録がスタートする。
1分ごとにkintoneのレコードが追加され、計測日時とCO2濃度が記録されている。グラフにするとどんな変化をしているのかが一目瞭然となった。
この連載の記事
-
第116回
デジタル
kintoneに生成AIのパワーを!カスタマインのChatGPT連携を試してみた -
第115回
デジタル
ChatGPTをkintoneで使える連携プラグイン「Smart at AI for kintone Powered by GPT」を試してみる -
第114回
デジタル
kintoneのデータを添付ファイルごとエクスポート/インポートしたい -
第113回
デジタル
幕張メッセで「サイボウズデイズ2023」開催! 注目ブースを突撃取材 -
第112回
デジタル
Zoomの録音をkintoneに登録し、ChatGPTに議事録を生成させる連携にチャレンジ -
第111回
デジタル
kintone×kViewerで飲食店の会員向けページを構築してみた -
第110回
デジタル
kintoneのライトコースで全銀データを作成する方法を聞いてみた -
第109回
デジタル
kintone仲間と出会える! 楽しく学べるkintoneコミュニティの歩き方 -
第108回
デジタル
超絶苦手な請求書作成と発送・送信業務をkintoneで半自動処理させてみた -
第107回
デジタル
krewDataで売上管理のCSVからデータを取り込み店舗ごとの予実管理を自動集計する - この連載の一覧へ