Files
raven/docs/8.0/ayanova/docs/home-notify-subscriptions.md
2022-01-28 21:03:39 +00:00

17 KiB

Notification subscriptions

This form is used to control notification subscriptions which are events that happen within AyaNova that a User can subscribe to.

Notifications can be delivered via email, SMS text (via email) or directly in the AyaNova web application.

Authorization Roles required

Notification subscriptions are available to all users of AyaNova regardless of their roles however some types of subscriptions are not available to all roles, for example if a user has no rights to Service Work orders then they will not be able to receive notifications about changes to Work order objects.

How notification subscriptions work

Notification subscriptions are stored in a database table at the server and the AyaNova server checks this table each time a notifiable event takes place and processes a notification for any active subscribers to that event and any filtered (tag) settings that match.

For example if a User subscribes to be notified when a Customer is modified then AyaNova checks for any subscribers to that event when the Customer record is saved to the server.

If the notification is selected to deliver in app to the AyaNova web app notifications form then it is placed in a table to wait for pick up by the AyaNova web application.

If a notification is set to be delivered via email then it is placed in an email notification delivery queue and processed in turn by the server.

Notification subscription list

The list form shows all the notifications you are currently subscribed to. You can open a subscription to edit it by clicking anywhere on the row.

Notification subscription edit form

Not all fields listed below are available for all event types, depending on the event type selected you will see different form fields as appropriate to that event.

Notification event

This is where you select the type of event you are subscribing to. All event types available are listed in the table below.

Type

Some events are related to core AyaNova business object operations, for example when an object is created or deleted or modified. This is the field where you select the type of object you are interested in such as a Customer or Work order etc. All core AyaNova business object types are available here.

Notify before event

For age and time based events, this is where you set a time duration of how far in advance of the event date you want to be notified. For example if you are creating subscription for when a service contract expires and you want to be notified 2 weeks in advance of the expiration date you would select 14 days here. You can select days hours and minutes as appropriate. Remember this controls when you are notified in advance of the actual date of the event whatever that might be.

As you can subscribe to the same event more than once you can use this feature to create an escalating notification system for some events by setting a longer advance notice and having it deliver to a less immediate location.

For example In application first and then another identical subscription but with a shorter time frame to a more immediately noticeable location such as direct SMS or an alternate address to another user to catch critical events in case they might get missed.

Status

Events tied to Status settings on other objects such as a Workorder status or Quote status require a selection of the desired status. In those cases a Status field is available to choose the exact status of interest.

Decimal value

Some events are related to monetary or other numeric amounts or thresholds, for example a workorder total price exceeded or meter count exceeded, this field will be presented in those cases to enter the numeric amount appropriate for the event notification.

Report

In the case of an event that can have a report associated with it, you can select a report link to be automatically sent with the event so the report can be opened from the message.

Delivery method

Currently you can choose between Deliver in application or Deliver to email address (SMTP internet email) delivery.

In app will deliver to the AyaNova notifications form and alert via the bell icon at the top of the AyaNova application window.

SMTP / email delivery will send notifications to an SMTP server however this form of delivery is not just for email alone as it can work with many different communications methods including 3rd party communication platforms and SMS / MMS via email gateways (see below).

AyaNova SMTP (email delivery) notification messages are intentionally designed to be as short as possible, plain text with simple links where necessary and to the point so they work well with 3rd party services and small devices.

SMS / Text delivery

Delivery via SMS / Text message is supported through email delivery as nearly all cellular providers have a special "gateway" address that can be used for email to text deliveries.

For example, in the US AT&T customers can use the address ##########@txt.att.net substituting the ### symbols for their cellular phone number.

Wiki How has an overview: SMS / MMS gateway for how this works and the web site https://smsemailgateway.com/ hosts a public domain list of many global cellular providers and their email gateway account.

Most providers also list this information on their web sites, look for the terms SMS Email Gateway address or contact them directly to get the address.

Charges may apply

Depending on the cellular data plan charges may apply for receiving notification texts, check with your provider.

Slack and other communication services

Many communication services support an SMTP gateway that can work with AyaNova's notification system; for example Slack supports sending emails to Slack in several ways.

Duplicate subscriptions for different delivery methods

Users can create any number of duplicate notification subscriptions with different delivery methods for more complex scenarios such as a dedicated Slack email address, Gmail address, SMS text delivery to a smart phone, in app etc etc. In this way you can be notified in multiple ways at once for critical notifications.

Deliver to Address

If SMTP / email delivery method is chosen this field is where you enter the address where the notification is delivered.

By default AyaNova will fill this field in with your email address if it's set in your User settings form however you can change it to any value you wish.

Tags

Here you can filter by selecting one or more Tags (if the event is related to a taggable object) to include or exclude specific objects. For example, you could create a subscription to the Object Created event, select the type as Customer and the Tag as "residential". That way any Customer created and saved with the Tag "residential" will trigger a notification to you but if a Customer is created without the tag "residential" you will not be alerted.

All the tags selected in the subscription are required to be on the object at the moment it is saved / updated / deleted in order to match the subscription requirements and trigger notification. If other tags are on the object besides the ones related to this filter they have no effect on the notification filter.

If no tags are selected then tags are not considered at all when processing notifications.

Work orders / Quotes / PM and tags

Most work order descendant object notifications will use the Work order header tags for comparison with their notification setting with the exception of descendants that have their own Tags (Work order items and Work order item Units are currently the only descendants with their own tags).

For all other descendants, they will process notifications and filter by tag against the work order header tags in place at the moment they are saved after creation or update only.

Changing the work order header tags on an existing work order does not automatically trigger a re-evaluation of descendant notification items. Only when those descendants themselves are edited and saved will the tags be re-assessed. This means that ideally tags should be set first on the work order before any descendant items that might be dependant on certain tags being present.

Events are triggered when...

Business object edited

When a new or updated AyaNova core business object is saved or deleted it triggers notification processing.

In other words if you create a new subscription, only objects saved after you created that subscription will trigger notifications to you.

In the case of time delayed notifications they are still created at the moment of saving the object but with a delayed delivery date. For example, if you create a subscription to be notified a year after a Customer record is created, the event is created the moment the Customer is created and first saved and stored internally for a year before delivery. (If that Customer should be deleted before the year is up then that age notification will automatically be deleted)

Something happens at the server

When an event takes place at the server that triggers events related to server operations. For example when the system backs up automatically.

General notification type

The General notification type is a special case, all users are automatically subscribed to In Application delivery of general notifications meaning they will always receive critical system notifications as well as direct notifications from other users inside AyaNova application There are no settings adjustable for in app General notifications however it is possible to create a general notification with email delivery.

Notification event types

EVENT DESCRIPTION
Object deleted Deletion of core business object of selected type and tags
Object created Creation of core business object of selected type and tags
Object modified Any changes and saving of core business object of selected type and tags
Work order status change Any change of Workorder Status including from no status (new) to a specific selected status ID value
Contract expiring Customer service contract expiration
CSR accepted Customer service request accepted. (intended for Customer users)
CSR rejected Customer service request rejected. (intended for Customer users)
Quote status change Any change of Quote Status including from no status (new) to a specific selected status ID value
Object age Any object, Age (conditional on AgeValue) after creation event of any object of selected specific type and optionally selected tags
Reminder imminent A Reminder is about to reach it's specified start date/time
Review imminent A Review is about to reach it's specified review date/time
Scheduled on work order User is scheduled on (added to) a Work order
Scheduled on work order imminent Scheduled date and time reached for workorder which User is scheduled
Work order completed status overdue Workorder not set to a "Completed" type Status before the selected duration from created date
Work order completed Service work order is set to any status that is flagged as a "Completed" type of status. (Customer / HeadOffice or staff User notification)
Outside service overdue An item sent for 3rd party service is overdue from projected repair time frame
Outside service received An item sent for 3rd party service has been received back
Part request received An out of stock part requested via a Workorder has been received
Notify health check Automatic daily "ping" notification to confirm notification and Generator system is active at server
Backup status Result of last Backup operation at server
Customer service reminder Scheduled service date / time is about to be reached. (Customer or HeadOffice type users only)
Work order total exceeds threshold The balance of a Work order has exceeded a threshold and is set to completed status (the "Andy")
Workorder status age A Workorder has been sitting at the selected status for longer than the selected time frame
Unit warranty expiry A Unit's warranty expiration date is reached
Unit meter reading multiple exceeded A meter reading has a difference from the last reading by the selected amount (negative OR positive to cover count down meters or rollover / reset meters, can tag filter by Unit tag)
General notification Any general notification including direct text notifications between users (built in but provided for email alternative delivery)
Server operations problem Any timely and serious issue related to internal AyaNova Server operations requiring attention
Quote status age A Quote has been sitting at the selected status for longer than the selected time frame
Copy of customer notification Copy of any notification sent to Customer for AyaNova User. Filterable by Customer Tag
Work order created for customer Customer notification sent when a service type work order is created for them (or if HeadOffice Contact user, one of their Customers)