tekion-server

サーバ仕様

作成するページ/API(優先順位順)

  • 情報取得API(pepper向け)
  • 投票API(クライアント端末向け)
    • 組織コード発行ページ
    • 個人識別番号発行ページ(TODO: 個人識別番号発行未実装のため投票時はユーザ共通トークンを使用する)
    • 組織ごとの各種設定値変更ページ(TDOO)
    • 組織ごとの現在情報確認ページ(TDOO)

投票できる項目

  • 普通/寒い/熱いの3項目

普通/寒い/熱い判定の判定方法

  • 情報取得リクエストが届いた時間から遡り,{x}分以内の票のみ有効票とする,
  • 同じ人(個人識別番号)からの投票は最新票のみ有効票とする.(TDOO: 個人識別番号の発行ページ作成後に実施)
  • 有効票が{y}票以上の票で確定とする.
  • 有効票が{y}票以上の票がない場合は,"普通"にする.
  • "寒い"票と"熱い"票が同票の場合は,"普通"にする.
  • "普通"票と他の票が同票の場合は,"普通"にする.

情報取得API仕様

  • プロトコル:HTTPS(実装が難しければまずはHTTPで作成する)
  • HTTPコマンド:GET
  • URL:https://{host}/api/display?username={組織アカウント名}&userToken={一般ユーザアクセストークン}
  • データ形式:JSON
  • JSON形式:{"result" : {number}(判定結果:0=普通,1=寒い,2=熱い), "weather" : {number}(気象:0=none, 1=晴れ, 2=曇り, 3=雨, 4=雪), "temperature" : {number}(温度)}

投票API仕様

  • プロトコル:HTTPS(実装が難しければまずはHTTPで作成する)
  • HTTPコマンド:GET(TODO: POSTにしたい)
  • URL:https://{host}/api/vote?username={組織アカウント名}&userToken={一般ユーザアクセストークン}&vote={投票コード(0=普通,1=寒い,2=熱い)}
  • データ形式:なし(TODO: JSONでデータ送信,responseヘッダで結果確認の形式にしたい)
  • JSON形式:{"groupId" : {string}(グループID), "token" : {string}(アクセストークン), "vote" : {number}(判定結果:0=普通,1=寒い,2=熱い)}