Release v0.20.0 - Pt 1: Appointment Reminders
Hi all, we just released Dittofeed v0.20.0. This release is absolutely MASSIVE. It’s so big that we can’t fit a full description of everything in a single post. So, we’re going to be writing a series of posts detailing all of the great stuff that’s in it.
This release includes new ways to segment your users, new ways to build your journeys, new features for email and SMS, and more.
The focus of this post will be on what we call “keyed resources”, for the purpose of enabling important use cases like appointment reminders.
Summary
New: Keyed Event Triggered Journeys
Event triggered journeys are journeys in Dittofeed which are triggered immediately, in response to a user-submitted event. By default, one instance of the journey is created per matching event.
For example, we might create one journey per APPOINTMENT_CREATED
event.
However, one common requirement that would previously cause issues was directing the user along a different path in the journey if they canceled or updated their appointment.
One might want to create a segment, which checks whether a user has performed an APPOINTMENT_CANCELLED
event. However, this presents a challenge: ensuring we only consider APPOINTMENT_CANCELLED
events for the same appointment which initiated the journey.
That’s where keyed event triggered journeys come in! We can key the journey based on the triggering event’s appointmentId
field that identifies the appointment which was created. This will allow us to create segments and user properties that only consider the values of events which share the same appointmentId
.
To read about this use case in more detail, see the following guide on appointment reminders.
New: Keyed Performed Segments
Keyed Performed Segments are like Performed Segments, in that they allow you condition a user’s inclusion based on whether they’ve performed a matching track
event. However they differ in several important respects.
- They are only usable in the context of a Keyed Event Triggered Journey
- They are computed in-memory, immediately, rather than asynchronously in ClickHouse.
- They have a
key
field which is used to route events to the appropriate journey e.g.appointmentId
An example of a useful Keyed Performed Segment in this context is an appointmentConfirmed
segment, defined to condition on the presence of an APPOINTMENT_CONFIRMATION
event.
New: Keyed Performed User Properties
Keyed Performed User Properties are like standard Performed User Properties, in that they also allow you to render the results of track
events into messages, but differ in the same ways keyed and non-keyed Performed Segments are.
They are useful for ensuring that the events used to render user property assignments into messages have the same appointmentId
as the triggering event.
For example, one might define an appointmentTime
user property that renders the time of scheduled appointment.
An appointmentTime
user property can be useful in several ways:
- To render in your emails / SMS.
- To use in user property delays as defined below.
New: User Property Delay
User Property Delays allow you to use the date rendered in a user property and wait until that date has passed. That’s useful in our appointment reminder use case because it allows us to wait until a day prior to our appointment date.
Wrap Up
This is the first post in which we discuss all of the good stuff in v0.20.0. We’re excited to see all of the cool things our community builds with keyed resources!
Look forward to another post coming soon!