Skip to content

anuragbhatt1805/Ouroboros-Bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ouroboros Bot 🤖


🌟 About the Project

Ouroboros Bot🤖 is a telegram bot developed for Computer Science & Engineering Department, HKBK College of Engineering.

It was developed for few of the following reasons:

  • It was developed for easier communication between students and faculty and department heads.
  • It helps students to ask personal doubts about the project, about the mentorship, and many more directly to related faculty.
  • It also helps students & faculty to register any complaints or issues related to the department, which can be improvised or changed for better development of students carrer and college.
  • For further updates, there is an option for feedback which can be given by the users of the telegram bot to help developers how they can improvise it add new features required for the department.

Teach Stack Used in Project is described later in the documentation.

Telegram Bot Can be accessed at HKBK Ouroboros Bot


🎯 Key Features

Bot Features

Few main key features of bot are as follows-

  • 👥 Different Controls to different users (Admin/Faculty/Students).
  • 🔑 User Verification System using OTP messaging.
  • 📝 Raising and Updating of Complaints and its proceeding respectively.
  • 🤔 Personal Query can be asked directly to faculty without involvment of any third person.
  • 📢 Status update for each complaint/query made by the user.
  • 💡 Feedback by users for further development of bot.

Project Features

Few main key features of project are as follow:-


⚒️ Tech Stack

Telegram BotFather

BotFather is the one bot to rule them all on Telegram.

  • It is used to create new bot accounts and manage your existing bots.
  • It provides an easy-to-use interface to create bots, generate and regenerate tokens, and set up bot commands.
  • It's a key component in the Telegram ecosystem, enabling the extension of Telegram's functionality through the creation of custom bots. BotFather is an essential tool for anyone looking to create and manage bots on Telegram, providing a streamlined process for bot creation and management.

Telegram API

The Telegram API is a set of functions provided by Telegram that developers can use to interact with Telegram's servers.

  • It allows developers to send and receive messages, manage groups, and perform various other tasks.
  • It's a key component in extending the functionality of Telegram beyond its standard features. The API is a powerful tool for creating custom Telegram clients or bots, providing a way to tap into the vast user base of Telegram for various applications.

Telegram Bots

Telegram Bots are special accounts that do not require an additional phone number to set up.

  • These bots can interact with users via inline requests, commands, and messages.
  • They are capable of many things - they can teach, play, search, broadcast, remind, connect, integrate with other services, or even pass commands to the Internet of Things.
  • They're a powerful tool for extending the functionality of Telegram, allowing developers to create new ways of interacting with the platform.

Python

Python is a high-level, interpreted programming language known for its readability and simplicity.

  • It supports multiple programming paradigms, including procedural, object-oriented, and functional programming.
  • Its extensive standard library and rich ecosystem of third-party packages make it a versatile language for developers. Python is widely used in various domains like web development, data analysis, machine learning, artificial intelligence, and more.

python-telegram-bot

python-telegram-bot is a Python wrapper for the Telegram Bot API.

  • It allows developers to create and manage Telegram bots with Python easily.
  • It's compatible with Python versions from 3.6 to 3.10, which makes it a versatile tool for creating bots.
  • It also includes a number of convenience features for handling different types of updates from Telegram. The library provides a pure Python interface for the Telegram Bot API.

PostgreSQL

PostgreSQL is a powerful, open-source object-relational database system.

  • It extends the SQL language with a robust set of features to safely store and scale complicated data workloads.
  • It's highly extensible and standards-compliant, making it a popular choice for many web applications. PostgreSQL comes with many features aimed to help developers build applications, administrators to protect data integrity and build fault-tolerant environments, and help you manage your data no matter how big or small the dataset.

SQLAlchemy

SQLAlchemy is a SQL toolkit and Object-Relational Mapping (ORM) system for Python.

  • It provides a full suite of well-known enterprise-level persistence patterns, designed for efficient and high-performing database access.
  • It's a comprehensive tool for working with relational databases in Python. SQLAlchemy's philosophy is SQL databases behave less like object collections as the scale gets larger, and more like arrays of tuples, and accommodates both styles.

Azure

Azure is Microsoft's cloud computing platform, providing a variety of services including those for computing, analytics, storage and networking. Users can pick and choose from these services to develop and scale new applications, or run existing applications in the public cloud.

  • It's a comprehensive suite of cloud services that developers and IT professionals use to build, deploy, and manage applications through Microsoft-managed data centers.

Azure Database for PostgreSQL

Azure Database for PostgreSQL is a fully managed database service provided by Microsoft's Azure.

  • It offers high-performance, highly available PostgreSQL databases in the cloud. - It supports a wide range of developer tools and integrates seamlessly with Azure services allowing you to focus on app development rather than managing database infrastructure.
  • It's a scalable solution with built-in security, including network isolation and encryption.

nohup for Python Deployment

nohup is a POSIX command to ignore the HUP (hangup) signal, enabling the program to continue running after the user has logged out.

  • In Python deployment, nohup can be used to run your Python application in the background, even after the terminal has been closed.
  • It's particularly useful for long-running Python scripts on remote servers, ensuring that the script execution isn't halted when the session ends.

🔮Future Updates 🔜

  • 👨‍👩‍👧 Parents Connections Features
  • 🏗️ Support for Students Projects
  • 📖 Dictionaries for Technical Terms
  • 🚀 Placement & Industry Information

👬 Meet the Team:-

Anurag Bhatt
Team Lead & Developer
Student, Dept. of CSE, HKBK
Github: Anurag Bhatt🔗


🤝 Contributing

Contributions to Ouroboros are welcome! To contribute, please connect to developer at anuragbhatt1805@gmail.com.


📄 License

This project is licensed under the MIT License.


Made with 🧠 by Our Team

About

Telegram Bot named "Ouroboros Bot", designed by using python-telegram-bot, twillo, SQLAlchemy, pandas, for HKBK College of Engineering

Topics

Resources

License

Stars

Watchers

Forks

Languages