This commit is contained in:
@@ -22,10 +22,10 @@ BACKEND TODO / SYSTEM FOR RAVEN
|
||||
|
||||
|
||||
TODO: need a utility that can hash any adhoc collection of fields to work with various notify related objects
|
||||
TODO: Auto delete APP notifications older than 90 days automatically by some kind of sweeper job
|
||||
TODO: auto delete notifyeventlog entries older than 90 days automatically by job
|
||||
todo:
|
||||
|
||||
TODO: Never creates a duplicate APP or EMAIL notify, so checks a hash in history log before sending
|
||||
TODO: HASH uniquely identifies a notification delivery and it's logged with the history so before a new delivery is sent it's compared to the delivery log and if it was sent
|
||||
in the last 90 days then it skips it. This will avoid duplicated emails or runaway notifies etc.
|
||||
Hash needs to be unique to the destination user, teh source object and the event type exactly, if there is any difference then it should not hash the same
|
||||
|
||||
CREATING NOTIFICATIONS
|
||||
OBJECTS Saving an object triggers notification processing for that object:
|
||||
@@ -131,7 +131,7 @@ Notifyevent table - contains all events, created by updating objects or directly
|
||||
created (timestamp used to clean out old stuck events), ayatype, objectid, eventtype, appliestouserid (single subscriber event), aEventDate, ASAVEDMESSAGE, HASH?
|
||||
|
||||
notifydeliverylog table - intended for troubleshooting, logs deliveries with a cap on how many records it retains. Keeping this as a separate and distinct OPS ui thing
|
||||
(aRootObjectType, aRootObjectID, aEventType,aGuidValue, aDeliveryDate, aToUserID, aDeliveryMethod, aDelivered, aErrorMessage, aToClientID )
|
||||
(aRootObjectType, aRootObjectID, aEventType,aGuidValue, aDeliveryDate, aToUserID, aDeliveryMethod, aDelivered, aErrorMessage, aToClientID, HASH )
|
||||
|
||||
notification table - was popup, now the ones that show in the APP type notify delivery in the UI list; has fields for opening source and reading message and indicating read
|
||||
Note: deliberately no delivery date, if it's in this table it's delivered to user, advancenotice and genprocess handle whether it's in this table or not
|
||||
|
||||
Reference in New Issue
Block a user