GithubHelp home page GithubHelp logo

ususama's Introduction

Ususama (烏枢沙摩)

ususama1 ususama

このプロジェクトについて

トイレ個室の空き状況を確認できるようにする、マルチメディア研究サークルの1プロジェクトです。

主担当は伊藤いっちーです。

みなさんの意見を聞きながら、プライバシーや心理的不快感、安全性などの面に問題無い形で運用していきたいと思っているので、ご意見・ご感想などは、Slackの #toilet チャンネルまでお気軽にお寄せ下さい。

問題意識

2016年ごろから、社員数の増加に伴い、混雑時にトイレの個室が埋まっておりなかなか利用できないケースが増えました。

このプロジェクトでは、トイレ個室の空き状況をセンサーで可視化し、自席などから確認できるようにすることにより、 トイレへの無駄足を避け、より業務の生産性を高めることを目的にしています。

使い方

現在、6F/7Fの男子トイレ個室が確認対象になっています。

個室のドアの開閉状況に応じて、@jujunjun110(6F), @icchi-(7F)のSlackステータスが変化するので、トイレに行きたいと思った時に確認して使います。

image

↑これです

それぞれの絵文字が以下の状態を意味します。

  • ... 個室2つとも空室
  • ⚠️ ... 個室1つのみ空室
  • ... どちらも満室

※ マウスオーバーで最終更新時間を確認できます。古い時刻の場合はうまく動いていない可能性が高いので、変だと思ったら実際にトイレに行って目視での確認をお願いします。

また、以下のようにStar機能を使うとSlackサイドバーの上部に固定できて便利です。

star

使っている機器と配置

機器の配置

処理の流れ

  1. 近接センサーから、ドアの開閉状況を1秒ごとに取得
  2. 7秒間連続で、現在表示している状態と異なるドアの状態が取得されたら、Slack APIにHTTPリクエスト
  3. 対象のSlack Statusがトイレの空き状況を表すものに変化する

プライバシーについて

このプロジェクトで利用しているセンサーは近接センサーといい、赤外線によって「センサーから一定の距離に物があるかないか」を測定するもので、これによってドアの開閉を個室の空き状況として利用しています。

ususama2

近接センサーによって、個人の特定や、人の動作の特定をすることはできないのでご安心ください。

また、メインマシンとして利用しているRaspberyPiという小型コンピューターにも、カメラ・マイクといったセンサーは付いていないので、システム全体としてプライバシー情報を取得することは不可能な構成となっています。

また、実行されているソースコードはこのGitHub上で公開されており、ドアの開閉以外のデータを取得していないことを誰にでも確認いただけます。

壊れない範囲で、システムを触ったり調べてみたりしても構いません。

その他、懸念することがある方は遠慮なく #toilet へお寄せ下さい。

FAQ

Q. 別のトイレへの設置予定は?

A. ありません。 1F・8Fは外部の方も利用し、周知などが難しいため。

スクエアのトイレや女子トイレは、協力してくださる方がいたら技術協力はするつもりです。

Q. ビル管などへの許可は大丈夫?

A. 総務の方が話を付けてきてくださったので問題ないと考えています。感謝😌

Q. なんでSlackステータスなの?

A. トイレの空き状況確認するのに毎回何かをクリックするのも面倒なので、なるべく一発で確認しやすい場所としてちょうどよいかと思ったので。

ただ、Slackスマホアプリからだとキャッシュが効いていて、最新状況じゃないこともあるようなので、別の方法も考えています。 いい案がある人は教えてください。

個人のステータスを使い続けるのは微妙すぎるので、ちゃんと動くようになったら専用のアカウント作れればいいなとも少し思っています。

Q. プロジェクト名の由来は?

A. 密教における明王の一尊であり、火神・厠の神として信仰される烏枢沙摩明王(うすさまみょうおう)から。(詳細

ususama's People

Contributors

ebizo-0202 avatar

Watchers

 avatar  avatar  avatar

ususama's Issues

ネットワークエラーでプロセスが終了しないようにする

現状、以下のようなエラーによってプログラムが停止してしまう。
エラーハンドリングなどで、プログラム自体の停止はしないようにしたい。

Traceback (most recent call last):
  File "main.py", line 53, in <module>
    slack.post_status(bool(room1['status']), bool(room2['status']))
  File "/home/pi/ususama/slack.py", line 18, in post_status
    'profile': profile
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 94, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 49, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 457, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 569, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 407, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', gaierror(-2, 'Name or service not known'))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.