Weekly motivational check-ins

Hello @diana

Am looking at implementing auto weekly check sms messages to patients in CHT using rapidpro .

I would think the best way is to use campaigns in rapidpro, however i have a few questions on this

  • In regards to building the contact group to add to the campaign ,what would be the best way to compose this group of contacts from CHT ? Would the contacts be added manually in rapidpro or through an outbound push ?

  • How are the contacts on the newly added patients added in CHT added to the weekly contact group in rapidpro so that they can also start receiving the weekly motivational sms ?

cc @marc @michael

Hello @cliff,

One option it to use triggers and keywords to start a flow that adds the contacts to the group. This would be client-facing for example, a contact sends the word hello to a configured channel such as a shortcode, which starts a flow in Rapidpro to add the contact to the group.

Another option is to use CHT outbound push to set up a module that starts a flow though the flow_starts endpoint, to add the contact to the group. The contact phone number can be included as a urn.

Let us know how it goes.

3 Likes

thanks @kitsao
Does a trigger key word that allows people to join a group also work ?

Hello @cliff it wouldn’t work out of the box.

  1. Set up a flow that adds a contact to a group.
  2. Use the trigger word to start the flow.
2 Likes

thanks @kitsao ,
What could be the best approach to capture and see the messages sent to a particular contact in the CHT messages tab and if possible the provider can send a message via the messages tab .
Generally is it possible to this conversation to be seen under meaages tab of CHT because it looks link for this scenario its between rapidpro and the contact who sends to trigger keyword

That’s a good question @cliff. It can be simple, but get complicated in no time :slight_smile:

You can opt to add a cht-gateway to handle the in-app messaging.

The other option is to use RapidPro webhooks and the messages api to relay messages from Rapidpro to CHT. For example, for sent messages in Rapidpro, you can call a webhook with a POST payload containing the status as would normally be received if you were to use the cht-gateway. That way, the message does not have to be processed again when it gets to CHT and would be available in the conversational style. Your payload would be similar to the one below.

{ 
  "messages": [...],
  "updates": [ 
    {
      "id":"ab7a0d8a-61fc-47c5-8010-02e9481f6c75",
      "status":"SENT"
    }
  ]
}

Note that I have not thoroughly tested this option. May be someone else in the community has.

As always, let us know how it goes.

1 Like

hello @kitsao i used the webhook in the flow to relay messages from rapidpro to cht endpoint https://domain-name/api/v1/sms/radpidpro/incoming-messages ,the payload was

@(json(object(
 "id", run.uuid,
 "from", replace(urns.tel,"tel:+", "+"),
 "content", input.text
)))

is it possible to configure the webhook to post data sent out later like a scheduled message sent out to patients later in the flow ?

Hello @cliff, that should be possible going by this post, if I got you right.

1 Like

thanks @kitsao :+1:
I followed the same guide and implemented it

That’s great @cliff.