<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://forum.eggheads.org/app.php/feed/topic/21187" />

	<title>egghelp/eggheads community</title>
	<subtitle>Discussion of eggdrop bots, shell accounts and tcl scripts.</subtitle>
	<link href="https://forum.eggheads.org/index.php" />
	<updated>2023-09-19T18:38:38-04:00</updated>

	<author><name><![CDATA[egghelp/eggheads community]]></name></author>
	<id>https://forum.eggheads.org/app.php/feed/topic/21187</id>

		<entry>
		<author><name><![CDATA[simo]]></name></author>
		<updated>2023-09-19T17:57:02-04:00</updated>

		<published>2023-09-19T17:57:02-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112165#p112165</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112165#p112165"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112165#p112165"><![CDATA[
Makes sense thanks Crazy Cat and caesar<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12505">simo</a> — Tue Sep 19, 2023 5:57 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[CrazyCat]]></name></author>
		<updated>2023-09-19T18:38:38-04:00</updated>

		<published>2023-09-18T18:05:37-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112163#p112163</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112163#p112163"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112163#p112163"><![CDATA[
I think you make that too complex:<div class="codebox"><p>Code: </p><pre><code>if {![string equal -nocase $chan "$::chanopschan"] || [string first "#" $enforcechan] == -1 || ![botisop $enforcechan] || [isop $nick $enforcechan]}</code></pre></div>Why don't simply test:<div class="codebox"><p>Code: </p><pre><code>if {![validchan $enforcechan] || ![string tolower $enforcechan] eq $::chanopschan || ![botisop $enforcechan]}</code></pre></div>You don't really care if user is already op, and validchan is a better way to check if chan exists and bot knows it.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=691">CrazyCat</a> — Mon Sep 18, 2023 6:05 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[caesar]]></name></author>
		<updated>2023-09-18T13:56:21-04:00</updated>

		<published>2023-09-18T13:56:21-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112162#p112162</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112162#p112162"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112162#p112162"><![CDATA[
You might want to check your last <em class="text-italics">if</em> statements cos something doesn't feel right in there.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=187">caesar</a> — Mon Sep 18, 2023 1:56 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[simo]]></name></author>
		<updated>2023-09-18T12:30:41-04:00</updated>

		<published>2023-09-18T12:30:41-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112161#p112161</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112161#p112161"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112161#p112161"><![CDATA[
thanks caesar <br><div class="codebox"><p>Code: </p><pre><code>bind pub -|- !op Pub:OP:monotor-channelproc Pub:OP:monotor-channel {nick host hand chan text} {  set text [regsub -all -- {\s{2,}} [string trim [stripcodes * $text]] { }]  set items [split $text]  if {[llength $items] &lt; 1 } { putnow "notice $nick :Syntax is !op \#chan" ; return }  set enforcechan [lindex [split $text] 0]  if {![string equal -nocase $chan "$::chanopschan"] || [string first "#" $enforcechan] == -1 || ![botisop $enforcechan] || [isop $nick $enforcechan]} { return 0 }  if {[isop $nick $::chanopschan] || [ishalfop $nick $::chanopschan] || [matchattr $hand o|o $::chanopschan]} {  pushmode $enforcechan +o $nick }}   </code></pre></div><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12505">simo</a> — Mon Sep 18, 2023 12:30 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[caesar]]></name></author>
		<updated>2023-09-18T11:45:33-04:00</updated>

		<published>2023-09-18T11:45:33-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112160#p112160</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112160#p112160"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112160#p112160"><![CDATA[
I think it's safe to remove the <em class="text-italics">[onchan $nick $enforcechan] &amp;&amp; [onchan $::botnick $enforcechan]</em> part as the previous two checks validate them as well, meaning <em class="text-italics">botisop</em> can't return true unless bot is on the channel and the <em class="text-italics">isop</em> can't return true if nick isn't on the channel.<br><br>You set the chan to be lower case via:<div class="codebox"><p>Code: </p><pre><code>set chan [string tolower $chan]</code></pre></div>and then in:<div class="codebox"><p>Code: </p><pre><code>if {![string equal -nocase $chan "$::chanopschan"] || [string first "#" $enforcechan] == -1} { return 0 } </code></pre></div>use the <em class="text-italics">-nocase</em> that ignores the case, so the above is pointless.<br><br>I would consider moving the <em class="text-italics">[botisop $enforcechan]</em> higher in the code and return if it's false, else continue with the rest of the code.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=187">caesar</a> — Mon Sep 18, 2023 11:45 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Yusif]]></name></author>
		<updated>2023-09-17T22:50:06-04:00</updated>

		<published>2023-09-17T22:50:06-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112159#p112159</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112159#p112159"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112159#p112159"><![CDATA[
ok i changed :<br><div class="codebox"><p>Code: </p><pre><code>set chanopschan "#chanops"bind pub -|- !op Pub:OP:monotor-channel</code></pre></div>to :<br><div class="codebox"><p>Code: </p><pre><code>set chanopschan "#chanops"bind pub o|- !op Pub:OP:monotor-channel</code></pre></div>also changed :<br><div class="codebox"><p>Code: </p><pre><code>if {[botisop $enforcechan] &amp;&amp; ![isop $nick $enforcechan] &amp;&amp; [onchan $nick $enforcechan] &amp;&amp; [onchan $::botnick $enforcechan]} { pushmode $enforcechan +o $nick }   }  }}   </code></pre></div>to :<div class="codebox"><p>Code: </p><pre><code>if {[botisop $enforcechan] &amp;&amp; ![isop $nick $enforcechan] &amp;&amp; [onchan $nick $enforcechan] &amp;&amp; [onchan $::botnick $enforcechan]} { pushmode $enforcechan +o $nick }   }  }</code></pre></div>now working fine<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=13021">Yusif</a> — Sun Sep 17, 2023 10:50 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Yusif]]></name></author>
		<updated>2023-09-17T19:01:00-04:00</updated>

		<published>2023-09-17T19:01:00-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112158#p112158</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112158#p112158"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112158#p112158"><![CDATA[
i tried that , but when do !op #chan-name there is no action = not op chanop<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=13021">Yusif</a> — Sun Sep 17, 2023 7:01 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Yusif]]></name></author>
		<updated>2023-09-17T18:05:27-04:00</updated>

		<published>2023-09-17T18:05:27-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112157#p112157</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112157#p112157"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112157#p112157"><![CDATA[
thank you so much<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=13021">Yusif</a> — Sun Sep 17, 2023 6:05 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[simo]]></name></author>
		<updated>2023-09-17T10:55:12-04:00</updated>

		<published>2023-09-17T10:55:12-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112156#p112156</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112156#p112156"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112156#p112156"><![CDATA[
<blockquote class="uncited"><div><blockquote class="uncited"><div>Why not use chanserv for that?</div></blockquote>we use chanserv but opers not around all time to op chanops</div></blockquote>you could try this : <br><br><div class="codebox"><p>Code: </p><pre><code> set chanopschan "#chanops"bind pub -|- !op Pub:OP:monotor-channelproc Pub:OP:monotor-channel {nick host hand chan text} {   set text [regsub -all -- {\s{2,}} [string trim [stripcodes * $text]] { }]   set items [split $text]   set chan [string tolower $chan]   if {[llength $items] &lt; 1 } { putnow "notice $nick :Syntax is !op \#chan" ; return }   set enforcechan [lindex [split $text] 0]   if {![string equal -nocase $chan "$::chanopschan"] || [string first "#" $enforcechan] == -1} { return 0 }   if {[isop $nick $::chanopschan] || [ishalfop $nick $::chanopschan] || [matchattr $hand o|o $::chanopschan]} {     if {[botisop $enforcechan] &amp;&amp; ![isop $nick $enforcechan] &amp;&amp; [onchan $nick $enforcechan] &amp;&amp; [onchan $::botnick $enforcechan]} { pushmode $enforcechan +o $nick }   }  }}   bind pub -|- !deop Pub:DEOP:monotor-channelproc Pub:DEOP:monotor-channel {nick host hand chan text} {   set text [regsub -all -- {\s{2,}} [string trim [stripcodes * $text]] { }]   set items [split $text]   set chan [string tolower $chan]      if {[llength $items] &lt; 1 } { putnow "notice $nick :Syntax is !op \#chan" ; return }   set enforcechan [lindex [split $text] 0]   if {![string equal -nocase $chan "$::chanopschan"] || [string first "#" $enforcechan] == -1} { return 0 }   if {[isop $nick $::chanopschan] || [ishalfop $nick $::chanopschan] || [matchattr $hand o|o $::chanopschan]} {     if {[botisop $enforcechan] &amp;&amp; [isop $nick $enforcechan] &amp;&amp; [onchan $nick $enforcechan] &amp;&amp; [onchan $::botnick $enforcechan]} { pushmode $enforcechan -o $nick }   }  }}   bind pub -|- !hop Pub:HOP:monotor-channelproc Pub:HOP:monotor-channel {nick host hand chan text} {   set text [regsub -all -- {\s{2,}} [string trim [stripcodes * $text]] { }]   set items [split $text]   set chan [string tolower $chan]      if {[llength $items] &lt; 1 } { putnow "notice $nick :Syntax is !op \#chan" ; return }   set enforcechan [lindex [split $text] 0]   if {![string equal -nocase $chan "$::chanopschan"] || [string first "#" $enforcechan] == -1} { return 0 }   if {[isop $nick $::chanopschan] || [ishalfop $nick $::chanopschan] || [matchattr $hand o|o $::chanopschan]} {     if {[botisop $enforcechan] &amp;&amp; ![ishalfop $nick $enforcechan] &amp;&amp; [onchan $nick $enforcechan] &amp;&amp; [onchan $::botnick $enforcechan]} { pushmode $enforcechan +h $nick }   }  }}   bind pub -|- !dehop Pub:DEHOP:monotor-channelproc Pub:DEHOP:monotor-channel {nick host hand chan text} {   set text [regsub -all -- {\s{2,}} [string trim [stripcodes * $text]] { }]   set items [split $text]   set chan [string tolower $chan]      if {[llength $items] &lt; 1 } { putnow "notice $nick :Syntax is !op \#chan" ; return }   set enforcechan [lindex [split $text] 0]   if {![string equal -nocase $chan "$::chanopschan"] || [string first "#" $enforcechan] == -1} { return 0 }   if {[isop $nick $::chanopschan] || [ishalfop $nick $::chanopschan] || [matchattr $hand o|o $::chanopschan]} {     if {[botisop $enforcechan] &amp;&amp; [ishalfop $nick $enforcechan] &amp;&amp; [onchan $nick $enforcechan] &amp;&amp; [onchan $::botnick $enforcechan]} { pushmode $enforcechan -h $nick }   }  }}      </code></pre></div><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12505">simo</a> — Sun Sep 17, 2023 10:55 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[simo]]></name></author>
		<updated>2023-09-16T06:12:13-04:00</updated>

		<published>2023-09-16T06:12:13-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112155#p112155</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112155#p112155"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112155#p112155"><![CDATA[
The design of chanserv auto - admins/ops/hops list is to work without the need of any oper being around.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12505">simo</a> — Sat Sep 16, 2023 6:12 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Yusif]]></name></author>
		<updated>2023-09-15T21:10:47-04:00</updated>

		<published>2023-09-15T21:10:47-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112154#p112154</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112154#p112154"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112154#p112154"><![CDATA[
<blockquote class="uncited"><div>Why not use chanserv for that?</div></blockquote>we use chanserv but opers not around all time to op chanops<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=13021">Yusif</a> — Fri Sep 15, 2023 9:10 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[simo]]></name></author>
		<updated>2023-09-15T20:01:25-04:00</updated>

		<published>2023-09-15T20:01:25-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112153#p112153</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112153#p112153"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112153#p112153"><![CDATA[
<blockquote class="uncited"><div>can you please do modify in this script for simple use?<br>need it work in #Chanops .. when the chanop need to op in any room by bot, he/she have to type:<br>!op      #chan      to get op in that room + confirm msg in #chanops he/she opped<br>!deop   #chan     to drop op + confirm msg in #chanops he/she deopped<br>!hop     #chan     to get halfop + confirm msg in #chanops he/she halfop<br>!dehop #chan      to dehalfop + confirm msg in #chanops he/she dehop<br><br>thanks</div></blockquote>Why not use chanserv for that?<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12505">simo</a> — Fri Sep 15, 2023 8:01 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Yusif]]></name></author>
		<updated>2023-09-14T19:39:47-04:00</updated>

		<published>2023-09-14T19:39:47-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112152#p112152</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112152#p112152"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112152#p112152"><![CDATA[
can you please do modify in this script for simple use?<br>need it work in #Chanops .. when the chanop need to op in any room by bot, he/she have to type:<br>!op      #chan      to get op in that room + confirm msg in #chanops he/she opped<br>!deop   #chan     to drop op + confirm msg in #chanops he/she deopped<br>!hop     #chan     to get halfop + confirm msg in #chanops he/she halfop<br>!dehop #chan      to dehalfop + confirm msg in #chanops he/she dehop<br><br>thanks<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=13021">Yusif</a> — Thu Sep 14, 2023 7:39 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[SpiKe^^]]></name></author>
		<updated>2022-09-05T10:48:14-04:00</updated>

		<published>2022-09-05T10:48:14-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=111365#p111365</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=111365#p111365"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=111365#p111365"><![CDATA[
That looks nice CrazyCat:)<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=7749">SpiKe^^</a> — Mon Sep 05, 2022 10:48 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[CrazyCat]]></name></author>
		<updated>2022-09-05T10:20:39-04:00</updated>

		<published>2022-09-05T10:20:39-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=111364#p111364</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=111364#p111364"/>
		<title type="html"><![CDATA[Ircop eggdrop bot with SACommands]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=111364#p111364"><![CDATA[
Could do a shorter version using a routing proc:<div class="codebox"><p>Code: </p><pre><code># set one admin channel here for an added security check.# both the bot and the command user will need to be in this channel.# maybe set this channel password protected or invite only...# ex. set samop(adminchan) "#admins"# or set empty to not require command users to be in an admin channel.# ex: set samop(adminchan) ""set samop(adminchan) "#admins"# set one report channel here for the bot to report mode changes to.# ex. set samop(reportchan) "#admins"# or set empty to not report modes.  ex: set samop(reportchan) ""set samop(reportchan) "#admins"############################################## OWNER ##############################################bind msg n owner msg:qopbind msg n protect msg:sopbind msg n op msg:opbind msg n halfop msg:hopbind msg n voice msg:vopbind msg n deowner msg:deqopbind msg n deprotect msg:desopbind msg n deop msg:deopbind msg n dehalfop msg:dehopbind msg n devoice msg:devopproc msg:qop {nick uhost handle text}  { samode $nick + q OWNER $text }proc msg:sop {nick uhost handle text}  { samode $nick + p PROTECT $text }proc msg:op {nick uhost handle text}  { samode $nick + o OP $text }proc msg:hop {nick uhost handle text}  { samode $nick + h HALFOP $text }proc msg:vop {nick uhost handle text}  { samode $nick + v VOICE $text }proc msg:deqop {nick uhost handle text}  { samode $nick - q DEOWNER $text }proc msg:desop {nick uhost handle text}  { samode $nick - p DEPROTECT $text }proc msg:deop {nick uhost handle text}  { samode $nick - o DEOP $text }proc msg:dehop {nick uhost handle text}  { samode $nick - h DEHALFOP $text }proc msg:devop {nick uhost handle text}  { samode $nick - v DEVOICE $text }proc samode {nick to mode label text} {   set targets [lassign [split [string trim $txt]] chan]   if {![string match "#?*" $chan]} {      putserv "NOTICE $nick :Command syntax: \002$label #somechannel \[nick(s)\]\002"      return 0   }   if {[string match "#?*" $::samop(adminchan)]} {      if {![botonchan $::samop(adminchan)] || ![onchan $nick $::samop(adminchan)]} {         putserv "NOTICE $nick :Both you &amp; the bot must be on $::samop(adminchan)"         return 0      }   }   if {![llength $targets]} {  lappend targets $nick  }   set mode [string repeat $mode [llength $targets]]   putserv "samode $chan $to$mode [join $targets]"   if {[string match "#?*" $::samop(reportchan)]} {      putserv "PRIVMSG $::samop(reportchan) :$nick used $label to make [join $targets] $label in $chan"   }   return 0}############################################## HELP ###############################################bind msg n help msg:helpproc msg:help {nick uhost hand txt} {  if {[llength $txt]&lt;13} {putserv "NOTICE $nick :=============== HELP ================"putserv "NOTICE $nick :/msg AdminServ OWNER #channel nick"putserv "NOTICE $nick :/msg AdminServ DEOWNER #channel nick"putserv "NOTICE $nick :/msg AdminServ PROTECT #channel nick"putserv "NOTICE $nick :/msg AdminServ DEPROTECT #channel nick"putserv "NOTICE $nick :/msg AdminServ OP #channel nick"putserv "NOTICE $nick :/msg AdminServ DEOP #channel nick"putserv "NOTICE $nick :/msg AdminServ HALFOP #channel nick"putserv "NOTICE $nick :/msg AdminServ DEHALFOP #channel nick"putserv "NOTICE $nick :/msg AdminServ VOICE #channel nick"putserv "NOTICE $nick :/msg AdminServ DEVOICE #channel nick"putserv "NOTICE $nick :/msg AdminServ HELP"putserv "NOTICE $nick :================ END ================"  }}putlog "samop.tcl version 0.1 loaded." </code></pre></div>Could also be optimised with a variable containing modes and labels which can allow to generate help depending on its content<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=691">CrazyCat</a> — Mon Sep 05, 2022 10:20 am</p><hr />
]]></content>
	</entry>
	</feed>
