From 118ff4ffe7ba7c819684f89fc5bdc5dd881444e4 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Mon, 8 Jun 2020 20:21:02 +0000 Subject: [PATCH] --- devdocs/specs/core-license-key-system.txt | 5 +++- devdocs/todo.txt | 29 +++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/devdocs/specs/core-license-key-system.txt b/devdocs/specs/core-license-key-system.txt index e2b8a0a9..67a78048 100644 --- a/devdocs/specs/core-license-key-system.txt +++ b/devdocs/specs/core-license-key-system.txt @@ -73,7 +73,10 @@ FOR CODE: - If the code is good then RAVEN starts a repeating job that will periodically check the ROCKFISH server for a license response - If the email is valid then it creates a trial request record for us to view and approve or not approve with cause entered as text which will be sent to the user (like don't use fake names or profanity or something similar) - This part we WILL automate in future but for now it's a good "fuse" - - The DBID value is associated permanently as a SITE in ROCKFISH + - The DBID value is associated permanently with a SITE record in ROCKFISH + we can override this value in case of weird issue unforseen + although ideally we should be able to just shut down a "site" and create another site for that user so we have continuity + - We get a notification of a request sitting in ROCKFISH and we approve it or not - IF APPROVED: - ROCKFISH generates (or looks up if repeat) a customer record, flags it as a trial type customer with a created date (for later GDPR removal or turning into a real customer record) diff --git a/devdocs/todo.txt b/devdocs/todo.txt index 6a7bd2df..0a8af1d9 100644 --- a/devdocs/todo.txt +++ b/devdocs/todo.txt @@ -44,6 +44,35 @@ todo: rockfish UI list of trial requests open and their state We click a button to accept or reject and can enter additional note for either Rockfish sends a reply to user either saying they are accepted or rejected with note inserted +todo: rockfish / RAVEN extra info with polling for license + in addition to license can put a notification into the return data + so we can contact a customer when we can't email them with a popup notification + +todo: RAVEN new job LicenseCheck + Automatically checks rockfish to see if there is a new license available and installs it if found + + Rockfish responses: + No new license, nothing to report: 204 NO CONTENT + No new license but something to report: 200 OK + data contains possibly one or more of: + NOTIFY: to be sent to the users (right now I can think of for the event of can't contact the customer but need to get a message to them) + CANCEL LICENSE POLLING: No more license polling with optional reason for user to see + Used when they have cancelled their subscription and would no longer like to purchase / renew + Raven makes a note in license table to stop polling + REVOKE LICENSE: immediately disable the license with notification message + used when there is fraud or revocation of payment after license was issued + Raven removes license entirely so it has no license at all + Store notification message in license table so will be showed at client in RED + New license returned for installation + Raven installs the license + + Polling frequency + If no polling in license table then no polling happens until some other operation clears this flag + If polling in license table and: + is unlicensed or expired trial, check on boot and every 15 minutes thereafter + is active trial or licensed, check on boot and then once every 24 hours thereafter + +