質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
mBaaS

mBaaSとはモバイルアプリケーションでの利用に特化したBaaSです。スマートフォン向けのWebアプリケーションが必要とするサーバ側の様々な機能をインターネットを通じてサービスとして提供しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

444閲覧

Unity,NCMB:NCMBで制限時間付きアンケートを実装する

Linkins

総合スコア82

mBaaS

mBaaSとはモバイルアプリケーションでの利用に特化したBaaSです。スマートフォン向けのWebアプリケーションが必要とするサーバ側の様々な機能をインターネットを通じてサービスとして提供しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2019/01/18 09:40

UnityとNCMBを用いて、ツイッターにある制限時間付きアンケートのような実装しようと思っています。
・ユーザーが制限時間を指定してアンケートを公開
・他ユーザーは制限時間以内なら投票可能、時間外なら投票不可
といった内容です。

この"制限時間"の実装についての質問なのですが、
NCMB側で時間経過を検知し、任意のメソッド(例えば、投票可/不可を判定するbool値の切り替え)を実行することは可能でしょうか?
NCMBに用意されているスクリプト機能は、ユーザー側からの単発的な呼び出しに応じるモノであり、NCMB側で自律して時間経過などの継続的な検知をするものではないと認識しているのですが、この認識は間違っていますでしょうか?

試したこと:
・投稿者がアンケート内容をNCMBに保存する際、「制限時間の締め切り日時」を日付型でデータに入れておく
・他ユーザーがそれを閲覧する際、現在時刻と「制限時間の締め切り日時」を比較して、投票の可否を判定する

この方法でも一応実装できたのですが、"制限時間"の判定は閲覧ユーザー側で逐一行うよりも、NCMB側で判定してアンケートのデータ自体を「制限時間超過」へと切り替える方が理想的なように思います。

回答よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

NCMB単体で定期実行は出来ないようですが、Google Apps Script等を使って外部から定期的にNCMBを呼び出すことは可能なようです。
Google Apps Scriptを使ってmBaaSを定期実行する - ニフクラ mobile backend(mBaaS)お役立ちブログ
(他、「NCMB 定期実行」でググると情報が出ます)

後はスクリプト機能で「現在時刻」が取得出来れば可能かと思います。
(実際に使ったこと無いので試してみてください)


なお、仕様やユーザー数によっては「無駄に定期実行しまくる」という可能性もあります。
それを考えると、定期実行ではなくユーザーからのアクセスをフックにした方がいいかもしれません。

  1. 誰かがアンケートを閲覧する際、まず有効フラグをチェック
  2. 有効な場合は日時をチェック
  3. 締め切りを過ぎていたら有効フラグをfalseに

例えばこんな処理(要は「締め切り後、最初にアクセスした人に有効フラグをオフにさせる」)にすれば、日時チェックの回数を減らすことが出来ます。

投稿2019/01/18 10:08

sakura_hana

総合スコア11427

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Linkins

2019/01/18 12:27

回答ありがとうございます! ユーザー側フックで進めてみようと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問