top of page
この機能を試すには、ライブサイトにアクセスしてください。
はじめまして、日本語のコミュニティがあり質問したいと思います。
私は、アップシートを使い始めてまだ数日です。
さて、質問ですが、chatの機能が欲しいと思っています。
画像のようなチャット機能はどのようにして作るのでしょうか?テンプレありますか?
はじめまして、日本語のコミュニティがあり質問したいと思います。
私は、アップシートを使い始めてまだ数日です。
さて、質問ですが、chatの機能が欲しいと思っています。
画像のようなチャット機能はどのようにして作るのでしょうか?テンプレありますか?
7件の回答3件の返信
いいね!
10件のコメント
bottom of page
ありがとうございます。
勉強しながら作ってみます。
上記のサンプルアプリが出来たら、INBOXを設置する。つまりSLICEを活用してみるという段階に入れますが、そちらも簡単です。まずは先程サンプルにあったMESSAGE APPを完成させてくださいませ。
GLIDE、知っていますが、APPSHEETと同じ土俵に見えますが、わたしの意見としては別分野のツールと思います。
操作は簡単、また見た目も美しいですが、逆にいいますと難しい操作、カスタマイズが効かない。。
このアプリの公開者、コピー可として設定してないようです。
でも、超簡単です。
まず、googleシートか何かで、いかのようなテーブルを作ってアプリに読み込ませてください。
<カラム名> ()内はデータタイプの設定
ID (text)
TIMESTAMP (datetime)
MESSAGE (longtext
USER (email)
これが一つのシートです。
別のシートに以下のカラムを作成してください。
ID (text)
PHOTO (image)
MESSAGE ID (ref)
ー
この二つのテーブル(シート)をアップシートのエディタで読み込ませてください。また、()内にあるようにデータタイプをそれぞれ指定してください。
以下、重要な点。
まずtimestampというカラムには恐らく自動で、initial valueにnow()という関数が加えられていると思います。アップシートは頭がいいので、からむの名前からタイプを推測し、initial valueも設定してくれます。
新しいrowを追加すると初期値として現在の日時を打刻。
つぎにuseremail
ここのinitial valueにuseremail()という関数を入れてください。これにより初期値として、ログインしたユーザーのメルアドを取得し入力してくれます。書き換えられるとまずいのでEDITABLEというのはOFFにしましょう。
つぎに、二つ目のシート。
肝心なのは、MESSAGE ID
一つ目のテーブル・シートと親子関係を作ります。
REFにして指定したら対象のTABLEとして一つ目のテーブル名を選択。
また、ISPARTOFもONにしましょう。
これだけで、先程のアプリと同じものができるはずです。
トリックが分かれば簡単なんです。
お試しください。
添付されていた写真にあるアプリのサンプル画像。
こちらは、スライスを活用していると思われます。
メッセージのテーブルに、カラムを追加し、フラッグとして利用。このフラックのVALUEでINBOXというViewに表示するか否かをsliceのfilter条件で設定。
例えば、defaultの状態、メッセージを作成した段階では、そのカラムのvalueはnill。
そして、データがセーブされ、相手に見れる状態になると、inboxというviewそのrowを表示させます。スライスの結果です。そして、その人がそのメッセージを読みましたよ、ということを検知するために、アクションボタンで、データを書き換える。おそらくは、上記のカラムに、ユーザーのid,つまりメルアドをスタンプしていると思います。
そのスタンプの内容とuserのログインidが合致したら、inboxには表示させない。つまりはスライスの条件から外れるという仕組みでしょう。
簡単なトリックです。
https://www.appsheet.com/samples/Messaging-System?appGuidString=a315094e-7b82-4dac-a921-0a127bbf49eb
こんなサンプルアプリがありました。相手は不特定(アプリユーザー全員)が見れる形のようですが、送信者のID(メールアドレス)が自動でスタンプされ、メッセ―時としてアプリに表示させる仕組みです。チャットというかメッセージボードアプリですね。
Appsheetのオフィシャルのコミュニティーにも同様の質問が寄せられていましたね。
結論から申し上げると、lineやその他chatツールと同様のchat ツール、つまりは相手がコメントを送信したと同時に受けての画面にそのメッセージが表示されるような機能の実装は現状難しいです。と申しますのも、リアルタイムのチャットには、firebaseやfirestoreなどのリアルタイムでデータの追加・変更をユーザー端末にpushしてくれるようなデータベースには対応しておらず、仮にchat相手が新しいメッセージを送信した場合、受け手側は、その都度、アプリを更新=同期し、データベースを読み込まなくてはなりません。従い、純粋な意味でのチャットアプリには至りません。但し、メッセージの送信相手を指定し、アプリ上にメッセージを残したり、相手のメールアドレスにメールという形でメッセージを送信。もしくは携帯端末にpush notificationを送付するなどという機能であれば簡単に実装可能です。