Channel locks for send only help channel

17 views
Skip to first unread message

j3b

unread,
Jan 27, 2021, 9:37:54 PM1/27/21
to Evennia
I'm trying to create a 'helpme' channel that players can send to ask for staff assistance that doesn't get broadcast to other players.  Staff helpers would monitor the channel and upon seeing a help request initiate a private conversation directly with the player (using a command like page or something).

Here's what I tried:
DEFAULT_CHANNELS = [
    # helpme
    {
        "key": "HelpMe",
        "aliases": ("hm"),
        "desc": "To ask for help from Helpers or Admins",
        "locks": "control:perm(Admin);listen:perm(Helper);send:all()",
    }
]

I though the lock string above would create this effect but it seems that players not having access to "listen" means they cannot "send".  Is this by design? 

Any ideas on what steps I might take toward making a channel or communication command work the way I want?  I was thinking maybe a simple command like "page" could be altered to broadcast to all accounts with helper or above access.  But I like the idea of a channel best because then helpers could theoretically discuss a players question before deciding who would respond. 

Or maybe the players should page a "bot" (a script) which is subscribed to the channel and the bot relays their message  for them.  I'm sure there are many ways... but I'm not sure which to try first.

Griatch Art

unread,
Feb 11, 2021, 4:10:20 AM2/11/21
to Evennia
By default I think the ability to subscribe to a channel is tied to the 'listen' locktype - that is, if you cannot listen to it, you cannot join it and by extention not talk to it. I see the point of you wanting to create a one-way communication of sorts. I think it would make sense to modify the default to allow this, but it's at least not set up that way by default. You could try overriding the addcom command to look for either/or the send/listen rules and see if that works. Please also make a feature request for it, it sounds like a relatively easy thing to add to core (the channel system is one of the oldest parts of Evennia and is up for a refactoring before the next Evennia version anyway).
.
Griatch
Reply all
Reply to author
Forward
0 new messages