====== IRC and Discord ====== The PHP community has footholds on IRC and Discord. The IRC presence is on [[https://libera.chat|Libera Chat]] and Discord is run by the [[https://phpc.chat|PHP Community]]. ===== Discord ===== This is managed by the PHP Community, contact Ben Ramsey for help creating and bridging channels. ===== Libera IRC Channel Setup ====== * [[https://libera.chat/guides/channelmodes|Libera.Chat channel modes]] * [[https://libera.chat/guides/quickops|Libera.Chat quick ops guide]] Channels on IRC that start with ''#php'' can be claimed by the members of the ''php'' group, and the list of those people can be discovered by viewing the ChanServ info for one of the already-claimed channels: /msg ChanServ info #php-internals ==== Creating a new channel ==== Execute the following commands to set up a brand new channel, replacing ''#channel'' with the name of your channel. /join #channel /msg ChanServ REGISTER #channel /msg ChanServ SET #channel GUARD ON /msg ChanServ SET #channel KEEPTOPIC ON /msg ChanServ SET #channel PUBACL OFF /msg ChanServ SET #channel SECURE ON /msg ChanServ SET #channel TOPICLOCK ON /msg ChanServ SET #channel VERBOSE OPS /msg ChanServ SET #channel RESTRICTED OFF /msg ChanServ SET #channel MLOCK +n-tlk /msg ChanServ SET #channel EMAIL hello@example.com /msg ChanServ SET #channel URL https://example.com /msg ChanServ SET #channel ENTRYMSG Welcome! Be nice! /msg ChanServ TOPIC #channel Welcome to our channel! /msg Chanserv TEMPLATE #channel BOP +AVotv /msg ChanServ TEMPLATE #channel SUCCESSOR +ARSefiorstv /msg ChanServ FLAGS #channel elephpant BOP ''MLOCK'' does ''-t'' to remove the “ops-topic” requirement. Since we have ''TOPICLOCK'' set, ChanServ will handle reverting the topic for any users who do not have the ''+t'' mode set. There’s no need to require them to be an op to set the topic. ==== To create private channel ==== /msg ChanServ SET #channel RESTRICTED ON /msg ChanServ SET #channel PRIVATE ON /msg ChanServ SET #channel MLOCK +npsrQS-tlk /msg ChanServ TEMPLATE #channel MEMBER +AVtv To allow someone access to join the channel, set them as a ''MEMBER'', which lets them view the access list, set the topic, and use the voice/devoice commands. It also auto-voices them. /msg ChanServ FLAGS #channel nickname MEMBER ==== Forwarding a channel ==== /msg ChanServ TOPIC #oldchannel We have moved to #newchannel. Please type /join #newchannel to get to us. /msg ChanServ SET #oldchannel MLOCK +tnsmif #newchannel /msg ChanServ SET #oldchannel PRIVATE ON ==== Channel user flag templates ==== Set a user’s permissions by template: /msg ChanServ FLAGS #channel nickname HOP * **AOP**: (Auto) Operator, standard moderator, *(“auto” is an historical term; not really auto-opped with these flags)*, Flags: ''+Aeotv'' Can view access lists; exempt from ''+b'' and can ''unban'' themselves; allowed to use''op''/''deop'' commands; allowed to use ''topic'' and ''topicappend''; allowed to ''voice''/''devoice''. * **FOUNDER**: “God” Operator, channel owner, Flags: ''+AFRefiorstv'' Can view access lists; has full founder access; can use ''recover'', ''sync'', and ''clear'' commands; exempt from ''+b'' and can ''unban'' themselves; allowed to modify channel access lists; can use the ''invite'' and ''getkey'' commands; allowed to use ''op''/''deop'' commands; can use the ''unban'' command; can use the ''set'' command; allowed to use ''topic'' and ''topicappend''; allowed to ''voice''/''devoice''. * **HOP**: Half Operator, a user who can update the topic, talk, and allow others to talk on ''+m'' and ''+t'' channels, Flags: ''+Atv'' Can view access lists; allowed to use ''topic'' and ''topicappend''; allowed to ''voice''/''devoice''. * **SOP**: Super Operator, an operator able to set channel options and invite or unban users, Flags: ''+Aeiorstv'' Can view access lists; exempt from ''+b'' and can ''unban'' themselves; can use the ''invite'' and ''getkey'' commands; allowed to use ''op''/''deop'' commands; can use the ''unban'' command; can use the ''set'' command; allowed to use ''topic'' and ''topicappend''; allowed to ''voice''/''devoice''. * **VOP**: Voice Operator, a user who can talk and allow others to talk on ''+m'' channels, ''+Av'' Can view access lists; allowed to ''voice''/''devoice''. * **BOP**: Bot Operator, Flags: ''+AVotv'' Can view access lists; auto-voiced by ChanServ; allowed to use ''op''/''deop'' commands; allowed to use ''topic'' and ''topicappend''; allowed to ''voice''/''devoice''. * **SUCCESSOR**: “God” Operator, channel successor, Flags: ''+ARSefiorstv'' Can view access lists; has full access as a successor; can use ''recover'', ''sync'', and ''clear'' commands; exempt from ''+b'' and can ''unban'' themselves; allowed to modify channel access lists; can use the ''invite'' and ''getkey'' commands; allowed to use ''op''/''deop'' commands; can use the ''unban'' command; can use the ''set'' command; allowed to use ''topic'' and ''topicappend''; allowed to ''voice''/''devoice''. ==== Flags Reference ==== /msg chanserv help flags Syntax: FLAGS <#channel> [nickname|hostmask|group template] Syntax: FLAGS <#channel> [nickname|hostmask|group flag_changes] Permissions: +v - Enables use of the voice/devoice commands. +V - Enables automatic voice. +o - Enables use of the op/deop commands. +O - Enables automatic op. +s - Enables use of the set command. +i - Enables use of the invite and getkey commands. +r - Enables use of the unban command. +R - Enables use of the recover, sync and clear commands. +f - Enables modification of channel access lists. +t - Enables use of the topic and topicappend commands. +A - Enables viewing of channel access lists. +S - Marks the user as a successor. +F - Grants full founder access. +b - Enables automatic kickban. +e - Exempts from +b and enables unbanning self. The special permission +* adds all permissions except +b, +S, and +F. The special permission -* removes all permissions including +b and +F.