Skip to content

Feature: Ticket Assign and Claim System #25

@bberka

Description

@bberka

Description

Implement a system to allow admins to claim responsibility for tickets and assign or reassign tickets to other team members. This feature will improve ticket management by ensuring clear ownership and accountability for resolving tickets.


Why This Feature is Needed

  • Accountability: Assigning tickets ensures that each ticket has a clear owner, reducing confusion and improving response times.
  • Flexibility: Higher-role admins can reassign tickets to ensure the right person is handling the issue.
  • Improved Workflow: A ticket assignment system streamlines ticket management and ensures that no ticket is left unattended.

Implementation Details

  1. Claim Ticket Responsibility:

    • Allow admins to claim responsibility for a ticket.
    • Once claimed, the ticket will display the admin's name or ID as the assigned owner.
    • Notify the assigned admin (e.g., via Discord or the web panel) when they claim a ticket.
  2. Assign Ticket Responsibility:

    • Allow higher-role admins (e.g., Owners) to assign tickets to other team members.
    • Provide a dropdown or search field in the web panel to select the team member to assign the ticket to.
    • Notify the assigned team member when a ticket is assigned to them.
  3. Reassign Ticket Responsibility:

    • Allow higher-role admins to reassign tickets to another team member.
    • Notify both the previous and new assignees about the reassignment.
  4. Web UI Integration:

    • Add a section in the ticket details page for ticket assignment.
    • Display the current assignee and provide options to claim, assign, or reassign the ticket.
  5. Discord Bot Integration:

    • Add commands for claiming and assigning tickets (e.g., /ticket claim, /ticket assign @user).
    • Ensure that only authorized users can use these commands.
  6. Database Changes:

    • Add a field to the ticket entity to store the assigned user's ID.
    • Track assignment history for auditing purposes.
  7. Notifications:

    • Notify users when they are assigned or reassigned a ticket.
    • Include details such as the ticket ID, type, and a link to the ticket.

Acceptance Criteria

  • Admins can claim responsibility for tickets.
  • Higher-role admins can assign tickets to other team members.
  • Higher-role admins can reassign tickets to another team member.
  • Notifications are sent to users when they are assigned or reassigned a ticket.
  • The web panel displays the current assignee and provides options to claim, assign, or reassign tickets.
  • Discord bot commands are implemented for claiming and assigning tickets.
  • The feature is tested and works for various team configurations and permission levels.

Priority

Medium

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions