Well this weekend has proved very productive. The job scheduler is working extremely well. My fears of runaway-spamming a customer thanking them for their order may have been unwarranted
Order shipments auto-trigger a 7-day one-time email to the appropriate customer for follow-up courtesy and marketing purposes. I made it so the admin can configure the number of days to their preference. I also added an On/Off for people who don't want this particular functionality.
Stock notifications work extremely well. Visitors simply need to be told to register with the site and add the out-of-stock items to their wishlist. Once the system detects a product (or variant!) going from 0 to positive stock level, it fires the scan against the wishlist items for that item. Any matches auto-generate a one-time email notifying the customer with the admin's choice of email template. I even made the email template create a link directly to the product referenced – turned out nice.
I've also added an On/Off so this particular feature can be disabled if necessary.
All 3 feed files were easy. All the parameters are saved when you run them normally through the Able menus. So as long as you've run them manually at least once, you can now schedule them to generate AND upload. Tough to test on my site though, takes a while to run and upload but appears to be working thus far.
General functionality has taken shape nicely. Queue management now allows job deletion and "run now" for any specific job. Also finished debugging the queue pause feature – now you can pause the entire queue processing if necessary. Some debugging features were added so job tracing can be done. It spams the AC7 error log, but very useful in tracking down why something did/didn't fire like it should have. This too can be turned on/off.
The last feature to add will be my most ambitious – "review solicitation with coupon reward". What I'm wanting is a way to automatically encourage customer reviews on the products they have purchased. So the trick will be figuring a way to "land" them to a convenient site page for the given product and ready for review entry. Once the review is received, the customer is assigned a group and given a coupon code for their next order. I'll be exploring this Monday.
So far, I've managed to still keep all of this functionality so that only a single Able file is changed. Everything else is new and separate. That makes implementation super easy especially for modified sites.