Elephant introduces the Sendable attribute, plenty to discover

New & Noteworthy
Lluís Turró Cutiller

Next Elephant update will include Sendable attributes for some entities. Knowing that those entities already were sent to subscribers / attendees, why introducing a new API?

Sendable, what and why

Sendable has two main attributes, schedule and sent. schedule is a date and time field, representing when the entity should be sent. sent is set to TRUE when the entity has been sent. Sendable has also a list of SendableAssistant. The function of this list is the possibility to add recipients when sending.

Sendable was mainly added to schedule sending a Convocation. When programming a convocation, the assistant list is replaced by the convocation list of attendees.

Sendable attributes for a convocation.

Sendable on publications

Publications already have a sending method that suits perfectly for most cases. We should we use Sendable when we have a private category publication, with an always varying number of subscribers. We can keep the category with no subscribers and use Sendable assistants instead.

Differences between category sending method and Sendable



Mail subject is category related, since the message body can contain more than one publication.

Mail subject is the publication title.

Recipients are controlled by the category.

Recipients are Sendable assistants, unique for this publication.

The mail queue controls when publication are sent, taking into account user options when public.

The mail is sent as state in schedule attribute.

Sendable attributes for a publication.

To make these differences more effective, category subscribers aren't included in Sendable assistants.

How it works?

Sendable depends on the Elephant Mail Queue task, concretely with the ON_GENERATED option. Every time it checks for queue messages does check for Sendable past due. For normal configurations, nothing needs to be done.

What comes next

Sendable will be included in more entities and we'll be listening to user feedback. Keep connected!