Challenges & Solutions

Key challenges encountered during development and how they were solved.

Development Challenges

1. Finding a Free WhatsApp API

Challenge: Finding a reliable, free WhatsApp API for automation.

Solution: After extensive research, discovered the Baileys library - an open-source WhatsApp Web API that works without official API costs.

2. WhatsApp Group Updates

Challenge: Bot was failing to send messages to groups consistently due to changes in group metadata.

Solution: Implemented a caching mechanism to store and manage group metadate (e.g. new member added).

3. Task Scheduling

Challenge: Initial approach used Windows Task Scheduler with child processes, which wasn't cross-platform compatible.

Solution: Migrated to node-schedule for in-process scheduling. This kept the server running continuously and made the solution OS-independent.

4. 24/7 Uptime

Challenge: Running the bot 24/7 on a personal laptop required it to stay on constantly.

Solution: Deployed to Google Cloud's free tier machine, providing reliable uptime without keeping personal hardware running continuously.

Current Challenges

API Reliability

The Clist.by API is occasionally down during scheduled reminder times. Planning to implement fallback mechanisms using individual platform APIs (CodeChef, Codeforces, LeetCode, AtCoder).

Library Updates

Baileys library undergoes frequent updates that sometimes introduce breaking changes. Requires ongoing attention and bot updates to maintain compatibility.

Cloud Costs

While using Google Cloud's lifetime free tier, network usage still incurs minimal charges. Keeping costs optimized remains an ongoing consideration.


Have you encountered other challenges? Contributions are welcome!