Events
| ID | Title | Date & Time | Location | Created By | Status | Actions |
|---|
Pending Approvals
| ID | Title | Date & Time | Confidence | Actions |
|---|
Family Members
| ID | Name | Role | Phone | WhatsApp ID | Actions |
|---|
Audit Log
| Time | Who | Action | Entity | Details |
|---|
Message Log
| ID | Time | From | Body | Media | Actions |
|---|
February 2026
Help & Documentation
WhatsApp Bot Commands
Family members can use these in the WhatsApp group chat. The bot understands Indonesian and English.
How to Talk to the Bot
Mention @Halo or reply to a bot message to interact. Help and approval replies always work without mention.
Creating Events
Mention the bot with your event naturally:
@Halo Meeting keluarga besok jam 10 di rumah
@Halo Dinner Friday 7pm at home
@Halo Arisan setiap Senin jam 2 siang
You can also send a photo of an invitation with @Halo in the caption — the bot reads images too.
Approving / Rejecting
When the bot detects an event, it asks for confirmation. Reply to its message with:
ok yes ya oke — to confirm
cancel no batal — to reject
Asking About Schedule
Ada acara apa besok?
What events this week?
Jadwal hari Senin apa?
Editing Events
Ubah meeting besok jadi jam 3
Change dinner location to restaurant
Ganti judul meeting jadi Team Sync
Cancelling Events
Cancel meeting besok
Batalkan arisan minggu depan
Recurring Events
Mention frequency and the bot handles it:
setiap Senin = weekly
setiap hari = daily
tiap bulan = monthly
yearly / setiap tahun
Help
Type help or bantuan in the group to show the command reference.
Automatic Features
These run automatically without any commands needed.
Daily Agenda (07:00)
Every morning at 7 AM, the bot sends today's confirmed events to the group.
Weekly Summary (Sunday 20:00)
Every Sunday at 8 PM, the bot sends the upcoming week's events grouped by day.
Reminders (30 min before)
Each confirmed event gets a reminder 30 minutes before start time. Reminders respect quiet hours (21:00 - 06:00).
Recurring Event Expansion
Recurring events automatically create child instances for the next 14 days (runs daily at 00:05).
Member Auto-Registration
New senders in the group are automatically registered as family members.
Conflict Detection
When creating or editing events, the bot warns about overlapping confirmed events.
Dashboard Guide
How to use this admin dashboard.
Events Tab
View all events with metric cards at the top. Filter by status. Click + New Event to create manually. Use Cancel on confirmed events or Edit to modify details including recurrence.
Approvals Tab
Shows only PROPOSED events waiting for approval. Click Approve or Reject with an optional reason.
Members Tab
Manage family members. Members are auto-registered from WhatsApp, but you can edit names, roles, and phone numbers here.
Messages Tab
View all incoming WhatsApp messages. Filter by media. Click View to see the full message body and raw payload JSON (useful for debugging).
Calendar Tab
Monthly calendar view with color-coded events. Green = confirmed, yellow = proposed, red = cancelled. Click a day to see all events, click an event chip to edit.
Audit Log Tab
Tracks all actions: event creation, approval, edits, cancellations — from both WhatsApp and the dashboard.
Settings Tab
Configure bot trigger mode (mention-only vs all messages), LLM (AI model), and WAHA (WhatsApp) connection settings. Use Test Connection to verify WAHA is reachable.
Technical Info
Architecture and status information.
Stack
Python + FastAPI + PostgreSQL + APScheduler + Nginx
AI Models
Text: GLM-5 (745B MoE) — event extraction, classification, queries, edit/cancel
Vision: GLM-4.6V — reads images of schedules and invitations
Connected via WAHA PLUS. Webhook receives all group messages in real-time.
Timezone
All times in Asia/Singapore (UTC+8).
API
26 REST endpoints at /api/v1/. Health check: GET /api/v1/health
Settings
Bot Trigger Mode
Control when the bot processes messages. "Mention" mode saves LLM costs by only responding to @mentions and quote-replies.
LLM Configuration
OpenAI-compatible API for event extraction from messages.
WAHA Configuration
WhatsApp HTTP API connection for sending/receiving messages.