From d03360a6c5b23a342e91d241e2f9d123a2d728a5 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Thu, 27 Jan 2022 23:00:56 +0000 Subject: [PATCH] --- docs/8.0/ayanova/docs/home-notifications.md | 42 +++++++++++++++++- .../docs/img/notification-in-app-example.png | Bin 0 -> 29405 bytes 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 docs/8.0/ayanova/docs/img/notification-in-app-example.png diff --git a/docs/8.0/ayanova/docs/home-notifications.md b/docs/8.0/ayanova/docs/home-notifications.md index 0ccefd29..87a4a429 100644 --- a/docs/8.0/ayanova/docs/home-notifications.md +++ b/docs/8.0/ayanova/docs/home-notifications.md @@ -12,5 +12,45 @@ The bell icon in the [App bar](ay-start-form-overview.md#app-bar) at the top of The bell icon will change color and show a small number beside it indicating that new unseen notifications are available and the number of new notifications. -In-app notifications are meant to be temporary and are only kept for 90 days then automatically deleted by the AyaNova server. If you require a permanent record of some notifications we recommend creating a duplicate [notification subscription](home-notify-subscriptions.md) with delivery via email so they can be kept in the email application itself. +## How the in app notification works +Notifications are generated for both events that the user has [subscribed to](home-notify-subscriptions.md) as well as general system notifications specific to the user such as certain types of errors or general events built into AyaNova. When a notifiable event takes place at the server, the server will check for any Users that have a subscription that matches the event and will deliver that notification according to the subscription delivery method. For in-app type notifications this means they will be placed in a table in the database for the web app to pick up on it's next check for notifications. + +The AyaNova web application checks for notifications by contacting the AyaNova server periodically on a cycle as follows: + +- Immediate check just after login +- Every 60 seconds while logged in + +If the web application can't contact the server during a check (for example if a cell signal has cut out temporarily), it will automatically slow down the frequencey of checks by a factor of 1.5 up to a maximum delay of half an hour. This is to preserve battery life on a device by not checking as frequently when there is no signal available. Once contact is made then the cycle goes back to 60 seconds. + +If you are awaiting a notification and know you had a bad network connection and it has been restored, refreshing the browser page will reset the cycle back to 60 seconds and check immediately for notifications. + +Due to this built in delay in checking it's possible that a notifiable event can happen but notification not be received at the web app for up to 60 seconds even with a working network connection or the notification may arrive nearly instantly after the event happens depending on the timing of the event relative to the cycle of checking from the web application. + +When a notification has been fetched for display by opening the notifications form it will be flagged as having been seen and the "badge" beside the bell icon showing new notifications will vanish until more new notifications are received. + +In-app notifications are meant to be temporary and are only kept for 90 days then automatically deleted by the AyaNova server after which time they will no longer appear in this notifications form. If you require a permanent record of some notifications we recommend creating a duplicate [notification subscription](home-notify-subscriptions.md) with delivery via email so they can be kept in the email application itself. + +You can also delete notifications if desired but it's not necessary to do so. + +## Notification form features + +Notifications are presented in boxes on a time line view with the most recent at the top and the oldest at the bottom. On narrow screen devices they will display in a single column and on wider screen devices in two columns. + +Each card displays the actual notification itself with some controls. + +![notification in app example](img/notification-in-app-example.png) + +The title at the top is the Object of the notification and in most cases this is the name of the object being notified about however some types of notifications do not have a business object as their source so other descriptive information of the source will be displayed instead. + +Time and event description is displayed under the title and shows the date and time the event happened displayed in local time. + +Object type icon and label are displayed in the middle, this is also a hyperlink that can be used to open the object if it's an openable type. + +Delete button at the bottom left will delete the notification permanently. Deleting notifications is optional and they will self delete automatically when they reach 90 days of age. + +Open button is used to open the notification subscription itself. This is handy if you need to stop receiving this type of notification or to adjust the settings for it. + +### Menu options + +#### Direct notification diff --git a/docs/8.0/ayanova/docs/img/notification-in-app-example.png b/docs/8.0/ayanova/docs/img/notification-in-app-example.png new file mode 100644 index 0000000000000000000000000000000000000000..33b0c8b6b2e122006e7a6ca142fe2867916e779c GIT binary patch literal 29405 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 HW%&OBUA0c% literal 0 HcmV?d00001