Skip to content

Seymapro/Kahinbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kahin Bot

Chat with @ozetcibot on Telegram MIT License

Kahin Bot is a Telegram bot that analyzes your data — like birth date and selfies — to reveal insights about your personality, career path, and even potential health traits. Whether you're curious about your personality, exploring career options, or looking for health-related predictions, Kahin Bot provides engaging and thought-provoking analyses in a user-friendly chat interface.

Caution

⚠️ This project is still under active development. Expect frequent updates and changes to the structure and functionality of the codebase. Use with caution, and regularly check for updates or modifications.

Features

  • Provides detailed information about your personality traits from both Dan Millman's and Douglas Forbes' perspectives
  • Offers different content formats including:
    • Full text
    • Summarized text
    • Bullet points
  • Utilizes Google Gemini for paraphrasing and summarizing content in Turkish
  • Provides personality traits based on astrological analysis

Installation

  1. Clone the repository:

    git clone --depth=1 -b main https://github.com/Seymapro/Kahinbot.git kahin-bot
    cd kahin-bot
  2. Install the required Python packages:

    pip install -r requirements.txt
  3. Set up environment variables:

    • Add the following environment variables to your environment, replacing the placeholders with your actual API keys and tokens:
    KAHIN_BOT_API_ID=your_telegram_api_id
    KAHIN_BOT_API_HASH=your_telegram_api_hash
    KAHIN_BOT_BOT_TOKEN=your_telegram_bot_token
    GEMINI_API_KEY=your_google_gemini_api_key

Testing

  1. Go to the tests directory:

    cd ./tests/
  2. Run all of the tests:

    python -m unittest

Deployment

  1. Create a systemd service file:

    touch /etc/systemd/system/kahin-bot.service
  2. Populate the created systemd service file appropriately:

    [Unit]
    Description="Kahin Bot is a Telegram bot that analyzes user-provided data — such as birth date, selfies, and other inputs — to make deductions and predictions about personal traits, career paths, potential medical conditions, and more."
    Documentation="https://github.com/Seymapro/Kahinbot"
    
    [Service]
    Type=simple
    Restart=always
    User=root
    Environment="KAHIN_BOT_API_ID=your_telegram_api_id"
    Environment="KAHIN_BOT_API_HASH=your_telegram_api_hash"
    Environment="KAHIN_BOT_BOT_TOKEN=your_telegram_bot_token"
    Environment="GEMINI_API_KEY=your_google_gemini_api_key"
    ExecStart=/usr/bin/python3 /kahin-bot/bot.py
    
    [Install]
    WantedBy=multi-user.target
    Alias=kahinbot
  3. Start the service:

    sudo systemctl start kahin-bot
  4. To stop the service:

    sudo systemctl stop kahin-bot

Usage

  1. Run the bot:

    python bot.py
  2. Start a conversation with the bot (@ozetcibot) on Telegram

  3. Follow the bot's instructions to choose the desired content

Data

We use the following books for our data:

  • The Life You Were Born to Live by Dan Millman
    • SHA256 Hash: DD579B23FAAAF0017C06FCFD8BBDD6937D1BF4F1601EE8C44941D4E5348D9149
  • Human Pin Code by Douglas Forbes
    • SHA256 Hash: 839048F70036CFEE0B446B183F6579D39A376FD07E7511FE1BD12950FDE7C2ED

The data directory (data/) is structured as follows:

data
├───forbes
│   └───tr
│       ├───MDs
│       └───Summarizations
└───millman
    ├───en
    │   ├───JSONs
    │   ├───MDs
    │   └───Summarizations
    └───tr
        ├───JSONs
        ├───JSONs_Extended
        ├───MDs
        └───Summarizations

Contributing

Contributions are always welcome! Please open an issue or submit a pull request if you would like to contribute to the project. See CONTRIBUTING for ways to get started. Please adhere to this project's CODE OF CONDUCT.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

Contact

If you have any questions or suggestions, feel free to contact me at @Seymapro.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published