Add HelpServ: a help-desk ticket queue
Users open tickets with REQUEST (or HELPME); the queue is event-sourced and, because a request is an event, the audit feed announces it to staff and records it in the searchable log — so OperServ LOGSEARCH finds a ticket by any word, the same trail as reports. A user can CANCEL their own open ticket. Operators work the queue: LIST [ALL], VIEW, TAKE (claim), NEXT (claim the oldest unassigned), CLOSE. Filing is rate-limited. Opt-in. That completes the six third-party modules — all interconnected: they share the account/channel/oper identity, the event-sourced store, and the one audit/incident trail.
This commit is contained in:
parent
06227e73da
commit
a47dd6bda3
9 changed files with 385 additions and 2 deletions
|
|
@ -26,6 +26,7 @@ use fedserv_infoserv::InfoServ;
|
|||
use fedserv_reportserv::ReportServ;
|
||||
use fedserv_groupserv::GroupServ;
|
||||
use fedserv_chanfix::ChanFix;
|
||||
use fedserv_helpserv::HelpServ;
|
||||
use fedserv_example::ExampleServ;
|
||||
use fedserv_inspircd::InspIrcd;
|
||||
use fedserv_nickserv::NickServ;
|
||||
|
|
@ -119,6 +120,11 @@ async fn main() -> Result<()> {
|
|||
uid: format!("{}AAAAAM", cfg.server.sid),
|
||||
}));
|
||||
}
|
||||
if enabled("helpserv") {
|
||||
services.push(Box::new(HelpServ {
|
||||
uid: format!("{}AAAAAN", cfg.server.sid),
|
||||
}));
|
||||
}
|
||||
if enabled("example") {
|
||||
services.push(Box::new(ExampleServ {
|
||||
uid: format!("{}AAAAAC", cfg.server.sid),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue