Skip to content

eeeeeric21/project-ic-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

44 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Project AesculAI - AI Health Companion for Elderly Care

Project AesculAI

πŸ€– AI-Powered Daily Health Check-ins for Elderly Patients Living Alone

Telegram Bot License Platform

Implementation Status: [Telegram βœ… 100%] [PWA ⚠️ 30%] [Alexa 🚧 40%]


🎯 Implementation Status (March 2026)

βœ… Fully Working (Production Ready)

  • Telegram Bot - Primary interface, 100% functional
    • All 15+ commands working
    • MERaLiON AI conversations
    • Medication reminders
    • Health alerts
    • Try it now: @AesculAI_helper_bot

⚠️ Partially Implemented

  • Web PWA - UI complete, not yet deployed
    • Landing page, chat interface, dashboard designed
    • Currently uses mock data
    • Not connected to backend yet
    • Status: Planned for Phase 2

🚧 Designed but Not Deployed

  • Alexa Skill - Code ready, not deployed
    • Handler code written
    • Intent model designed
    • Needs Cloud Functions deployment
    • Status: Planned for Phase 3

For detailed status, see: IMPLEMENTATION_STATUS.md


πŸ“– Table of Contents


🎯 Overview

Project AesculAI is an AI-powered daily health check-in system designed for elderly patients living alone. Using natural conversations in Singlish, the system monitors physical and mental health, detects concerning signals, and alerts caregivers when needed.

Key Highlights

  • πŸ‡ΈπŸ‡¬ Singapore-Focused - Understands Singlish and local context
  • πŸ’¬ Natural Conversations - No robotic interactions, just friendly chats
  • πŸ”” Smart Alerts - Automatic escalation to caregivers
  • πŸ“Š Health Monitoring - Tracks physical, mental, and cognitive health
  • πŸ’Š Medication Reminders - Never miss a dose
  • πŸ“ˆ Weekly Reports - Comprehensive health summaries

✨ Features

For Patients πŸ‘΄πŸ‘΅ (Telegram Bot - βœ… Fully Working)

  • βœ… Daily Check-ins - 8 AM morning, 2 PM afternoon
  • βœ… Voice Conversations - Speak naturally in Singlish
  • βœ… Health Tracking - Pain, mood, sleep, appetite monitoring
  • βœ… Medication Reminders - With skip/taken buttons
  • βœ… Emergency Detection - Chest pain, falls, breathing issues

For Caregivers πŸ‘¨β€βš•οΈπŸ‘©β€βš•οΈ (Telegram Bot - βœ… Fully Working)

  • βœ… Health Alerts - Risk-level based notifications (YELLOW/ORANGE/RED)
  • βœ… Medication Management - Add, edit, view medications
  • βœ… Adherence Reports - Track medication compliance
  • βœ… Weekly Summaries - Comprehensive health reports
  • βœ… Multi-Patient Monitoring - Monitor multiple patients

Web Dashboard (PWA - ⚠️ UI Only, Not Deployed)

Currently Built:

  • Landing page with feature overview
  • Chat interface (demo mode)
  • Dashboard with mock data

Needs:

  • Vercel deployment
  • Backend integration
  • Authentication

Alexa Skill (🚧 Designed, Not Deployed)

Currently Ready:

  • Intent model designed
  • Handler code written
  • Conversation flow planned

Needs:

  • Alexa Developer Console setup
  • Cloud Functions deployment
  • Account linking configuration

πŸš€ Quick Start

Step 1: Start the Bot

Search for @AesculAI_helper_bot in Telegram and click "Start"

Step 2: Register Your Role

Choose your role:

  • Patient: /registerpatient
  • Caregiver: /registercaseworker
  • Both: Run both commands!

Step 3: Start Using

As a Patient:

  • Say "Hello Aescul Helper"
  • Or just send any message
  • Have a natural conversation about your health

As a Caregiver:

  • /assign <patient_name> - Assign patients to yourself
  • /addmed <patient> <med> <dosage> <time> - Add medications
  • /listmed <patient> - View medications

πŸ“± Telegram Bot Guide

Getting Started

1. Register as a Patient

/registerpatient

You'll receive:

  • βœ… Daily check-ins at 8 AM and 2 PM
  • βœ… Medication reminders (if set up)
  • βœ… Health monitoring through conversations

Test it:

  • Say: "Hello Aescul Helper"
  • Type: "I'm feeling tired today"
  • The bot responds with empathetic conversation

2. Register as a Caregiver

/registercaseworker

You'll be able to:

  • βœ… Assign patients to yourself
  • βœ… Manage medications
  • βœ… Receive health alerts
  • βœ… Generate reports

3. Assign Patients

/assign <patient_name>

Example: /assign John

This links the patient to you for monitoring.

Daily Check-ins

Starting a Check-in

Option 1: Proactive (Automatic)

  • Bot sends check-in at 8 AM and 2 PM
  • Just reply naturally

Option 2: On-Demand

  • Say "Hello Aescul Helper"
  • Or send any message

During Check-in

Conversation Examples:

You: "I'm feeling a bit tired today"
Bot: "Aiyo, tired ah? Did you sleep well last night, hor?"
You: "My knee is painful"
Bot: "Wah lau, sorry to hear that. Is it the usual pain or worse than normal?"
You: "I didn't sleep well, kept waking up"
Bot: "Aiyah, sleep problem again. Have you been stressed lately?"

Ending a Check-in

/end

You'll receive a summary of your health status.

Medication Reminders

How It Works

  1. Scheduled Time β†’ Bot sends reminder
  2. Inline Buttons β†’ Tap "βœ“ Taken" or "⏭ Skip"
  3. If Skipped β†’ Choose reason (side effects, ran out, etc.)
  4. Caregiver Alerted β†’ If serious issue

Example Reminder

⏰ 8:00 AM β€” Time for your medicine:

πŸ’Š Metformin (500mg)
   Take with meals

[βœ“ Taken Metformin] [⏭ Skip Metformin]

Health Alerts

Alert Levels

Level Trigger Action
🟒 GREEN Score < 15 Continue monitoring
🟑 YELLOW Score 15-30 Daily digest
🟠 ORANGE Score 30-50 Instant notification
πŸ”΄ RED Score 50+ Emergency alert

Example Alert (to Caregiver)

🚨 Project AesculAI Alert

Patient: John
Level: ORANGE
Score: 35

Issues Detected:
β€’ pain
β€’ distress

Time: 09:45 on 13 Mar 2026

🌐 Web PWA

Status: ⚠️ Chat Interface Only (40% Complete)

What's Built

Chat Interface with Microphone:

  • βœ… Basic landing page
  • βœ… Chat UI with message bubbles
  • βœ… Microphone input (patients can speak to bot)
  • βœ… Demo AI responses (hardcoded)

What's NOT Built

No Caregiver Dashboard:

  • ❌ No patient monitoring interface
  • ❌ No alert management
  • ❌ No medication management UI
  • ❌ No reports or charts

Use Telegram Bot Instead: Caregivers should use the Telegram bot for all monitoring and management features.

What's Not Yet Implemented

  • ❌ Not deployed to Vercel
  • ❌ Not connected to MERaLiON AI (using demo responses)
  • ❌ Not saving to database
  • ❌ Not a PWA yet (no manifest/service worker)

Future Plans

Phase 1 (Planned):

  • Deploy to Vercel
  • Connect to MERaLiON API
  • Add PWA manifest

Phase 2 (Future - If Needed):

  • Caregiver dashboard (optional - Telegram bot is primary)
  • Real-time updates
  • Health graphs

Access the PWA

Local Development:

cd ProjectIC/web
npm run dev
# Open http://localhost:3000

Production: Coming soon (will be deployed to Vercel)

Note: The PWA is designed as an alternative chat interface for patients who prefer web over Telegram. Caregivers should use the Telegram bot for all monitoring features.


πŸŽ™οΈ Alexa Skill

Status: 🚧 Code Ready, Not Yet Deployed (60% Complete)

How to Test (No Device Needed!)

βœ… Test via Alexa Mobile App:

  1. Install Alexa app on any smartphone (iOS/Android)
  2. Enable "Aescul Helper" skill
  3. Tap microphone icon in app
  4. Speak: "Alexa, open Aescul Helper"
  5. Have conversation with bot

Why Mobile App Testing Works:

  • No physical Echo device required
  • Judges can test on their phones
  • No additional hardware purchase
  • Full voice interaction experience

What's Ready

  • βœ… Interaction model (intent schema, sample utterances)
  • βœ… Backend handler code written
  • βœ… MERaLiON integration code
  • βœ… Conversation flow designed
  • βœ… Can be tested on Alexa mobile app

What's Not Yet Done

  • ❌ Not uploaded to Alexa Developer Console
  • ❌ Not deployed to Google Cloud Functions
  • ❌ No account linking configured
  • ❌ Not submitted for certification

Future Plans

Phase 1 (Planned):

  • Create skill in Alexa Developer Console
  • Upload interaction model
  • Deploy webhook to Cloud Functions
  • Configure account linking with Telegram

Phase 2 (Future):

  • Submit for certification
  • Add voice-only medication reminders
  • Multi-language support (Malay, Tamil)

Example Conversation (When Deployed)

You: "Alexa, open Aescul Helper"

Alexa: "Hello! I'm Aescul Helper, your health companion. How are you feeling today?"

You: "I'm feeling tired"

Alexa: "Aiyo, tired ah? Did you sleep well last night, hor?"

You: "Not really, kept waking up"

Alexa: "Aiyah, sleep problem again. Have you been stressed lately?"

Note: The Alexa skill is designed and coded, but not yet deployed. Once deployed, it can be tested on any smartphone with the Alexa app - no Echo device needed!


πŸ“‹ Command Reference

General Commands

Command Description Who Can Use
/start Begin a check-in session Everyone
/end Complete current check-in Patients
/status View current session status Everyone
/myrole View your current role(s) Everyone

Registration Commands

Command Description Who Can Use
/registerpatient Register as a patient Everyone
/registercaseworker Register as a case worker Everyone

Caregiver Commands

Command Description Example
/assign Assign patient to yourself /assign John
/addmed Add medication /addmed John Metformin 500mg 08:00,20:00
/listmed List patient's medications /listmed John
/delmed Delete medication /delmed John Metformin
/adherence View medication adherence /adherence John
/weeklyreport Generate weekly report /weeklyreport John

Medication Reminder Buttons

When you receive a medication reminder:

Button Action
βœ“ Taken [Med] Mark as taken
⏭ Skip [Med] Mark as skipped (shows reason options)
βœ… Taken All (N meds) Mark all as taken

Skip Reasons:

  • βœ… Already took it β†’ Marks as taken
  • ⚠️ Side effects β†’ Logs + alerts caregiver
  • πŸ‘¨β€βš•οΈ Doctor said pause β†’ Logs only
  • πŸ’Š Ran out β†’ Logs + alerts caregiver
  • ❌ Don't need it β†’ Logs only
  • 🀷 No reason β†’ Logs only

❓ FAQ

General

Q: What is Project AesculAI?
A: An AI-powered daily health check-in system for elderly patients living alone. It monitors health through natural conversations and alerts caregivers when needed.

Q: Is it free?
A: Yes! Completely free to use.

Q: What languages does it support?
A: Primarily English with Singlish/local context. Can understand code-switching.

Telegram Bot

Q: How often will the bot check in?
A: Twice daily - 8 AM (morning) and 2 PM (afternoon).

Q: Can I start a check-in anytime?
A: Yes! Just say "Hello Aescul Helper" or send any message.

Q: What happens if I mention concerning symptoms?
A: The bot calculates a risk score and alerts your caregiver if needed (score β‰₯ 30).

Q: Can I be both a patient and a caregiver?
A: Yes! Just run both /registerpatient and /registercaseworker.

Medication

Q: How do I set up medication reminders?
A: Your caregiver uses /addmed <patient> <med> <dosage> <times> to set them up.

Q: What if I miss a medication reminder?
A: The bot follows up after 30 minutes, then alerts your caregiver after 60 minutes.

Q: Can I skip medications?
A: Yes, just tap "Skip" and choose a reason. Some reasons alert your caregiver.

Privacy

Q: Is my data private?
A: Yes. Conversations are encrypted and stored securely in Supabase. Only you and your assigned caregiver(s) can see your data.

Q: Who receives my health alerts?
A: Only the caregiver you're assigned to (via /assign command).


πŸ”§ Troubleshooting

Bot Not Responding

Problem: Bot doesn't reply to messages

Solutions:

  1. Check you're messaging @AesculAI_helper_bot
  2. Make sure you've registered (/registerpatient or /registercaseworker)
  3. Try /start to begin a new session
  4. Check your internet connection

Commands Not Working

Problem: Command returns error or not found

Solutions:

  1. Check spelling (commands are case-sensitive)
  2. Make sure you're registered in the right role
  3. Some commands require arguments (e.g., /assign John)
  4. Try /myrole to verify your registration

Not Receiving Alerts (Caregiver)

Problem: Patient triggers high-risk but no alert received

Solutions:

  1. Make sure you're registered as case worker (/registercaseworker)
  2. Make sure patient is assigned to you (/assign <patient>)
  3. Check patient's risk score reaches β‰₯ 30 (ORANGE) or β‰₯ 50 (RED)
  4. Verify your Telegram notification settings

Medication Reminders Not Coming

Problem: No reminders at scheduled times

Solutions:

  1. Verify medications are added (/listmed <patient>)
  2. Check reminder times are in 24-hour format (e.g., "08:00" not "8:00 AM")
  3. Make sure bot is running (send any message to test)
  4. Check timezone (all times in Singapore GMT+8)

Alexa Skill Issues

Problem: "There was a problem with the requested skill's response"

Solutions:

  1. Check your internet connection
  2. Make sure the skill is enabled in Alexa app
  3. Try: "Alexa, disable Aescul Helper" then "Alexa, enable Aescul Helper"
  4. Check if your phone number is linked correctly

Registration Issues

Problem: "Already registered" but can't use features

Solutions:

  1. Check your role with /myrole
  2. If registered as patient but need caregiver features, run /registercaseworker
  3. If need to re-register, contact support to reset

πŸ†˜ Getting Help

Support Channels

  • πŸ“± Telegram: Message @AesculAI_helper_bot with your question
  • πŸ“§ Email: [Your support email]
  • πŸ“– Documentation: This README

Bug Reports

Found a bug? Please include:

  1. What you were trying to do
  2. What happened instead
  3. Screenshot of the error
  4. Your Telegram username

πŸŽ“ For Competition Judges

Quick Test Guide

5-Minute Test:

  1. Register: /registerpatient and /registercaseworker
  2. Assign Yourself: /assign <your_name>
  3. Test Check-in: Say "Hello Aescul Helper" β†’ "I'm in pain"
  4. Test Medications: /addmed <your_name> VitaminC 1tab 08:00
  5. View Reports: /adherence <your_name> and /weeklyreport <your_name>

Full Test (15 minutes):

See JUDGE_TESTING_GUIDE.md for complete testing scenarios.


πŸ“„ License

MIT License - See LICENSE file for details


πŸ™ Acknowledgments

  • AI Singapore - MERaLiON LLM for Singlish understanding
  • Supabase - Database backend
  • Telegram - Bot platform
  • Render - Hosting

Made with ❀️ for elderly care in Singapore

Telegram Bot β€’ Documentation β€’ Support

About

this is for deployment on render

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors