90 lines
2.0 KiB
Markdown
90 lines
2.0 KiB
Markdown
# Decision Tree Helpdesk Application
|
|
|
|
This application provides a decision tree-based helpdesk system to guide users through troubleshooting steps.
|
|
|
|
## Features
|
|
|
|
- Interactive decision tree navigation
|
|
- Google OAuth authentication
|
|
- Admin interface for managing decision trees
|
|
- User-friendly interface
|
|
|
|
## Prerequisites
|
|
|
|
- Python 3.7+
|
|
- pip (Python package manager)
|
|
- A Google Developer account (for OAuth)
|
|
|
|
## Installation
|
|
|
|
1. Clone the repository:
|
|
```
|
|
git clone https://github.com/yourusername/decision-tree-helpdesk.git
|
|
cd decision-tree-helpdesk
|
|
```
|
|
|
|
2. Create and activate a virtual environment:
|
|
```
|
|
python -m venv venv
|
|
source venv/bin/activate # On Windows: venv\Scripts\activate
|
|
```
|
|
|
|
3. Install dependencies:
|
|
```
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
4. Set up environment variables:
|
|
Create a `.env` file in the root directory with the following variables:
|
|
```
|
|
GOOGLE_CLIENT_ID=your_client_id_here
|
|
GOOGLE_CLIENT_SECRET=your_client_secret_here
|
|
SECRET_KEY=your_secret_key_here
|
|
```
|
|
|
|
5. Initialize the database:
|
|
```
|
|
flask db init
|
|
flask db migrate -m "Initial migration"
|
|
flask db upgrade
|
|
```
|
|
|
|
## Running the Application
|
|
|
|
1. Start the development server:
|
|
```
|
|
flask run
|
|
```
|
|
|
|
2. Open your browser and navigate to:
|
|
```
|
|
http://localhost:5000
|
|
```
|
|
|
|
## Usage
|
|
|
|
### User Guide
|
|
|
|
1. Log in using your Google account
|
|
2. Navigate through the decision tree by answering questions
|
|
3. Follow the recommended solutions for your issue
|
|
|
|
### Admin Guide
|
|
|
|
1. Log in as an administrator
|
|
2. Access the admin panel to manage decision trees
|
|
3. Create, edit, or delete nodes in the decision tree
|
|
4. Define question and answer paths
|
|
|
|
## Contributing
|
|
|
|
1. Fork the repository
|
|
2. Create a feature branch: `git checkout -b feature-name`
|
|
3. Commit your changes: `git commit -m 'Add some feature'`
|
|
4. Push to the branch: `git push origin feature-name`
|
|
5. Submit a pull request
|
|
|
|
## License
|
|
|
|
This project is licensed under the MIT License - see the LICENSE file for details.
|