Your Organization: Medic/University of Washington – CHV-NEO
Organization Type: Technical
What Other Organizations Would Benefit From This Feature: interventions with an interactive messaging component
Describe the Feature: CHV-NEO is an app that integrates the CHT (eCHIS) with RapidPro to provide direct to client communication between community Health volunteers (CHVs) and their clients (specifically peri-partum women). Part of this intervention includes sending automated messages to clients, and clients sending back unstructured conversational responses, which CHVs respond to manually. We would like the automated messages sent from RapidPro to clients to also appear in the Messages tab. We want them to appear as being sent from the community health volunteer (CHV) to the client. This so that the CHV is able to make sense out of the messaging history and respond to their clients appropriately and on time.
What “Pain Point” Does The Proposed Feature Address: Currently on CHT, only manual interactive messages between the CHV and the client are visible on the message tab chat thread. Clients are also receiving daily/weekly automated messages – visit reminders and educational messages – most of which end with a question, but these are not visible in the messages tab. When clients send messages in response to automated messages, the client messages’ meaning cannot be easily understood without the automated message as context. We would like CHVs to be able to see the automated messages so they can follow the conversation, but have automated messages appear as read so that CHVs can prioritize interactive messages from the client that need a prompt response. This feature is essential for launch of the CHV-NEO program June 1.
We explored the following ways of doing this through RapidPro webhooks:
- POSTing to /api/sms and specifying “from” and “to” properties in the payload. This did not seem to work.
- Creating an sms_message data record for the contact directly in CouchDB. This worked. However, we noted that since these automated messages will show up as new messages for the CHV, it would create spam and make it difficult to discern these automated messages from actual client interactions.
- Directly write the message to the database (should not trigger unread message notification)
Where we need help:
- Alternatives to achieving this that may be easier and less complicated
- How to mark the sms_message data record as already read so that we avoid spamming the CHV. This in the case that there are no better ways of achieving what we need.
Do you have funding to cover external developers? Yes with technical support from the product team
Do You Have Resources (Designers, Developers, PMs) Available: we have a designer, PM and developer
Links To Supporting Information / Uploads:
Forum post is here Working with messages between RapidPro and CHT contacts using code additional information on MobileWACh is in the description below
The messaging strategy used in CHV-NEO is adapted from a previous intervention named Mobile WACh (Publications can be found here,. In this strategy, clients receive automated messages grounded in behavioural theory and covering a range of health education topics. Automated messages end with a question to promote engagement and behaviour change. Clients are encouraged to respond to messages with unstructured messages, which CHVs then respond to in an ongoing conversation. Note that unlike previous 2-way texting projects using the CHT, in our messaging strategy we are not expecting structured responses (e.g. 1/0) and we are not asking the same question in every message (e.g. do you need help). In our previous implementations of Mobile WACh across 7 studies in Kenya we have seen that clients message conversationally, including responses that cannot be understood without reading the prior system message (e.g., “Yes”, “No”, “A little”). It is therefore necessary for CHVs to be able to read the automated messages when reading client messages. It is also necessary for the messaging tab of CHT to only indicate unread messages when there are unread client messages for the CHV to respond to (not automated messages that do not need the CHV’s attention). See the screenshots below for examples of the types of messages clients send and how the desired functionality was facilitated in a different messaging system.