Telegram bot to help you with your social life.
Explore the docs »
·
Report Bug
·
Request Feature
·
Table of Contents
With the exponential growth of Telegram in the last month I found myself interested in building some useful bots to help in the daily life.
The current main functionalities are:
-
Birthdays management.
- Adding birthdays.
- Listing birthdays.
- Getting next birthday.
- Notification when it's someone's birthday (WIP).
-
Events management.
- Adding events.
- Listing next events.
- Getting next event.
- Attending or missing events.
- Deleting events.
- Notification the day of an event (WIP).
This section should list any major frameworks that you built your project using. Leave any add-ons/plugins for the acknowledgements section. Here are a few examples.
Open @BotFather on Telegram and create a new bot with the /newbot
command.
Assign it a name. This name won't be the one that is shown on each message, so you can name it whatever you want.
@BotFather will grant you a Token. This is the TOKEN you'll need to interact with the BOT. Keep it private! Use this token in step 3 in the installation steps down below.
You can also use the /setcommands
to define the uses your bot has on the '/' icon:
-
Setup virtual env
python3 -m venv venv
source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
export TELEGRAM_TOKEN=your-telegram-bot-token-goes-here
-
OPTIONAL - run mongodb locally in a container
docker run --name mongodb -d -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=admin mongo
-
export MONGO_FULL_CONNECTION_STRING= if you are running mongodb locally you can use:
export MONGO_FULL_CONNECTION_STRING=mongodb://admin:admin@127.0.0.1
if you are using remote mongodb, use whatever the provider instructed you to use, e.g:
export MONGO_FULL_CONNECTION_STRING='mongodb+srv://<username>:<password>@cluster0.r5gkt.mongodb.net/'
-
Run the app:
python main.py
Use /help
to list all commands.
Commands:
/help - A little help.
/birthdays - List all birthdays.
/add_birthday name(one word) dd/mm/yyyy - Add a birthday.
/events - List all events.
/add_event name(one word) dd/mm/yyyy hh:mm place - Add an event.
/delete_event event_name- Deletes an event.
/attend_event event_name - Adds you as a participant.
/miss_event event_name - You are not assisting the event.
List all future events:
/events
Add event example:
/add_event RandomEvent 26/01/2021 16:00 Somewhere near
Attend event example:
/attend_event RandomEvent
Miss event example:
/miss_event RandomEvent
Delete event example:
/delete_event RandomEvent
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. 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
Dan Tcheche - dancheche@hotmail.com
Project Link: https://github.com/DanTcheche/your_social_life_bot