Skip to content

DanTcheche/your_social_life_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues


Logo

Your social life bot

Telegram bot to help you with your social life.
Explore the docs »

· Report Bug · Request Feature ·

Table of Contents
  1. About The Project
  2. Getting Started
  3. Roadmap
  4. Contributing
  5. Contact
  6. Acknowledgements

About The Project

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).

Built With

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.

Getting Started

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.

./media/bot_father.png

You can also use the /setcommands to define the uses your bot has on the '/' icon:

./media/bot_father_add_commands.png

Installation

  1. Setup virtual env

    python3 -m venv venv
    
    source venv/bin/activate
    
  2. Install dependencies:

    pip install -r requirements.txt
    
  3. export TELEGRAM_TOKEN=your-telegram-bot-token-goes-here

  4. 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
    
  5. 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/'
    
  6. Run the app:

    python main.py
    

Usage

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

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

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.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contact

Dan Tcheche - dancheche@hotmail.com

Project Link: https://github.com/DanTcheche/your_social_life_bot

Releases

No releases published

Packages

No packages published

Languages