Difference between revisions of "SafeCode"

From Hackstrich
Line 25: Line 25:
 
** Connectivity to daemon
 
** Connectivity to daemon
 
** Daemon's connectivity to the SafeCode box
 
** Daemon's connectivity to the SafeCode box
** Session status (in/not in session)
+
** Session state
 +
*** Not in session
 +
*** Client arrived, no check-in yet
 +
*** Check-in OK, in session
 +
*** Check-in non-OK, in session
 
** Time of next expected check-in (if in session)
 
** Time of next expected check-in (if in session)
  
 
[[Category:Current Projects]]
 
[[Category:Current Projects]]

Revision as of 21:25, 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 state
      • Not in session
      • Client arrived, no check-in yet
      • Check-in OK, in session
      • Check-in non-OK, in session
    • Time of next expected check-in (if in session)