From acb0e870d65e528c6f9d1d0bc5537d8a308fb7dc Mon Sep 17 00:00:00 2001 From: SpudGunMan Date: Wed, 29 Oct 2025 00:15:46 -0700 Subject: [PATCH] cleanup --- modules/checklist.md | 24 ++++++++---------------- modules/checklist.py | 16 ++++++++-------- 2 files changed, 16 insertions(+), 24 deletions(-) diff --git a/modules/checklist.md b/modules/checklist.md index 12b3686..ef839bc 100644 --- a/modules/checklist.md +++ b/modules/checklist.md @@ -26,7 +26,6 @@ The enhanced checklist module provides asset tracking and accountability feature ### 📍 Location Tracking - Automatic GPS location capture when checking in/out - View last known location in checklist -- Track movement over time - **Time Window Monitoring**: Check-in with safety intervals (e.g., `checkin 60 Hunting in tree stand`) - Tracks if users don't check in within expected timeframe @@ -38,11 +37,6 @@ The enhanced checklist module provides asset tracking and accountability feature - `checklistdeny ` - Deny/remove check-ins (admin) - Support for approval-based workflows -- **Enhanced Database Schema**: - - Added `approved` field for approval workflows - - Added `expected_checkin_interval` field for safety monitoring - - Automatic migration for existing databases - #### New Commands: - `checklistapprove ` - Approve a check-in - `checklistdeny ` - Deny a check-in @@ -153,7 +147,7 @@ checkin 60 Hunting in remote area This tells the system: - You're checking in now - You expect to check in again or check out within 60 minutes -- If 60 minutes pass without activity, you'll be marked as overdue +- If 60 minutes pass without activity, you'll be marked as overdue alert ### Use Cases for Time Intervals @@ -174,14 +168,17 @@ This tells the system: 4. **Check-in Points**: Regular status updates during long operations ``` - checkin 15 Descending cliff face + checkin 15 Descending cliff + ``` + +5. **Check-in a reminder**: Reminders to check in on something like a pot roast + ``` + checkin 30 🍠🍖 ``` ### Overdue Check-ins -The system tracks all check-ins with time intervals and can identify who is overdue. The module provides the `get_overdue_checkins()` function that returns a list of overdue users. - -**Note**: Automatic alerts for overdue check-ins require integration with the bot's scheduler or alert system. The checklist module provides the detection capability, but sending notifications must be configured separately through the main bot's alert features. +The system tracks all check-ins with time intervals and can identify who is overdue. The module provides the `get_overdue_checkins()` function that returns a list of overdue users. It alerts on the 20min watchdog. ## Practical Examples @@ -258,15 +255,12 @@ checkin 45 Site survey tower location 2 The checklist system automatically captures GPS coordinates when available. This can be used for: - Tracking last known position -- Geo-fencing applications -- Emergency response coordination - Asset location management ### Alert Systems The overdue check-in feature can trigger: - Notifications to supervisors -- Emergency alerts - Automated messages to response teams - Email/SMS notifications (if configured) @@ -274,9 +268,7 @@ The overdue check-in feature can trigger: Combine with the scheduler module to: - Send reminders to check in -- Automatically generate reports - Schedule periodic check-in requirements -- Send daily summaries ## Best Practices diff --git a/modules/checklist.py b/modules/checklist.py index cf6b283..9ecd81e 100644 --- a/modules/checklist.py +++ b/modules/checklist.py @@ -386,18 +386,18 @@ def process_checklist_command(nodeID, message, name="none", location="none"): return ("Command: checklist followed by\n" "checkin [interval] [note]\n" "checkout [note]\n" - "purgein - delete your checkin\n" - "purgeout - delete your checkout\n" - "checklistapprove - approve checkin\n" - "checklistdeny - deny checkin\n" - "Example: checkin 60 Hunting in tree stand") + "purgein - remove checkins\n" + "purgeout - remove checkouts\n" + "checklistapprove \n" + "checklistdeny \n" + "Example: checkin 60 Leaving for a hike") else: return ("Command: checklist followed by\n" "checkout [interval] [note]\n" "checkin [note]\n" - "purgeout - delete your checkout\n" - "purgein - delete your checkin\n" - "Example: checkout 60 Leaving park") + "purgeout - remove any checkouts\n" + "purgein - remove checkins\n" + "Example: checkout 60 Leaving for a hike") elif "checklist" in message_lower: return list_checkin()