Mrc Monitor
Real-time token monitoring for MRC canteen order system.
- Rating
- 4.5 (420 reviews)
- Downloads
- 17,101 downloads
- Version
- 1.0.0
Overview
Real-time token monitoring for MRC canteen order system.
Complete Documentation
View Source →
MRC Canteen Monitor
Monitor MRC canteen order tokens and notify when they're ready for pickup.
Quick Start
When user sends any command containing canteen tokens:
- Extract all token numbers from the message
- Start the background monitor script
- Respond immediately with confirmation
Command Recognition
Users may send tokens with various prefixes:
- "mrc 73" or "mrc 73 97 42"
- "token 73" or "token 73 97"
- "monitor 73"
- "check 73" (one-time check only)
Starting the Monitor
Extract all numbers from the user message and start the background monitor:
python3 skills/mrc-monitor/scripts/monitor.py <platform> <channel_id> <token1> <token2> ...
Where:
platform: "telegram" or "discord"channel_id: Current channel identifier (platform prefix is optional, e.g.,telegram_123or123both work)token1,token2, ...: Token numbers to monitor
python3 skills/mrc-monitor/scripts/monitor.py telegram telegram_6046286675 73 97 42
# or
python3 skills/mrc-monitor/scripts/monitor.py telegram 6046286675 73 97 42
Background Execution
Start the monitor as a background process so the agent responds immediately:
import subprocess
# channel_id can be with or without platform prefix (both work)
cmd = ['python3', 'skills/mrc-monitor/scripts/monitor.py',
platform, channel_id] + [str(t) for t in tokens]
subprocess.Popen(cmd, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
Agent Response
After starting the monitor, respond immediately with:
✅ Monitoring tokens: 73, 97, 42
Checking every 15 seconds.
I'll notify you here when they're ready! 🍕
One-Time Check
For "check 73" commands, perform a single Firebase query and respond with status without starting a background monitor.
Monitor Behavior
The monitor script:
- Polls Firebase Firestore every 15 seconds
- Checks all monitored tokens in each poll
- Sends "🍕 Order X is ready!" notification when a token's status is "Ready"
- Removes notified tokens from the watch list
- Exits automatically when all tokens are notified
- Handles errors gracefully with retries
- Logs all activity to
skills/mrc-monitor/logs/monitor_YYYYMMDD_HHMMSS.log
Error Handling
The script automatically handles:
- Network timeouts (retries up to 5 times)
- HTTP errors (including rate limits)
- Unexpected errors (stops after 5 consecutive failures)
- Signal termination (SIGTERM, SIGINT)
Firebase Details
- Project: kanteen-mrc-blr-24cfa
- Collection: orders
- Document fields:
studentId(string): "student-{token_number}"status(string): "Preparing", "Ready", "Completed"
Installation
openclaw install mrc-monitor
💻Code Examples
python3 skills/mrc-monitor/scripts/monitor.py <platform> <channel_id> <token1> <token2> ...
Where:
- `platform`: "telegram" or "discord"
- `channel_id`: Current channel identifier (platform prefix is optional, e.g., `telegram_123` or `123` both work)
- `token1`, `token2`, ...: Token numbers to monitor
Example:python3 skills/mrc-monitor/scripts/monitor.py telegram 6046286675 73 97 42
## Background Execution
Start the monitor as a background process so the agent responds immediately:subprocess.Popen(cmd, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
## Agent Response
After starting the monitor, respond immediately with:python3 skills/mrc-monitor/scripts/monitor.py telegram telegram_6046286675 73 97 42
# or
python3 skills/mrc-monitor/scripts/monitor.py telegram 6046286675 73 97 42import subprocess
# channel_id can be with or without platform prefix (both work)
cmd = ['python3', 'skills/mrc-monitor/scripts/monitor.py',
platform, channel_id] + [str(t) for t in tokens]
subprocess.Popen(cmd, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)✅ Monitoring tokens: 73, 97, 42
Checking every 15 seconds.
I'll notify you here when they're ready! 🍕Tags
Quick Info
Ready to Install?
Get started with this skill in seconds
Related Skills
4claw
4claw — a moderated imageboard for AI agents.
Aap Passport
Agent Attestation Protocol - The Reverse Turing Test.
Acestep Lyrics Transcription
Transcribe audio to timestamped lyrics using OpenAI Whisper or ElevenLabs Scribe API.
Adaptive Suite
A continuously adaptive skill suite that empowers Clawdbot.