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.
This is where you select the type of event you are subscribing to. All event types available are listed in the table below.
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 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 a 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 setting 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.
For age based events, this is where you set a time duration of how far after an event date you want to be notified.
For example if you are creating a subscription for work order status age and you want to be notified when 2 weeks has passed with the work order still set to that status, you would select 14 days here. You can select days hours and minutes as appropriate.
Remember, this setting controls when you are notified past 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 shorter age notice and having it deliver to a less immediate location.
For example In application first and then another identical subscription but with a longer 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.
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.
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.
Currently you can choose between Deliver in application or Deliver to email address (SMTP internet email) delivery.
In app will deliver to the AyaNova in-app 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 to text gateway accounts.
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 your mobile / 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.
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.
Notification 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 the AyaNova application.
There are no settings adjustable for in-app General notifications, they are built in, however it is possible to create another general notification with email delivery.
Notification event types and triggers¶
The following table shows the types of notification events currently available for subscription. Note that not all event types will work for all users depending upon the roles and user type involved. Tag filters will restrict to only objects with those tags triggering notification and are optional unless specified otherwise. When no tags are specified then all objects regardless of tag will be considered for notification.
|Backup status||Result of last automated backup|
|Contract expiring||Contract expiration date is within selected "Notify before event"|
|CSR accepted||Customer service request accepted. (intended for Customer users)|
|CSR rejected||Customer service request rejected. (intended for Customer users)|
|Customer service reminder||Scheduled service date / time is within "Notify before event" selected. (Customer or HeadOffice type users only)|
|General notification||Any general notification including direct text notifications between users (built in but provided for email alternative delivery)|
|Notify health check||Automatic daily (or any time server is restarted) "ping" notification to confirm notification and Generator system is active at server|
|Object age||Any object of selected Tags and selected Type's Age ("Duration" selected) after creation|
|Object created||Creation of core business object of selected type and tags|
|Object deleted||Deletion of core business object of selected type and tags|
|Object modified||Any changes and saving of core business object of selected type and tags|
|Outside service overdue||Unit sent for 3rd party service is not returned yet and eta date is within selected "Notify before event"|
|Outside service received||Unit sent for 3rd party service has been received back|
|Preventive Maintenance insufficient inventory||Upcoming P.M. order will not have enough inventory (by selected "Notify before event" date) to generate without making a part request|
|Preventive Maintenance stop date||P.M.'s "Stop generating" date is within selected "Notify before event" setting|
|Preventive Maintenance generation failure||Error automatically generating a work order from a P.M. order|
|Quote status age||A Quote has been sitting at the selected status for longer than the "Duration" selected|
|Quote status change||Any change of Quote Status including from no status (new) to a specific selected status ID value|
|Reminder imminent||A Reminder date is within selected "Notify before event"|
|Requested Part received||Part requested via a Workorder has been received|
|Review imminent||A Review date is within selected "Notify before event"|
|Scheduled on work order||Subcriber is the User selected on a newly created work order item scheduled User record|
|Server operations problem||Any timely and serious issue related to internal AyaNova Server operations requiring attention|
|Unit meter reading multiple exceeded||A meter reading entry 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)|
|Unit warranty expiry||A Unit's warranty expiration date is within selected "Notify before event"|
|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)|
|Work order not completed on time||Workorder not set to a "Completed" type Status before the work order's Complete by date|
|Work order scheduled service imminent||Subscriber is the User selected on a work order item scheduled User record AND the scheduled date is within selected "Notify before event"|
|Workorder status age||A Workorder has been sitting at the selected status for longer than the "Duration" selected|
|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)|
|Work order status set||Workorder Status set to selected Status value|
|Work order total exceeds threshold||The grand total charges of a Work order set to any completed type work order status have exceeded the selected threshold amount (the "Andy")|