投稿

GoogleフォームとAppSheetでイベント管理システム作ってみた

イメージ
GoogleフォームとAppSheetでイベント管理システムを作ってみました。 イベント管理システム? イベント管理、特に有料イベントの場合は決済が伴うので PassMarket を使えば、決済回収のみならず、告知も出来たり、リスト化や、当日の出席管理も出来るのでとても便利です。ただ、どうしてもPassMarket上のイベント感が出てしまいます。激安なので、仕方有りませんが。 無料でクローズなイベント(会員内など)の場合、PassMarket のようにオープンなプラットフォームは合わない感じがします。やりすぎ感ありますし、ブランディング的にも。 簡単なイベントの場合、Webフォームにメールアドレス、参加者名等を登録してもらって参加者リストを作っておいて入り口でチェック、というのが普通かと思います。代表的な無料Webフォームツールの Googleフォーム を使うことも多いですね。これだと参加登録と参加者リストは出来るけど、PassMarket のような参加証の発行や参加者チェックのような機能はありません。一度 PassMarket のようなシステムを使うと、何とも不合理に感じてしまうのは、面倒くさがりの私だけでは無いでしょう。 入場のチェックはQRコードで PassMarket でもそうですが、最近よくある入場チェックは、個人用のQRコードを事前に送付しておいて、それを提示して入場するというものです。QRコードを作成するのはいろんなアプリやサイトで出来るのですが、読んだ値を記録する場合、 こんな 専用のQRコードリーダーを使うか、スマホの アプリ で読むことも出来るのだけど、専用リーダーは普通持っていないし、アプリもCSV等でリストを書き出す機能が無い場合が多いです。少し悩んだ後、以前触ったことがあるAppSheetを思い出しました。 AppSheetのアプリにはQRコード読み取り機能 もあります。 AppSheetについては過去に こんな記事 も書いたけど、スプレッドシートで構造化されたデータがあれば簡単にアプリを作ることが出来ます。 基本的には以下のような流れになると思います。 GoogleフォームとSpreadsheetは標準機能だけで問題ありません。 QRコードは以下のGoogleのAPIを使えば簡単に出来ます。 https://chart.apis.goo...

M5StackのTimer Camera Xを買って試してみた

イメージ
久しぶりに書いた昨日のエントリで、IoT機器やArdiuno、M5Stackなんかに興味が湧いてきて始めた話をした。調べているとカメラ付きのESP32(ESP-CAM)がワンコイン程度で売っていて、撮影した画像をクラウドに転送するなんてことが出来るらしい事が判明。アマゾンや アリエク にもいっぱいある。しかし調べを進めると、販売されているものはほとんど技適(日本国内の電波企画)取れていない。技適がなくても 総務省に申請 すれば短期間は使えるようだが、長くは使えないので今ひとつ。 少し値ははるけど、M5Stackで技適が取れているESP32にカメラ、バッテリーまでついたものの 在庫があった 。 ESP32 PSRAM Timer Camera X (OV3660) Timer Cameraというだけあって、時間起動で定期撮影して画像をAWS(アマゾンウェブサービス)等のクラウドに保存出来るのがもともとの仕様らしい。もちろん、ESP32なのでArdiuno IDEを使って自分仕様にプログラミングも出来るようだ。RTC(Real Time Clock チップはBM8563)内蔵なので、スリープ時の消費電力を極力下げることが出来るらしい。このカメラの兄弟機種の魚眼レンズ付きのTimer Camera Fを使って、定時測定した温度をサーバーに送るのに2ヶ月以上バッテリー駆動出来たという エントリ も発見。カメラとして使わないのは勿体ないとも思うけど、これは面白い。外付けのソーラー給電だけでもシステム構築できそう(それよりルータ等は必要だけど)。 公開されていたTimer CameraのソースやESP32-CAMのソースでいくつか試してみた。

開発ボードやM5Stackで遊んでみる

イメージ
 最近のマイHotはIoT機器を自作してみようというところ。 ちょっと前に Ardiuno互換機のIoT開発キット を買ってみて、少し試してみている。セットのセンサーは安い簡便なものなので温度等の精度は低いけど、試しに使うぶんにはまぁ良い。 Ardiuno IDE という開発環境をメインで使っているASUSのChromebookにLinuxバージョンをインストールして使ってみた。電子回路の話になるとまだチンプンカンプンなのだけど、 Ardiuno IDE を使ったプログラミングはそれほど難しい感じではない。ベースはC##なのだけど、慣れてくればPHPやJavaScriptなんかをいじってきた身としては違和感はない。 少し組み立ててみて、プログラムを少しいじったり、コンパイルして書き込んだりしてみた。電子回路今ひとつわかんねーとか、基盤やらブレッドボードやらデカくて邪魔くさいとか思っていて、出したり引っ込めたりがだんだん面倒になってきた。諸々調べていくと超安いESP32というWifi&Bluetoothがついているボードが同じようにAudiuno IDEでプログラム書けるとか、M5StackなるESP32にディスプレイまでくっつけた開発機器があるとか判明。やっぱり諸々やってみないとこういうところにたどり着かないよね。 そんなこんなでメルカリ覗いていたら M5Stack Core2 が4000円弱で売っていたので、ポチってしまった。同じ感じでいっぱい出品されているのはなぜだろう?ちょっと分からないけど。。。 さて、メインで使っているのはASUSのChromebookにM5Stack Core2を接続してみたが、USBが認識しない。通常、ボードを接続すると「Linuxに接続」みたいなダイアログが出てくるのだけどうんもすんも言わない。 サイト には、『USBチップ CP2104 もしくは CH9102F(どちらかになります。選択することはできません)』とある。おや? 試しに、Macに ドライバー をインストールして繋いでみたけど、問題なく認識し、Ardiuno IDEから書き込む事もできた。どうやら、機器的には問題ない感じ。 ドライバーのDLサイト 、 チップのページ には何故かLinux & CH9102だけ無い。やっぱり駄目なのだろうか。少し調べてみ...

AppSheet使ってみた

イメージ
App MakerとAppSheet  昨年(2020年)1月にGoogleがAppSheetを買収し、おかげでApp Makerは廃止になってしまっているのですが、App Makerは少し触ってみたけど正直あまり使いやすいものではなかった。   App Makerについては、ある程度データベース設計が自動化されているのだけど、なんだか分かりにくく、ちょっと裏に回るとScriptが必要になる。インターフェイスも今ひとつイケてないので、凝るとハマるとか、学習コストが結構高い。組織内に限られる仕様もあって発展性も低く、恐らく誰かが作ったものはメンテ不可能だろう。生産性が高いのが売りだったけど、ほんまかいな。 AppSheetを触ってみて   AppSheetが買収されたのを期にお蔵入りとなったわけだけど、AppSheetは触った事なかったので試してみた。ノーコードでアプリが作れるという売りは本当だった。というより、コードを書くことはバックエンド作業くらいだろう。   スプレットシートのテーブルをリンクすると、勝手にデータ型を予想し、フォームの形が決まる。   スプレットシートの一つのテーブルの入出力、一覧表示、検索等は自動的にインターフェイスに入ってくる。  なかなか凄い。   位置情報のデータが有れば勝手に地図が表示されるし、型をDrowingに設定すれば写真も貼り付けられる(実際には写真をGoogle Driveにフォルダが作成され、アップロードされてスプレットシートに相対リンクの文字列が表示される)。 バーコード入力欄も型を選べば出来ると来たもんだ。  一般的な業務アプリなら結構すぐ作れそう。 凝ったワークフローとか設計するには向いていないかもしれないけど、元データをスプレットシート等で管理していたものだったら直ぐにスマホインターフェイスのアプリが出来てしまいそうだ。 AppSheetで作ってみた  日本酒造組合中央会の公開データから酒蔵のデータを集め、位置情報をGeocodeで収集して地図表示出来るアプリを作ってみた。慣れないので1日ちかくいじっていたけど、慣れれば1時間くらいで出来るんじゃないかな。 元のスプレッドシート データ設定画面とプレビュー(右 地図表示) 元テーブルと、コメント投稿用のテ...

Chromebookを便利に:複数Googleアカウントでログインと切替

イメージ
 Chromebookは基本的にGoogleアカウントで管理されます。会社のGoogle WorkspaceのGoogleアカウント、個人のGmailアカウント、予備用の別アカウント等、Googleアカウントを複数持っている人は多いと思います。複数のアカウントが時に混ざってこんがらがる、ということもしばしば。どう使えば良いのでしょう。  ログイン、ログアウトで切り替える事はもちろん出来ますが、同時に使いたい事は多いですね。複数アカウントを同時に使う方法は2種類あります。一つは同じブラウザウインドウで複数アカウントを利用する方法。もう一つはウインドウ毎に別ユーザーとしてログインする方法です。 同じウインドウ(タスク)で複数ログインする  Googleのサービスでは右上に現在のログインが表示されます。アイコンを設定している場合はアイコンが、設定していない場合はイニシャル(頭文字)が表示されているはずです。そこをクリックすると「別のアカウントを追加」というリンクが出てきて、別のアカウントを追加することができます。  この方法のメリットは、Chromebookにログインユーザーを登録せず、同じウインドウで簡単にユーザーを切り替えられる事ですが、デメリットとして、サービスを切り替える時に意図していない別ユーザーが混ざってしまうことです。数年前よりはかなり改善されてきていますが、Gmailのリンクからドライブへのリンクで権限が無くて(違っていて)開けないとか、Googleコンソールのユーザーが違って開けない(ユーザーを切り替える必要がある)というような事があります。これらの問題を防ぐ場合、次の方法解決してください。  なお、ウインドウ(タスク)が同じなのでCookieやキャッシュも共通になります。これもメリット&デメリット両方あるかと思います。 別ユーザーで同時ログインして切り替える  前述のようにユーザーが混ざってしまって使いにくい、あるいはCookie等、明確に切り分けたい場合、Chromebookの同時ログインの機能を使うことができます。この場合、完全に別タスクとして振る舞うのでCookieやキャッシュ等も明確に分けることが出来ます。  マルチユーザーでログインする場合、 Chromebookに事前に ユーザー登録 しておく必要があります 。最初のログイン画面(ロ...

Googleでも無制限のクラウドストレージ利用ができなくなる!

Googleのストレージに関する方針転換が始まっている。 最初はG SuiteからGoogle Workspaceへとブランド変更した時、無制限のストレージがなくなって一人あたりになった。大量にクラウド使用するときには従量制に。 次にGoogle フォトについて、自動的に高画質変換された写真データは容量使用無しだったけど、先日2021年5月末から容量が使用されるようになる アナウンスがあった 。 更に、同じ時期からGoogleドキュメントやGoogleスプレッドシートも容量を消費するようになるという。そもそもどの程度使用するか分からないのだけど、ダウンロードしたときのOfficeファイル程度なのだろうか。 貧乏くさい我としては、ポリシー変更前に写真やその他のファイルをGoogle形式でアップロードしまくるだけだ。

家でAirPrintの設定をする

iOSからプリンターに接続するには基本的にAirPrint。Macを踏み台にしてAirPrintで印刷、というのが案外簡単にできない。ググってもなかなか適当なものが出てこない。 そもそも、iOSから印刷するというニーズが少ないのかもしれない。写真等はコンビニでも印刷出来るし、MacやPCとiCloudやGoogleフォト等で共有してそれから印刷、というのが普通なのかもしれない。 でも1枚だけPDFを印刷したいなぁ、という時はたまにあって、そ言う時に簡単に印刷出来ないかと考える。もちろん、最近のプリンターはAirPrintに最初から対応しているというのもある。1つ前に使っていたインクジェット複合機は古い割にAirPrintに対応していた。だからニーズが無いのか? いっぽう、LinuxをプリントサーバにしてAirPrintで使う、というのは案外出てくる。一昔前にラズパイ2 B+を買ってあったはずなのだが、最近探しても見つからない。どこへ行ったものやら。Linuxだとavahi-daemonを使えばできそうなのだ。UbuntuやCentOS使ったものがちょこちょこ出てくる。 Macを使ったものだと、有料ソフトで、というのが多い。 handyPrint というソフトで、なんとなく有料は負け、みたいなケチ人間にはある程度のハードルとなる。ここでうじゃうじゃしている事を考えると、時給換算では数万円みたいになるので時間を金で買うと思えば安いが、やっぱり負けた感じ。いくつかの記事で1ドル以上と書いてあったけど、今では5ドル以上になっているようだ。CUPSは最初からMacOSにはいっているのだから、avahi-daemonを動かしさえすればよいのだろう。なのに、あまり情報が無い。なぜだ! 検索して最初に出てくるのは以下の記事。しかし、既に10年前の記事で今のOS、環境とはだいぶ違うし、同じようにやってもできない。駄目じゃこりゃ。 https://ascii.jp/elem/000/000/575/575397/ 追記 結局handyPrint入れてみる事にした。面倒なんでね。