{"id":23690673,"url":"https://github.com/ryanl2004/camunda-it-support-ticketing-system","last_synced_at":"2026-02-16T13:08:56.096Z","repository":{"id":241411035,"uuid":"806823202","full_name":"RyanL2004/Camunda-IT-Support-Ticketing-System","owner":"RyanL2004","description":"Created an automated IT Support ticketing System for a SMB retailer to manage User Enquiry tickets using Camunda","archived":false,"fork":false,"pushed_at":"2025-01-02T02:12:06.000Z","size":4398,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-11T10:17:00.567Z","etag":null,"topics":["api","api-gateway","java","maven","smtp","springboot"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RyanL2004.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-05-28T01:25:47.000Z","updated_at":"2025-01-02T02:12:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"0adb0ef2-5b67-44bb-98f3-7ce1c8f6d1e9","html_url":"https://github.com/RyanL2004/Camunda-IT-Support-Ticketing-System","commit_stats":null,"previous_names":["ryanl2004/camunda-it-support-ticketing-system"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RyanL2004/Camunda-IT-Support-Ticketing-System","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RyanL2004%2FCamunda-IT-Support-Ticketing-System","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RyanL2004%2FCamunda-IT-Support-Ticketing-System/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RyanL2004%2FCamunda-IT-Support-Ticketing-System/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RyanL2004%2FCamunda-IT-Support-Ticketing-System/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RyanL2004","download_url":"https://codeload.github.com/RyanL2004/Camunda-IT-Support-Ticketing-System/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RyanL2004%2FCamunda-IT-Support-Ticketing-System/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279000775,"owners_count":26082906,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","api-gateway","java","maven","smtp","springboot"],"created_at":"2024-12-30T02:51:39.494Z","updated_at":"2025-10-09T02:41:11.610Z","avatar_url":"https://github.com/RyanL2004.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎟️ IT Support Ticketing System\n\nA modern, enterprise-grade IT support ticketing system built with Camunda Platform 8, Spring Boot, and MongoDB. This system provides a complete business process management solution for handling support tickets through their entire lifecycle.\n\n## 📚 Documentation\n- [Technical Report - Detailed system architecture, functionality and implementation details](https://github.com/RyanL2004/Camunda-IT-Support-Ticketing-System/blob/main/Development%20Information%20System%20Report.pdf)\n- [Powerpoint Presentation](https://github.com/RyanL2004/Camunda-IT-Support-Ticketing-System/blob/main/Software%20Dev%20presentationslidesTT.pptx) \u003c/br\u003e\n\n## System\n\n![System](https://github.com/user-attachments/assets/38d2a3bf-f295-4d03-9a65-9e69ceb9b667)\n\n\n\n## 🚀 Features\n\n- **Multi-Channel Ticket Creation**\n  - Web portal interface for direct ticket submission\n  - Email integration for ticket creation and updates\n  - Automated ticket routing and assignment\n\n- **Intelligent Workflow Management**\n  - BPMN 2.0 process modeling\n  - Dynamic task assignment\n  - Automated status updates\n  - SLA monitoring\n\n- **Communication Features**\n  - Automated email notifications\n  - Status update notifications\n  - Request for additional information workflow\n  - Survey distribution system\n\n- **Data Management**\n  - MongoDB integration for ticket storage\n  - Secure credential handling\n  - Audit trail logging\n  - Survey response collection\n\n## 🛠️ Technology Stack\n- **Language**: Java 11\n- **Library**: Spring Boot\n- **Process Management**: Camunda Platform 8\n- **Backend Framework**: Spring Boot 2.4.3\n- **Database**: MongoDB Atlas\n- **Email Service**: Spring Mail with Gmail SMTP\n- **Build Tool**: Maven\n- **Additional Libraries**:\n  - Zeebe Client\n  - Commons Validator\n  - Jackson for JSON processing\n  - MongoDB Driver\n\n## 📋 Prerequisites\n\n- Java 11 or higher\n- Maven 3.6+\n- Mongoose, MongoDB or MongoDB \n- Camunda Platform 8 account\n- Gmail account for SMTP services\n\n## 🔧 Installation\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/yourusername/it-support-ticketing-system.git\n   ```\n\n2. Configure MongoDB connection:\n   - Update `application.yml` with your MongoDB credentials\n   - Set up your database collections\n\n3. Configure email service:\n   ```yaml\n   spring.mail:\n     host: smtp.gmail.com\n     port: 587\n     username: your-email@gmail.com\n     password: your-app-password\n   ```\n\n4. Configure Camunda credentials:\n   ```yaml\n   zeebe:\n     client:\n       cloud:\n         region: your-region\n         clusterId: your-cluster-id\n         clientId: your-client-id\n         clientSecret: your-client-secret\n   ```\n\n5. Build the project:\n   ```bash\n   mvn clean install\n   ```\n\n## 🚀 Running the Application\n\n1. Start the Email Service:\n   ```bash\n   cd CamundaSendEmailservices\n   mvn spring-boot:run\n   ```\n\n2. Start the Ticketing System Service:\n   ```bash\n   cd CamundaTicketingSystemservices\n   mvn spring-boot:run\n   ```\n\n3. Deploy the BPMN workflow through Camunda Platform 8 Console\n\n## 🔐 Security\n\n- Secure password handling\n- MongoDB Atlas security features\n- Email validation and sanitization\n- Protected API endpoints\n\n## 📈 Monitoring and Management\n\n- Built-in logging system\n- MongoDB data persistence\n- Camunda Operate integration\n- Survey feedback collection\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## 📄 License\n\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.\n\n## 👥 Authors\n\n- **[Rayan]** - *Initial work* - [GitHub Profile](https://github.com/RyanL2004)\n\n## 🙏 Acknowledgments\n\n- Camunda Community\n- Spring Boot Team\n- MongoDB Team\n\n## 📞 Support\n\nFor support questions, please open an issue in the GitHub repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryanl2004%2Fcamunda-it-support-ticketing-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fryanl2004%2Fcamunda-it-support-ticketing-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryanl2004%2Fcamunda-it-support-ticketing-system/lists"}