Internet connectivity and remote access


Many destinations have, at least, low bandwidth internet connections in the evening. Let fEMR detect that internet has become available and allow a remote connection to the system. Use cases for this:

Use Cases

  1. Be able to perform software updates so that

  • Systems can ship out early

  • Systems can become more permanent in clinics without becoming outdated

  1. Be able to perform database backups and merges so that

  • Data can be safely backed up before travelling home

  • Systems can sync to a unified global database

  1. Be able to access logs so that

  • Issues can be resolved quickly during a deployment

Solution Components

  1. Internet Connectivity: Play Framework Tasks allow fEMR to schedule checks for internet connectivity

  2. Remote Access: Jsch creates a reverse SSH tunnel to a central fEMR server for us to hook into

  3. Orchestration: Central fEMR app for orchestration of online notifications and system identification

  4. fEMR Notifications: Alert for an administrator to show that an update to fEMR is available

Component Configuration

  1. Internet Connectivity: On/Off switch, timeout window, internet check window, central server endpoint, awake signal window


  1. Internet connectivity check:

  2. Remote SSH access:

  3. Remote SSH access connectivity fix:

  4. Fix for mass process spawning on AWS server:

  5. Turn off SSH attempts if no internet is found:

  6. Change default configuration to off and move config into application.example.conf


Alex Nakhleh


Kevin Zurek

Additional Assignee