First CH Apps / 出欠集計
LINE投票を使わずに出欠の返事が文字でばらばらに届いたら、トーク履歴を貼るだけで参加・不参加・未定と人数(○2)を数え、名簿と突き合わせて返事のない人を出します。
LINEで出欠を取ると、返事の書き方が人によってばらばらになり、数えるのに手間がかかります。このページは、文字で届いた返事を貼り戻すだけで数えます。次の募集から返し方を1行に決めておけば、要確認の行も減ります。
送られません。読み取りと集計はこのページを開いた端末の中で行います。送信が起きるのは、AIで読む機能をオンにして、送る内容を確かめたうえで許可したときだけです。
投票・イベントは、最初から使えば集計まで済みます。このページは、投票を使わずに文字で返事が集まってしまった後に、トーク履歴を貼り戻して数えるためのものです。名簿と突き合わせて返事のない人を出し、「○2」の人数を合計してCSVにできます。
読めるのはLINEの「トーク履歴を送信」で書き出したテキスト(日付の行と「時刻・名前・本文」の行)の1形式だけです。トークを長押しして選んだ発言のコピーは、日付と区切りが入らないため読めません。貼ると欄の下に足りないもの(日付の行・時刻と名前の区切りなど)を出します。
1回の集計は1つの催しだけです。【出欠確認】の行が複数あるときは、①の催し名に合うもの(無ければ最初のもの)を基準にします。
募集文づくり、トーク履歴の読み取り・判定・集計、集計文・再確認文・CSVの作成は、すべてこの端末の中で行います。トーク履歴・名簿・入力した催しの情報はサーバーへ送りません。
サーバーへ送るのは、「AIで読む機能を使う」をオンにして、送る内容を確かめて許可したときの、選んだ要確認の行の本文と直前の発言だけです(発言者と名簿の名前・電話・メール・@の宛先・「〜さん」などの前の名前を伏せたもの。サーバーでも電話・メール・@の宛先・「〜さん」などの前の名前を伏せ直します。名簿にない名前は残ることがあるため、送る内容は送る前の画面で確かめられます)。当社サーバー(Cloudflare Pages Functions)はそれを Cloudflare Workers AI へ渡し、結果を返します。
First CHは本文と結果を保存しません(データベースにもログにも書かず、処理が終われば消えます)。Cloudflare 側の扱いは同社の公式方針に従います。
データベースに書くのは「日付と、その日のAIの利用回数(全利用者の合計と、この道具の分)」だけです。連続送信を防ぐため、送信元IPごとの回数をサーバーのメモリで一時的に数えますが、保存はせず最長10分で消えます。
POST /henji-kuru/api/read に JSON({"lines": [{"text": "私も", "context": "○2"}], "count": true})を送ると、各行の区分(yes / no / maybe / unclear)・人数・理由が JSON で返ります(lines は1〜10件・text と context は各300字まで・count は人数を聞いた募集なら true。認証不要・保存なし・1日の回数上限とIPごとの回数制限はページと共通)。トーク履歴全体の集計は端末内の処理のため API はありません。