Difference between revisions of "SafeCode"

From Hackstrich
(Decided on the Storm 6000 keypad. Expensive but reliable and nice looking.)
Line 16: Line 16:
 
* Web service that runs on an outside server that reports status to others
 
* Web service that runs on an outside server that reports status to others
 
* Keepalives between all components to indicate that a connection was broken
 
* Keepalives between all components to indicate that a connection was broken
 +
 +
== Web Service Architecture ==
 +
* Sinatra-based daemon
 +
* Accepts WebSocket connections from the daemon talking to the SafeCode box and monitors to ensure that connection stays open and that keepalives are being received
 +
* Serves web pages & uses WebSockets to update status in real-time for anyone monitoring
 +
* Keeps state of:
 +
** Current geographical location
 +
** Connectivity to daemon
 +
** Daemon's connectivity to the SafeCode box
 +
** Session status (in/not in session)
 +
** Time of next expected check-in (if in session)
  
 
[[Category:Current Projects]]
 
[[Category:Current Projects]]

Revision as of 17:27, 2 June 2013

SafeCode is a software/hardware solution to handle digital safe-calls for independent in-call sex work.

Project Status

  • 2013-06-01: Started thinking about/planning.

Hardware

  • Small/portable box
  • Rugged design, as it will be thrown in bags/traveled with constantly
  • USB connected/powered
  • Keypad on top to enter data (Storm 6000-21001, telephone-style 12 key + Cancel, Clear, Help, Enter)
  • Lighting to provide feedback for "entry received" and such
  • Beeper for indicating exceeding check-in time without checking in

Software

  • Daemon that runs on the local machine talking to the SafeCode box
  • Web service that runs on an outside server that reports status to others
  • Keepalives between all components to indicate that a connection was broken

Web Service Architecture

  • Sinatra-based daemon
  • Accepts WebSocket connections from the daemon talking to the SafeCode box and monitors to ensure that connection stays open and that keepalives are being received
  • Serves web pages & uses WebSockets to update status in real-time for anyone monitoring
  • Keeps state of:
    • Current geographical location
    • Connectivity to daemon
    • Daemon's connectivity to the SafeCode box
    • Session status (in/not in session)
    • Time of next expected check-in (if in session)