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=熱い)}