はじめに
様々なイベントで製品を紹介する際、Cybozuブースにはたくさんのお客様がお立ち寄りくださいます。
そんな中、気になるのはこんなこと。
- いったいどのくらいの人がブースに立ち寄ってくれているのだろう?
- 1時間に何人?スタッフの対応が忙しいのは何時ごろ?
ブースに立ち寄ってくれた方の数をただカウントするだけではわかりません。
せっかくだから、データを残したい!分析したい!
そこで、MESHのボタンタグで数をカウントし、kintoneへデータ登録することで、簡単に集計やデータ分析ができるような仕組みをつくってみました♪
概要
MESHボタンを押したら、kintoneのアプリにレコードを登録します。
- ボタンを1回押す:カウントを+1
- ボタンを長押しする:カウントをー1
カウントのマイナスもできるので、間違って押したときも安心!
アプリのレコードには、人数カウント用のフィールドのほかにイベント名、日付、時刻フィールドを用意しておきます。
これで、「どのイベント」で「何時」に「何人」きたのかがわかりますね♪
※注意事項
- MESH の近くにスマホがないと動作しません。
結果
MESHボタンを押して、ブースに立ち寄ってくれた方の人数をカウント。
そしてkintoneに蓄積されたデータを利用して、簡単に様々な集計を行うことができました!
集計例
▼イベントの日ごとの来場者推移
▼イベントごとの来場者数
▼イベントの来場者割合
▼来場者数の集計表
※上記のサンプルは架空のデータです。
kintone の設定
kintone アプリの作成
下記のフィールドをフォームに設置します。
フィールド名 | フィールドタイプ | フィールドコード | 初期値 |
イベント名 | 文字列(1行) |
EventName |
|
来場日 |
日付 | CountDate | レコード登録時の日付を初期値にする |
来場時間 |
時刻 | CountTime | レコード登録時の時刻を初期値にする |
人数カウント |
数値 | Count |
APIトークンの生成
レコード追加権限のあるAPIトークンを生成します。
アプリIDとAPIトークンは MESH の設定で利用するのでメモしましょう。
アプリIDはURLから確認できます。
投稿したいアプリを開きます。そのURLが「https://xxxxx.cybozu.com/k/674/」の場合、「674」がアプリIDになります。
MESHの設定
SDKのアカウント登録
こちらからアカウントを登録します。
SDKにインポート
SDKにログインし、「Create New Tag」をクリックします。
「Import」をクリックします。
下記のcountUp.jsonを貼り付けて、「Load JSON」をクリックします。
- countUp.json
インポート後、kintone の設定でメモした内容を参考に以下のPropertyのDefault Valueを書き換えます。
- ドメイン名
- アプリケーションID
- APIトークン
※PropertyのDefault Value値は、レシピにタグを登録する際、初期値として設定されるものです。
Propertyの値は、MESHモバイルアプリのレシピ上でも変更することができます。
本Tipsの場合、イベント名はイベントの都度変更する必要があるため、レシピ上で変更を行います。(手順は後述。)
アプリケーションの設定
スマートフォンに MESHアプリをインストールして新しいレシピを作成し、MESH のタグと接続します。
SDKにログインします。
右下のカスタムの追加をタップし、先ほどインポートしたカスタムタグを追加します。
MESHのボタンタグ2つと追加したカスタムタグをドラッグ&ドロップで配置し、以下のとおりコネクタで接続します。
レシピ上に配置したカスタムタグをタップして、イベント名を変更します。
- イベント名:kintoneに登録されるレコードの「イベント名」フィールドに設定する値
※ここでは、SDKでタグを作成したときのDefault Valueが初期設定として表示されています。
頻繁に設定を変える必要のある項目は、この画面で変更してください。
※変更の少ない項目(ドメイン名やAPIトークン等)は、タグ作成時にDefault Valueで設定しておくと便利です。
レシピ上に配置したボタンタグをタップして、ボタンの押し方をそれぞれ設定します。
ボタンタグは、3つの押し方を検知することができます。
- 1回押されたら
- 長押しされたら
- 2連続で押されたら
今回は、以下のとおり設定します。
- コネクタ1つめ(Plus)に接続するボタン ⇒ 1回押されたら
- コネクタ2つめ(Minus)に接続するボタン ⇒ 長押しされたら
ボタンの押し方による処理の分岐について
今回はボタンのアクションによって処理を変える必要があるため、Input Connectorを2つ用意しました。
どの入力コネクタを利用した処理なのかは、Receiveメソッド内で参照可能です。
Receiveメソッドで参照した値を、メソッド間で共有できる変数(runtimeValues)に格納して利用しています。
詳細はこちらのドキュメントを参考にしてください。
おわりに
ぽちぽちとボタンを押していくだけで、来場者の人数データを登録することができました。
kintoneならグラフ機能が充実しているので、データの確認や集計も簡単ですね♪
ぜひ色々なグラフや表を作成して、データを活用してみてください!
このTipsは、2017年11月版 kintoneで確認したものになります。
meshを利用してテストをしております。
meshのSDK設定時にAPIトークン(kintone)を作成しましたが、上限15文字の制限でエラーとなり先へ進むことが出来ませんでした。
MESH SDK側で何らかの設定が必要なのでしょうか?
すみません。自己解決です。
countUp.json上で変更する。 or カスタムタグをタップし修正する。