Giter VIP home page Giter VIP logo

ihub-pti / boldo-web Goto Github PK

View Code? Open in Web Editor NEW
8.0 8.0 8.0 4.85 MB

Browser based web application for Boldo (Doctors).

Home Page: https://boldo.penguin.software

License: GNU Affero General Public License v3.0

HTML 2.70% TypeScript 90.14% CSS 0.60% JavaScript 6.44% Dockerfile 0.11% Shell 0.01%
create-react-app doctor-appointment-management paraguay reactjs socket-io tailwindcss telemedicine webrtc

boldo-web's People

Contributors

davidcab avatar dependabot[bot] avatar elias7991 avatar everfgmolinas avatar ginojunchaya avatar jemaromaster avatar joelepping avatar mrandvx avatar pa1nd avatar rbenitez94 avatar sebasrival avatar srpablino avatar zommerberg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

boldo-web's Issues

WebRTC not freeing resources

There is a number of issues related to the call feature. They are all based in missing cleanups of the WebRTC connection.

To fix this:

Add Flash Messages

Add flash messages for success, error and info that can provide user feedback where no form is to validate.

The flash message should appear on the top right and disappear after a short time.

It should also be possible to show multiple messages, they should stack below each other.

This is particularly important for the Call. As there are various things that can go wrong and this is the only location which can show them nicely.

They should be rendered globally inside the App.tsx to keep flash messages appear across pages.

Handle page-reload

Problem:

  1. It is too easy to accidentally leave the page during the call as a doctor. Navigation events and page reloads should require a confirmation during the call.

  2. While in a call, on a page reload, the connection should reestablished.

To Implement 1:

We can make use of a confirm() pop-up on page navigation. This should be triggered for native browser navigation as well as the react-navigation plugin.

  1. This seems to be tricky. Might be fixed after the call is cleaned up.

fix openAppointments Endpoint

The endpoint is not implementing any logic right now.
Also it doesn't deserve to be it's own endpoint. Instead it should be a query param.

It should

  • Fetch data
  • Fetch events from DB
  • Calculate correct status
  • return only relevant ones

Implement Mute and Turn off Video

Buttons are not implemented currently.

It is not clear how to tackle this issue. It might have todo with the MediaDevice. More research is needed.

Before we tackle this, it seems to be a good idea to cleanup the call.

Also: We should show a visible symbol of muted audio or video on the screen, as those buttons are hidden behind a menu button.

Appointment Room States

Every appointment has a room which handles the "Waiting Room UI" and the "Call".

This room has the following states:

  1. No permission - no appointment with given ID for this doctor
  2. Closed - Before and after the appointment
  3. Waiting Room Open - 15 minutes before appointment until appointment marked as finished
  4. Patient is connecting - Establishing Call
  5. Call - Call in Progress

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.