Roman Orlovskyy

Chats in online communities: a logical step towards better user engagement

Posted by Roman Orlovskyy on April 9, 2019

We love online communities for providing a comfortable place to touch base with people who have the same concerns and views, to share experience, to get help and advice. Moreover, even for non-members, searchable online communities are a priceless source of first-hand information – we all like to read user reviews when choosing a product, don’t we?

There are lots of statistical data showing that people generally tend to trust user reviews better than business ads. We browse dedicated community boards when we need peer support and encouragement on any matter of our lives – from choosing a book to read to applying for a job.

The value of online communities for members and non-members alike is hard to overestimate. Yet, even the most popular communities have been noticing a tendency for groups of users to fall off and form closer-knit sub-communities on other platforms using other real-time messaging apps. The reason was found soon – online communities in their basic format failed to provide one of the necessary functions – a space for private conversation.

In this post, we will try to analyze why community members may seek chatting options and how online communities can resolve this problem and retain their user base by adding a chat function.

Reddit’s Place phenomenon

The story of Reddit’s April Fool experiment is a perfect example of a community naturally coming to the idea of implementing in-app chat. On April 1, 2017, Reddit launched its social experiment called Place. More than 100,000 communities (which are called subreddits in that corner of the Internet) were invited to participate.

The point of the game was to add pixels of different colors to a 1000×1000 canvas and eventually change their colors to create a certain image. The communities joined the challenge with enthusiasm, and when the project ended 72 hours later, the result was a complicated mosaic of art, patriotic symbols, flags, logos, sports emblems, and a lot more. The primary purpose of the experiment – showing how total strangers can collaborate towards a common goal – was achieved, and the project left both the participants and the watchers equally excited.

However, during the experiment, the organizers noticed a distinct trend in the participating communities – while discussing their pixel-placing strategy, they took their conversations elsewhere rather than messaging in their subreddit boards. The subreddit board proved unsuitable for the purpose, as to see new messages you need to refresh the page. Time was critical, and the communities started to move to Slack, Google Docs or Facebook Messenger.

This observation got the Reddit team thinking about introducing the chat feature in their community, so that to keep members from looking for other options. Any subreddit can start its own chat room to hold community-related conversations. Chats implemented directly in the community platform are going to keep the users within the Reddit ecosystem while offering the instant communication option with the degree of privacy that a closed community might seek.

What can we conclude from Reddit’s example?

While Reddit is a “super-community” giving space to a great number of groups, from blockchain enthusiasts to expectant mothers, communities formed around a single field of interest can also experience the same tendency to create smaller groups needing a private space to chat.

For example, a community dedicated to cooking and recipes is eventually going to form sub-communities for dieters, vegans, ethnic cuisine lovers, raw food enthusiasts, meat eaters, just to name a few. Or, in a music community, you will soon find groups for classical, rock, indie, ambient, as well as groups for fans of particular bands or performers. In all cases, users will gravitate towards one or several smaller communities seeking soul mates. The next logical step will be to look for a space to chat privately or in a small group of like-minded people.

If we again look at the list of Reddit communities dedicated to music, we will find pages after pages of subreddit names by genre, period, region, performer, as well as other criteria. In each group, people band together according to their music preferences and tastes.

Image credit:

Communities are designed to share thoughts, ideas, and knowledge, to ask questions and receive answers, to seek assistance and empathy. They are highly searchable, as one of their primary purposes is to provide public information. A dedicated community maintaining high quality of its content is sure to attract more users who are going to generate more content. That is the natural cycle of any online community allowing it to grow and gain popularity, but it leaves no space for private communication, either one-on-one or in a small group.

For this reason, community members start looking for other places where they can chat away from the public eye. When the community does not offer a chat feature, users may opt for a different tool, such as Slack or Facebook Messenger or other real-time chat apps. The danger here is that users may also find it comfortable enough to continue communicating outside the community and abandon it completely.

This leads to the idea of enhancing the community with an in-built chat function, so that the users can both participate in the public forums where they can express their opinions, share links, images, and videos, join publicly available discussions, and have an option of chatting to each other privately.

What can online communities gain by adding a real-time chat?

For the users, the ability to chat right within the familiar environment of their community gives, on the one hand, privacy that can hardly be achieved on forum boards, and, on the other hand, real-time messaging that, again, a forum board cannot provide. Real-time messaging will be appreciated, for example, by sports fans who will be able to watch a game live and comment on it in real time.

For the community, chats have much more meaningful benefits. Since their members are not leaving the community platform to chat, the engagement and retention is much higher. This is the ultimate goal of integrating a feature into the native user experience – to not let the user leave! Once they leave, they may not return.

By implementing the chat function, the community continues to serve as the place where members can express their public thoughts, ask questions for everyone to answer and publish searchable content; at the same time, the community provides an opportunity for private real-time conversation for those who need it.

Which communities will be the first to benefit from implementing chats?

Of course, if we talk about privacy, the first thing that comes to mind are healthcare communities. While people generally tend to discuss health matters in private, there are also multiple regulations in effect, such as HIPAA, that require service providers to ensure the protection of patients’ data. Healthcare communities sometimes also provide space for telemedicine consultations that definitely require an option of a secure video or text chat between a doctor and a patient.

In the same context, we can also mention communities that are very close to healthcare, such as expectant or new mothers, as well as fitness and diet groups. Besides, forums discussing legal or financial issues may also appreciate an option of private conversation.

Various religious, charity or other non-profit organizations often run online communities to circulate their news or messages and bring new followers. Such communities often serve for donation purposes where privacy and discretion are sometimes critical. Direct communication hidden from the rest of the community as well as from the rest of the Internet may be greatly appreciated here.

Speaking about privacy, we should also mention LGBT communities that, by their nature, tend to remain as private as possible. While maintaining public platforms to declare their values and hold open discussions, LGBT communities will also benefit from the possibility of chatting in private, when needed.

Sports or game communities are going to love the real-time messaging possibility, as in their field of interest time is often critical. A chat room discussing a live game or a multiplayer strategy is often the very essence of such communities uniting enthusiasts from around the globe.

Generally, any community will benefit from a chat function. Whatever its main field is, any group is likely to break into smaller groups that will need a private space.

The solution

In fact, we have named the solution already, and more than once. Adding a customizable chat feature to the online community is going to resolve the members’ privacy problem and retain them within the community perimeter. This way, the community will maintain its public platform that is the main focus of its activity and also create a private chat space.

If you are thinking about how to make a real-time chat application, there is a much simpler solution. The most straightforward way of adding a chat to a community is by using a ready-made chat functionality that can be integrated via a real-time chat API. QuickBlox SDK is a secure and effective solution for implementing chats in any online platform. Our products can be used to integrate both a text chat and a real-time video chat to enable the most natural face-to-face communication.

We offer highly customizable feature-rich communication software that is easily integratable into most platforms. Our real-time chat servers run in secure cloud services complying to all current requirements to user data protection. The QuickBlox chat SDK allows to add messaging to your app in an easy and intuitive way.Contact our experts for a consultation, and we will gladly help you to add the real-time chat feature that your members are going to love. Browse our website to see the communication solutions that QuickBlox offers. Visit our documentation page for the technical descriptions of our products, guides and code samples.

Roman Orlovskyy

HIPAA Compliance Statement

Posted by Roman Orlovskyy on April 2, 2019

Health Insurance Portability and Accountability Act, or HIPAA, came into effect in 1996 with the main purpose of setting the standards of managing health-related information and protecting it from compromise. The requirements of HIPAA apply both to health care providers that the Act refers to as “covered entities” and to vendors of health care services that are referred to as “business associates”.

One of the central entities of HIPAA is Protected Health Information, or PHI. PHI covers any health-related data that can be used to identify the patient, such as name, address, age, diagnosis, and a lot more. Under HIPAA, both covered entities and business associates must protect any PHI that they gather, capture, store, and transmit.

Among other things, HIPAA sets certain rules and standards to websites and their functional components aimed at ensuring the security of PHI both at rest and in transit. Websites are included in the category of “business associates” and are required to comply. Any website that stores, collects or transmits PHI is subject to HIPAA rules.

Quickblox communication products are an excellent solution for all online customer services and communities, including those operating in the healthcare industry. Therefore, we have adapted our practices to the HIPAA requirements to make sure that our products are HIPAA-compliant and that any information that can be described as PHI is properly protected.

In this document, we have put together a summary of measures that Quickblox takes to ensure HIPAA compliance.

Use of HIPAA-compliant cloud services

Quickblox services can be hosted in AWS cloud. AWS has brought the entire line of its cloud services in compliance with the HIPAA requirements and has officially confirmed such compliance on its website. All AWS instances that we use to run Quickblox applications fully comply with the requirements to PHI protection both at rest and in transit.

Use of dedicated AWS hosts

For the cases when additional protection measures are required, we offer dedicated hosts – separate physical servers that will be used solely for the client’s application. While AWS no longer requires the use of dedicated hosts for the purposes of HIPAA compliance, we still offer this option for extremely sensitive data management.

Encryption of EC2 and RDS volumes

To ensure HIPAA compliance in respect of protecting data at rest, Quickblox uses encryption of the storage volumes used in building its cloud infrastructures. We encrypt both the storages attached to EC2 instances hosting the application and the RDS instances storing the database.

We use AWS encryption protocols created with the focus on HIPAA compliance and capable of protecting data during its entire lifecycle.

Use of HIPAA-compliant MongoDB database

With the aim of using the tools that implement own HIPAA compliance measures, we selected MongoDB as one of our database providers. MongoDB has adapted its database services to ensure the protection of PHI as required by HIPAA. Particularly, the database meets the requirements to user authentication and authorization, system security audit, and encryption of data at rest.

Data encryption in transit

For data traffic between AWS EC2 instances, we use the Amazon VPC with its integrated encryption mechanisms. For data exchange between the MongoDB database and external sources, we implement TLS/SSL encryption mechanisms with the help of stunnel TLS Proxy ensuring secure data traffic to and from the database.

For data caching, we use Redis database that encrypts its data traffic with the help of Spiped utility.

High availability/Disaster recovery support

HIPAA requires the HA/DR support for RDS instances to ensure the availability of the database during any system failures or planned maintenance. We use the Multi-AZ deployment option provided by AWS where RDS instance replicas are automatically launched in other Availability Zones. With Multi-AZ, data is constantly synchronized between the main RDS instance and its replicas to make sure that the replicated database is always up-to-date and can be used to retrieve the data should the main one fail or be otherwise unavailable.

We follow closely both the updates to the data protection regulations and the news on advanced security tools and discovered threats. With the aim of maintaining the maximum protection of our customers’ sensitive data, we use the most secure tools and adjust our policies and procedures when necessary.

Should you need more information on the security measures implemented in Quickblox products or on HIPAA compliance, in particular, contact us for a detailed discussion.

Roman Orlovskyy

How to build a Telemedicine Consultation Service with QuickBlox API

Posted by Roman Orlovskyy on March 26, 2019

In the 21st century, getting a doctor’s consultation does not always take a visit to the clinic. In many cases, doctors consult their patients remotely by asking about their symptoms and suggesting possible causes and advising the treatment via a messaging app or a video chat. Of course, severe and critical cases should always be treated in a hospital, but certain minor illnesses or follow-up checkups can be done remotely.

Besides, doctors can consult each other on cases where they might need a second opinion or a piece of advice of an expert in a field different from their own. Generally, the healthcare industry has already recognized the importance of real-time chats, both text and video, that can improve patient experience and save a lot of time and costs both for the doctors and the patients.

Many clinics run online platforms to consult patients remotely; at the same time, there are lots of healthcare forums and communities where users exchange information and experience. Both types can benefit from implementing an advanced chat technology allowing real-time communication between doctors and patients.

However, when planning to integrate a chat, the platform should always consider such aspects as information security, efficiency, and compliance with the applicable regulations, such as HIPAA. Health-related information is especially sensitive, therefore, the protective mechanisms used to secure it should meet the globally accepted requirements.

QuickBlox’s platform allows building a quality healthcare consultation solution with the QuickBlox SDK and cloud infrastructure in your application. QuickBlox products are created using the most effective communication technologies and ensuring compliance with all the applicable regulations and requirements of data security.

If you are a developer, product owner, healthcare professional, or technical service provider of a telemedicine or healthcare application looking for an end-to-end doctor-patient consultation solution, then QuickBlox has a complete toolkit for all your needs.

Let’s review what is typically required to build a healthcare consultation solution. The must-have features include the following:

  • User management;
  • Chat integration;
  • Audio/video call integration;
  • Consultation and prescription management;
  • Protected Health Information (PHI) and data security;
  • Billing management.

These functions are readily available in QuickBlox. Below, you can find a brief guide on implementing a real-time chat using the QuickBlox SDK

User management

By users, we mean doctors and patients signing up to your application and using their accounts to communicate via chat. The QuickBlox Users API provides complete user management functionality allowing flexible user administration and support. QuickBlox API enables all user management functions, from creating new users and authenticating them in the system to retrieving various user-related data and resetting passwords.

QuickBlox REST API and SDK are designed to run on iOS, Android and Web platforms, thus enabling powerful plug-and-play integrations in the client-side functionality of your app. At the same time, the secure cloud-hosted backend ensured the server-side user management functions as well as persistent data storage.

Chat integration

With our chat SDK, you can implement comprehensive high-quality chat functionality in your telemedicine app, including the following options:

  • Rich text chat between doctors and patients. QuickBlox allows setting up a HIPAA-compliant telemedicine service using custom parameters and including all consultation functions, such as starting, ending or updating a consultation session;
  • Secure transfer of sensitive user data complying with the applicable regulations;
  • Customization options available for multiple platforms: Android, iOS, and Web;

Ability to transfer various content via chat, including images, files, video, and audio.

Audio/video integration

Audio and video chats can be a valuable enhancement of a healthcare consultation app. Such chat format brings the consultation as close to a personal visit as possible. A live video chat can help to create positive patient experiences and allow them to get quality medical advice while saving their time and costs that may be required to visit a clinic. Also with video, the doctor can see the patient and this may help with diagnosis by looking at the physical condition of the patient.

With its WebRTC communication module for IOS / Android / Web Apps, QuickBlox SDK allows enabling secure video and audio chats right in your healthcare consultation platform. The module includes all necessary functions that can be used to set up an audio or video chat as well as multiple customization options. You can find a sample of the video chat API on our website to see how the basic chat functionality is implemented.

Needless to say, QuickBlox chat API ensures the necessary level of security and privacy of the sensitive information that may be exchanged during a live chat. The same considerations were used in designing the camera control feature enabling a live video session between a doctor and a patient.

Consultation and prescription management

For the service administrators, we provide the Custom Objects module allowing to design the tables and define the logic of the healthcare consultation application. The custom objects can be used to create own tables and configure any data structures that may be needed in your app.

The Messages module that is a part of the QuickBlox API is a tool for creating a fully customizable push notification feature. By setting up push notifications, you can configure both technical and marketing messages to be sent to your users.

Additionally, the push notification functionality is a useful feature in prescription management. When the doctor generates a prescription, the patient can be informed about it automatically via a notification. This way, the necessary information is communicated without any special effort either on the doctors’ or the patient’s side.

PHI and data security

Healthcare applications and services are subject to especially strict requirements as to information security and are always under very close scrutiny of government authorities. Patient information is included in the category of extremely sensitive, and its protection is controlled by multiple regulations.

In this context, we should refer to HIPAA, a US government act governing the procedures of storing and transmitting Protected Health Information (PHI). All healthcare services managing PHI must be HIPAA-compliant by implementing the approved techniques and tools.

QuickBlox API is built in view of the HIPAA regulations and includes security mechanisms capable of providing the necessary degree of protection. The end-to-end security of data traffic between the doctor and the patient is guaranteed by the HTTPS/TLS protocol as well as certain other measures, such as:

  • Support of all standard features of the XMPP protocol;
  • Implementation of security mechanisms for all app platforms: Android, iOS, and Web;
  • Encryption of the database volumes and messages stored on the backend.

Billing management

We use the auth key and secret URL for fetching the checksum support for third-party integration. QuickBlox provides the mechanisms of generating and storing the checksum in our custom object database.

Add communication to your healthcare app with QuickBlox API

This post is just a brief outline of features and functions available with QuickBlox API and SDK. With our solution, you are getting an effective, secure, scalable, and customizable communication tool that can be easily integrated into any healthcare consultation platform.

Building a telemedicine service is a complex, multi-faceted project. By integrating a ready-made chat solution, you can focus your effort on other tasks without worrying about the specifics of real-time communication. By using QuickBlox API, you will save the time and cost needed to roll out the complete healthcare service.

Browse our Developer Documentation page to see the full list of features of our real-time chat software and the flexible customization options it contains. If you have any questions about QuickBlox API and SDK or would like to implement our solution in your healthcare app, contact us for a detailed discussion. Please call or email Manish our resident healthcare technology specialist or another member of our team would be happy to assist.

Vadim Khmyrov

Important: GCM deprecation

Posted by Vadim Khmyrov on March 20, 2019

Dear Quickblox Users,

We would like to inform you that on April 11, 2019 the GCM server and client APIs will be removed.

We recommend that you migrate your GCM apps to Firebase Cloud Messaging (FCM) that inherits the reliable and scalable GCM infrastructure, plus many new features.

We have added an article in our documentation about the GCM-FCM migration process:

If you experience any issues, please reach out to our support team by submitting a ticket.