Hi, we’ve been experimenting with a simple courier integration to push notifications to our users over email, and in-app using your courier push components (toast and inbox).
Visually, inbox has a decent overlap with an existing feature of our app which we call “activity feed” and I’d like to understand whether we should evaluate migrating this function to courier. There are a couple of characteristics of our existing activity feed that are probably mis-aligned, though:
- we persist our events forever so that users can access them at a later time
- each event relates to one or more subjects (nothing more than a list of IDs) and we provide users with views that are filtered for a particular subject or set of subjects. Users may have access to events related to many different subjects - so filtering in the UI is not a not a great option for us and we instead provide search/filter terms to our API
Is this a use-case that’s suitable for courier-push/inbox? Or are courier notifications ephemeral and can no longer be searched/filtered after they have been routed to channels. I think I know what the answer is, but thought I’d ask anyway
Thanks for reaching out!
Currently, the Courier Inbox is able to persist all ‘unread’ as well as ‘all messages’ in the UI. As of right now, Courier will fetch all messages sent to any
push channel and display them in the
Courier Inbox has an opt-in/out to published events feature, but no filtering yet. Notifications are not ephemeral which only covers one of your use cases unfortunately.
In the meantime, users are able to view all sent notifications and their statuses within the notification logs or through the Messages API.
I could also make a feature request for your particular use case in our feedback forum - where our team gathers most common/popular requests and looks into implementing them in future updates. Let me know if that’s something you would like me to do, and please let me know if you have any more questions!
Hi @chris.tierney, I built a lot of the Inbox/InApp functionality and I can help add some color to @rodrigo answer.
Normally for Free/Developer our data retention is 24 hours. However Inbox messages are persisted longer. I will get the exact time we will persist inbox messages for you.
We support “tagging” messages so in theory it’s possible you could “tag subjects” to a message and then use those tags to filter messages as you retrieve them in the inbox. The current inbox widget does support custom “tabs” or you could integrate with our React Hooks or even just our Client GraphQL api and build the UX yourself.
You however cannot request messages just by a tag… you need to ask for messages for a specific user, and then can use tags to filter the users messages.
I look forward to finding out if Courier is a good fit!
Thanks for your quick replies folks, much appreciated. You’ve confirmed what I assumed after reading through your docs - I think for us we will be:
- maintain our own permanent list of “activities” that we can slice and dice as we need. We will continue to maintain this as a core function of our app
- pass new events from there, to courier for notifying users over multiple channels.
@trycourier/react-inbox might form part of that picture.
Thanks again for your guidance!