こんちゃ。洋梨🍐です。
僕の通ってる大学(日本大学)では「日本大学健康観察(日本大学健康管理システム)」というところで毎日体温を登録しなければいけなく、これを怠ると学校に入構出来ないといった仕組みとなっているそうです。
しかも、こちら登校日含む1週間も登録していないと入れないらしく、途中一日でも忘れたら入れないという神システムになっている模様。
聞いたところ皆さん脳死でとりあえずそれっぽい体温を毎日入力しているだけの様でなんの意味があるかあまり分かりませんが、これで本命の学校に入れず授業が受けれず単位が取れないなんてことになったら本末転倒です。
「勉強に集中しすぎて体温登録わすれて単位落としそう、、、」
「入力したいけど忙しすぎてログインしたり手間かかるしそんな時間ない🥺」
「真面目に毎日測ってて1日忘れたらこれで入れないの、、、ぱおん👼」
そんな方のために
「簡単に入力できるようにする」
「自動でとりあえず登録、後から自分で変更する」
これらを実現することで、勉強などで忙しい方でも入力出来たり、万が一、1日入力忘れてしまっても登校できずに勉強に支障がでることを無くせるのではないかという善意で作ってみようと思いました☻
作ってみたシステムについて
今回作ったシステムは「らくらくとうろくしすてむ」です。
このシステムでは日本大学の体温登録システムに対して、「自動で体温登録」「簡単な入力で体温登録」ができるものとなっています。
まず、作ってみたシステムについて説明していきます。
即席(1日)で作ったのでデザインとか動作チェックとかしっかりできてませんが、理論上動きます。不具合における責任は一切負いません^^
※なお、動かなかったら低スペックRAM1GB・格安VPN(324円/月)のせいだと思ってください(適当)
使い方
「らくらくとうろくしすてむ」を唄うだけあって簡単に使えるようにしました☻
らくらく入力
ここでは自分で好きな体温などを入力し、送信することができます。
健康管理システムはログインがめんどくさい!という方はこちらをご利用ください。このサービスは初回ログインのみでその後はログインしないでこのページにアクセスできるのでスムーズに入力ができます👼
自動登録
右は登録ボタンを押すだけで毎日(13時)自動で決められた数値(36.4、36.6℃)が自動で登録されるようになるボタンです。
メールアドレスを入力すると登録完了メールが届くようになります。(メールが来なかったら何らかの理由で出来てないという事がわかるね!)
自動登録が作動するとそれまでに入力していた値があった場合、(13時までに入力していた値)は上書きされてしまいます。自分でしっかり体温登録したい人は使わないほうがいいとおもいます。
ログアウト
これは通常利用する意味がありません。ログアウトしたからと言って自動登録は解除されません。登録解除は解除ボタンを押してください。
動作の仕組み
このような仕組みを作るにはいろいろな方法がありますが主に
・通信を解析し、同じ通信を行う
・仮想ブラウザ等でアクセスし、同じ動作を行う
的な事をします。で、今回は安全に下の方法(つまり普通にアクセスし、普通に入力しているのと変わらない)を選択してます。ので安心してご安心ください^^
分かりやすく言うと皆さんがいつもやっているログイン、入力、送信を決まった時間に(仮想)スマートフォン上で自動で同じことをやっているだけです。
動作保証
全く保証しません。先ほども書きましたように低スペックなサーバを使ってます。遅いです。動作しなくても怒らないでね。あくまで補助的、自分用に開発したなものです。
ちなみに正常に動作していると(自動登録機能)このようにメールが届きます。
Gmailでは正しく表示されないみたいです、すいません。
これ以下はコンピューターチックな話です。興味ない方はトップへどうぞ!
動作環境
今回このシステムは Node.js + Express(サーバー) +Puppeteer(操作用)で構築しています。
Puppeteer てのは初めて使ったのですがすごく便利ですね👼
スクレイピングとして一般的に使われているようですが、これ色々な用途に使えそうですね。面白いです。
JQuery感覚で使えるってのがなお良しです!
使ったことない人使ってみてください^^
Expressに関してはWebサーバーを簡単に構築できて文句なしです。
ejsとセットで使うのが個人的には好みです。
学校のシステムについて
今回学校で使用されることとなったこの「日本大学健康観察システム」ですが、毎度のこと色々な欠点があり、どうしても気になってしまいます。
しかし、今回の気になったのは今までの「沢山(?)のユーザーが同時ログインができない」とかそういった今までのとは違く、ほかのユーザーの体温などが書き換えれてしまうというシステム上の脆弱性が存在するためです。(といっても大したレベルのものではないのですが)
詳しくは書きませんが、ログイン済みアカウントと登録先アカウントが違う場合でもリクエストを受け付けるというなんとも甘いセキュリティなサービスである程度パソコンができる人なら2、3分で発見してしまうような欠陥です。
自分はこれを使って何をするわけではないのですが、悪意ある人に使われる可能性があるという事は良くないのではないでしょうか🥺
学科ページとかならわかるのですが、他の学部も使ってる大学のシステムらしい(つまり他学科の生徒の記録を書き換えて意図的に登校できなくさせることができてしまう)ので気になりますよね笑
レベル的に推測するにおそらく日大の先生だかがを一人で作って気付かなかった可能性はありますが… 一人だと気付かないバグは結構あるので周りの人チェックしてあげてくださいね
ちなみに「先生に報告したほうがいいんじゃない?」そう思う人もいるかもしれませんがあまり意味ないですよ。経験談とは言いませんが笑
まとめ
自分用に作ったけど欲しい人いそうだったので公開したよ。
自己責任で使ってね☻
(2021.10.09 追加) 思ったより使ってくれてる人がいたり、このツールを有料で売ってるなんかやばい人もいたのでいずれ改装して安定・使いやすさ向上させようかなとも思ってます。しばしお待ちを、、、
ホームページでは他にも
・様々な記事や作った作品および過程
・ソースコード、素材ファイル
・あらゆる”モノ”の作り方
などなど随時、記事や作品を新規公開・更新していますので是非見ていってくださいね!見ていただけると本当に嬉しいです!