Mattermost, Inc.

Guidance/feedback wanted: building telemedicine service

Hello all,

I’m working on a telemedicine service ( that we’re working to launch across Canada. The service offers consumers iOS and Android apps that would connect them to a range of healthcare providers via messaging, video and voice. The UX is very much centered around messaging, notifications, conversations, etc.

We’re developing the apps for consumers as well as the triage and care platform for providers.

So Mattermost open-source looks like a good platform for us to use to set up conversations between patients and providers.

Given that messaging in healthcare is a popular and growing use-case I figured I’d post our open questions here, perhaps others have already thought about them:

  • Patient authentication: we use Auth0 as our auth provider and JWT tokens for authorization with a few external services. Given that Mattermost Platform (team edition) doesn’t support JWT, we’re planning to create a user account in Mattermost and manage it ourselves. The password for this account would be auto-generated and would not be exposed to the patient. Is there a better way to have patient’s identity represented in Mattermost?
  • Modelling conversations: whenever a patient starts a chat with an issue, we’re thinking of creating a channel that would represent that conversation. Providers who are involved in providing care would be added to that channel. We’d need to build the triage UX that supports dealing with a large number of channels. Are there any concerns with having an org with a large number of channels (1000+)?
  • The UI of the Web app obviously wasn’t built for telemedicine triage, so we’re building our own. How realistic is it to hope that Mattermost Web UI can be forked and be built upon or extended? What about the other way around - how crazy it is to suggest that a conversation view can be embedded into a React app?
  • The service we’re running would soon have dozens of provides for thousands of patients. Any concerns with scale?