A Telegram bot that automatically monitors the Casio AE-1200WHL-5AVDF watch stock on casiostore.bhawar.com and sends instant notifications when it becomes available.
- β 24/7 Monitoring - Checks stock every 1 minute automatically
- β Instant Alerts - Telegram notifications when watch is back in stock
- β
Bot Commands -
/statusand/checkcommands - β Free Hosting - Runs on Render's free tier
- β Self-Healing - Self-ping mechanism prevents server sleep
- β Smart Detection - Finds "out of stock" vs "add to cart" text
- β Polling-Based - Stable connection without webhook issues
- β Security features - Rate limiting and authentication
Built With:
- Node.js - Runtime environment
- Express - Web framework
- Telegraf - Telegram Bot Framework
- node-fetch - HTTP client for web scraping
- Render - Cloud hosting platform
- Node.js 18+ installed
- Telegram account
- GitHub account (for deployment)
-> Clone the repository
- git clone https://github.com/NekoSenseii/casio-watch-notifier.git
- cd casio-watch-notifier
-> Install dependencies
- npm install
-> Set up environment variables
Create a .env file in the root directory (copy from .env.example) and fill in your values:
TELEGRAM_BOT_TOKENβ Your Telegram bot tokenTELEGRAM_CHAT_IDβ Your group chat IDTELEGRAM_ADMIN_USER_IDβ Your admin user IDTELEGRAM_TEST_CHAT_IDβ Your personal chat ID (for testing)HEALTH_CHECK_KEYβ A random secret key for health checksPORTβ Port number (default:3000)
.env file to version control!
To run this project, you will need to add the following environment variables:
Required:
TELEGRAM_BOT_TOKEN- Get from @BotFather on TelegramTELEGRAM_CHAT_ID- Your Telegram group chat IDTELEGRAM_ADMIN_USER_ID- Your personal Telegram user IDHEALTH_CHECK_KEY- Your random secret key
Optional:
TELEGRAM_TEST_CHAT_ID- For personal testing (can be same as admin ID)PORT- Server port (default: 3000)
Getting your Bot Token:
- Message @BotFather on Telegram
- Use
/newbotcommand - Follow instructions and copy the token
Getting your Chat IDs:
- Group ID: Add @RawDataBot to your group, it will show the group ID
- Personal ID: Message @RawDataBot privately to get your user ID
npm install
cp .env.example .env
nano .env
npm start
-
Fork this repository to your GitHub account
-
Create new Web Service on Render
-
Connect your repository and configure:
- Build Command:
npm install - Start Command:
npm start
- Add Environment Variables:
TELEGRAM_BOT_TOKEN: Your bot tokenTELEGRAM_CHAT_ID: Your chat ID
- Deploy and your bot will be live 24/7!
- Railway - Free 500 hours/month
- Fly.io - Free tier available
- Replit - Always-on for $5/month
Once deployed, use these commands in Telegram:
Check Status:
/status
Shows bot uptime, stock status, and monitoring info
Manual Check:
/check
Immediately checks current stock status
Admin Commands (Private Chat Only)
/devtest
Sends test notification to admin's private chat
Admin Status:
/adminstatus
Detailed bot status with configuration info
Configuration View:
/config
View current bot configuration and settings
The bot automatically sends alerts like this when stock is found:
π STOCK ALERT!
β
Casio AE-1200WHL-5AVDF is back in stock!
π Buy now: [Product Link]
π° Price: Check website for current price
β° Checked at: 29/8/2025, 12:30:00 PM
β‘ Hurry! Limited stock available
Contributions are what make the open source community amazing! Any contributions you make are greatly appreciated.
-> Fork the Project
-> Create your Feature Branch (git checkout -b feature/AmazingFeature)
-> Commit your Changes (git commit -m 'Add some AmazingFeature')
-> Push to the Branch (git push origin feature/AmazingFeature)
-> Open a Pull Request
- Add support for multiple products
- Create web dashboard
- Add price tracking
- Support more stores
- Add more notification channels
This project is licensed under the GNU AGPL v3.
You are free to:
- Use commercially
- Modify
- Distribute
- @NekoSenseii - Initial work
See also the list of contributors who participated in this project.
- Telegraf.js - Amazing Telegram bot framework
- Render - Free hosting platform
- readme.so - README template generator
- Shields.io - Beautiful badges
- @BotFather - Telegram's bot creation tool
If this project helped you, please consider:
- β Star this repository
- π Report issues in the Issues tab
- π‘ Suggest features via Issues
- π Share with others who might find it useful
Need help?
- Create an issue
- Check existing discussions