Best Flask open-source libraries and packages

WA ScheduledMessenger

A Python3 program with a WebUI that checks if today is the date to send a WhatsApp message to the corresponding person.
Updated 1 year ago

WA-ScheduledMessenger

A Python3 program with a WebUI that checks if today is the date to send a WhatsApp message to the corresponding person. For example on someones birthday or anniversary.

Works on Linux, Windows and MacOS

For the Legacy version (first version of the project), click here

Features

  • Automattically check daily if messages need to be sent
  • Send scheduled messages to others in private
  • Send scheduled messages to others in groups (via the invite link)
  • Erasing the schedule via the WebUI
  • Adding tasks to the schedule via the WebUI
  • Launch a manual check and send messages (if the schedule matches the date)
  • Log on to the WebUI with other devices on the network (or from any network with port forwarding (not recommended))
  • All functions are compatible if logged on via another device

Demo

https://user-images.githubusercontent.com/113618658/216082028-88ed9ba3-9a6a-4106-8207-849335161fee.mp4

Installation

Install WA-ScheduledMessenger

  git clone https://github.com/tdeerenberg/WA-ScheduledMessenger.git
  cd WA-ScheduledMessenger
  pip install -r requirements.txt

Usage/Examples

You need to be logged on on https://web.whatsapp.com/ in your default browser. WA-ScheduledMessenger opens this webpage and automatically send the set message to the designated contact.

Note: To send a message to a group, the group id is the id in the invite link. So https://chat.whatsapp.com/ GROUPID

The program can be run by clicking it in a file manager or with the command (make sure that you are in the right directory):

  python app.py

or

  python3 app.py

After running app.py, the Web Interface should be up and running on localhost (127.0.0.1) and your local ip address (192.168.x.x) port 2160

Configuration

Username and password

All configurable settings can be configured inconfig.json

Run Daily

There are two methods on how to run this program automatically every day.

First method: Via the WebUI

The option Send the scheduled messages daily in the navigation bar once logged onto the WebUI repeats the Send the scheduled messages once every day. It has a built in sleep function that sleeps for around 24 hours before executing again. The WebUI will keep loading because the Python proces is not done until the sleep is over. Please do not open an issue saying that the page keeps loading indefinitely.

Second method: Crontab (Linux) or Windows Task Scheduler (Windows)

WA-ScheduledMessenger can be added to the Crontab table (Linux) and to Windows Task Scheduler (Windows). If you use any other program that schedules and runs programs every day, you can use that.

The Python program that needs to be added to the scheduler application is ScheduledMessenger.py.

Authors

License

GNU GPLv3 Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.