gist/irc/atheme/cstemplate
2014-10-24 12:04:18 +03:00

62 lines
1.9 KiB
Bash
Executable File

#!/usr/bin/env bash
# This script generates commands which can be copy-pasted to Atheme's
# ChanServ to set templates which can later be set with flags.
# With these templates, bots and ops are opped and (trusted) users are
# voiced. I am not fully sure where I took the word "users", but it's good
# enough.
## ChanServ settings
# Tell ChanServ to be on channel. Not needed for larger channels
echo "/cs set $1 GUARD ON"
# Disables ChanServ MLOCK
echo "/cs set $1 MLOCK"
# Allow channel information to be seen
echo "/cs set $1 PRIVATE OFF"
# Allow only identified users to be opped
echo "/cs set $1 SECURE ON"
# Allow only users with +t flag to change topic
echo "/cs set $1 TOPICLOCK ON"
# Allows everyone to see ACL changes.
echo "/cs set $1 VERBOSE ON"
## ChanServ templates
# Channel founder who can do anything they want.
echo "/cs template $1 founder !+*F"
# Successor will get all flags in the end and if they cannot be trusted
# with them now, they really shouldn't be successor.
echo "/cs template $1 successor !+*S"
# Super op, be able to do everything with services
echo "/cs template $1 sop !+*-q"
# Normal op, be able to invite, invite, kick, kickban, unban, change topic
echo "/cs template $1 op !+vVoirtAO"
# Half op, be able to do everything else than kick other halfops & higher
echo "/cs template $1 hop !+vVirtAH"
# Network operator whom we want to have a little access so they can help
# with channel issues in case our own ops are away.
# Usually given to $OPER or staffer hostmask.
echo "/cs template $1 oper !+voirtA"
# Bot which doesn't need to be able to do so much.
echo "/cs template $1 bot !+Oirt"
# Half op bot which doesn't need to be able to do even that much
echo "/cs template $1 hbot !+Hirt"
# User who is just allowed to voice themselves and get into the channel
# unless they are banned.
echo "/cs template $1 user !+ViA"
# Permanent ban. Removes all flags and sets autokick.
echo "/cs template $1 ban !-*+b"