- Add comprehensive documentation in botbook/ with 12 chapters - Add botapp/ Tauri desktop application - Add botdevice/ IoT device support - Add botlib/ shared library crate - Add botmodels/ Python ML models service - Add botplugin/ browser extension - Add botserver/ reorganized server code - Add bottemplates/ bot templates - Add bottest/ integration tests - Add botui/ web UI server - Add CI/CD workflows in .forgejo/workflows/ - Add AGENTS.md and PROD.md documentation - Add dependency management scripts (DEPENDENCIES.sh/ps1) - Remove legacy src/ structure and migrations - Clean up temporary and backup files
72 lines
2.2 KiB
QBasic
72 lines
2.2 KiB
QBasic
PARAM description AS STRING LIKE "My computer won't turn on" DESCRIPTION "Description of the IT issue or problem"
|
|
PARAM category AS STRING LIKE "hardware" DESCRIPTION "Category: hardware, software, network, email, account, other" OPTIONAL
|
|
PARAM priority AS STRING LIKE "medium" DESCRIPTION "Priority level: critical, high, medium, low" OPTIONAL
|
|
|
|
DESCRIPTION "Create a new IT support ticket with issue details and priority assignment"
|
|
|
|
useremail = GET "session.user_email"
|
|
username = GET "session.user_name"
|
|
|
|
IF NOT category THEN
|
|
category = "other"
|
|
END IF
|
|
|
|
IF NOT priority THEN
|
|
priority = "medium"
|
|
END IF
|
|
|
|
ticketnumber = "TKT" + FORMAT(NOW(), "YYYYMMDD") + "-" + FORMAT(RANDOM(1000, 9999))
|
|
|
|
slahours = 48
|
|
IF priority = "critical" THEN
|
|
slahours = 4
|
|
ELSE IF priority = "high" THEN
|
|
slahours = 24
|
|
ELSE IF priority = "low" THEN
|
|
slahours = 72
|
|
END IF
|
|
|
|
assignedteam = "general-support"
|
|
IF category = "network" THEN
|
|
assignedteam = "network-team"
|
|
ELSE IF category = "hardware" THEN
|
|
assignedteam = "desktop-support"
|
|
ELSE IF category = "email" THEN
|
|
assignedteam = "messaging-team"
|
|
ELSE IF category = "account" THEN
|
|
assignedteam = "identity-team"
|
|
END IF
|
|
|
|
WITH ticket
|
|
number = ticketnumber
|
|
desc = description
|
|
cat = category
|
|
prio = priority
|
|
status = "new"
|
|
userEmail = useremail
|
|
userName = username
|
|
team = assignedteam
|
|
created = NOW()
|
|
END WITH
|
|
|
|
SAVE "tickets.csv", ticket
|
|
|
|
SET BOT MEMORY "last_ticket", ticketnumber
|
|
|
|
subject = "Ticket Created: " + ticketnumber
|
|
message = "Hello " + username + ",\n\nYour support ticket has been created.\n\nTicket: " + ticketnumber + "\nCategory: " + category + "\nPriority: " + priority + "\nExpected Response: Within " + slahours + " hours\n\nIssue:\n" + description
|
|
|
|
SEND EMAIL useremail, subject, message
|
|
|
|
teamsubject = "[" + priority + "] New Ticket: " + ticketnumber
|
|
teammessage = "New ticket from " + username + " (" + useremail + ")\n\nCategory: " + category + "\nPriority: " + priority + "\n\nDescription:\n" + description
|
|
|
|
SEND EMAIL assignedteam + "@company.com", teamsubject, teammessage
|
|
|
|
TALK "Ticket created: " + ticketnumber
|
|
TALK "Category: " + category
|
|
TALK "Priority: " + priority
|
|
TALK "Assigned Team: " + assignedteam
|
|
TALK "Expected Response: Within " + slahours + " hours"
|
|
|
|
RETURN ticketnumber
|