<?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/19948" />

	<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>2015-05-01T05:51:21-04:00</updated>

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

		<entry>
		<author><name><![CDATA[sky6419]]></name></author>
		<updated>2015-05-01T05:51:21-04:00</updated>

		<published>2015-05-01T05:51:21-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=103981#p103981</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=103981#p103981"/>
		<title type="html"><![CDATA[SpiKe^^]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=103981#p103981"><![CDATA[
Thanks !! Great !! SpiKe^^.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12331">sky6419</a> — Fri May 01, 2015 5:51 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[SpiKe^^]]></name></author>
		<updated>2015-04-30T16:52:20-04:00</updated>

		<published>2015-04-30T16:52:20-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=103980#p103980</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=103980#p103980"/>
		<title type="html"><![CDATA[aka.tcl]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=103980#p103980"><![CDATA[
You need to do those code adjustments in proc join .<br>Try this &amp; see what you get.<div class="codebox"><p>Code: </p><pre><code>################################################################################################  ##     aka.tcl for eggdrop by Ford_Lawnmower irc.geekshed.net #Script-Help          ##  ################################################################################################## .chanset #chan +aka for each channel you want to run the !aka trigger on.                #### .chanset #chan +akashowlog to automatically see aka's in the partyline on join.          #### .chanset #chan +akashowchan to automatically see aka's in #chan                          ##################################################################################################      ____                __                 ###########################################  ####     / __/___ _ ___ _ ___/ /____ ___   ___   ###########################################  ####    / _/ / _ `// _ `// _  // __// _ \ / _ \  ###########################################  ####   /___/ \_, / \_, / \_,_//_/   \___// .__/  ###########################################  ####        /___/ /___/                 /_/      ###########################################  ####                                             ###########################################  ##################################################################################################  ##                             Start Setup.                                         ##  ################################################################################################namespace eval aka {## Edit cmdchar to change the !trigger used to for this script                          ##  ##  variable cmdchar "!"## AKA Logo edit to change                                                              ##  ##  variable logo "\002\00304\[\00307A\00304K\00307A\00304\]\017"## Edit nicktextf to change the colors of the nickname.                                 ##  ##  variable nicktextf "\017\00309"## Edit nickstextf to change the colors of the nicks in the aka list                    ##  ##  variable nickstextf "\017\00304"## addresstype defines the type of search AKA uses to match users. Valid values are     ##  #### 0-9 0 *!user@host, 1 *!*user@host, 2 *!*@host, 3 *!*user@*.host, 4 *!*@*.host, 5     ##  #### nick!user@host, 6 nick!*user@host, 7 nick!*@host, 8 nick!*user@*.host, 9 nick!*@*.host   ##  variable addresstype 2## dupsdelay is the delay in seconds before the aka for a nick already displayed will   ##  #### be displayed again. This prevents redisplay on /hop and duplicates in partyline      ##  ##  variable dupsdelay 5## maxakas is the maximum number of nicks that will be recorded for a single hostmask   ##  ##  variable maxakas 25######################################################################## Slight script modification by Spike^^ to give the option to have #### this script report on-join aka info to a report channel.         #### NOTE: This disables +akashowlog for all on-join aka infos.       ########################################################################## Set the report channel here (one channel), or leave blank to disable report channel ##  variable reportchan ""################################################################################################  ##                           End Setup.                                              ## ################################################################################################  setudef flag akashowchan  setudef flag akashowlog  setudef flag aka  bind dcc - aka aka::dccsearch  bind pub -|- [string trimleft $aka::cmdchar]aka aka::search  bind join -|- * aka::join  bind nick -|- * aka::nick  bind evnt -|- prerehash aka::savehash  bind evnt -|- prerestart aka::savehash  bind evnt -|- disconnect-server aka::savehash  bind evnt -|- save aka::savehash  bind evnt -|- init-server aka::loadhash  proc dccsearch {hand idx text {matchno 1}} {    if {[getchanhost $text] != ""} {      set ltext [string tolower $text]      set hostmask "akaindex[address "${text}![getchanhost $text]" $aka::addresstype]"      if {[llength [hget "AKA" $hostmask]] &lt;= 1} {        putlog "${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."      } else {        putlog "${aka::logo} ${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"      }    } else {      if {[hfind "AKA" "*${text}*" $matchno] != ""} {        set hostmask "akaindex[address [hfind "AKA" "*${text}*" $matchno] $aka::addresstype]"      }      if {[hfind "AKA" "*${text}*" $matchno] == ""} {        putlog "${aka::logo} ${aka::nickstextf}I have no data for ${aka::nicktextf}${text}."      } elseif {[llength [hget "AKA" $hostmask]] &lt;= 1} {        putlog "${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."      } else {        putlog "${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"      }    }  }  proc search {nick host hand chan text {matchno 1}} {    if {[lsearch -exact [channel info $chan] +aka] != -1} {      if {[getchanhost $text] != ""} {        set hostmask "akaindex[address "${text}![getchanhost $text]" $aka::addresstype]"        if {[llength [hget "AKA" $hostmask]] &lt;= 1} {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."        } else {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"        }      } else {        if {[hfind "AKA" "*${text}*" $matchno] != ""} {          set hostmask "akaindex[address [hfind "AKA" "*${text}*" $matchno] $aka::addresstype]"        }        if {[hfind "AKA" "*${text}*" $matchno] == ""} {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nickstextf}I have no data for ${aka::nicktextf}${text}."        } elseif {[llength [hget "AKA" $hostmask]] &lt;= 1} {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."        } else {          putserv "PRIVMSG $chan :${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"        }      }    }  }  proc loadhash {type} {    if {[file exists "${::network}aka.hsh"]} { aka::hload "AKA" "${::network}aka.hsh" }  }  proc savehash {type} {    hsave "AKA" "${::network}aka.hsh"  }  proc nick {nick host hand chan newnick} {    set hostmask "akaindex[address "${nick}!${host}" $aka::addresstype]"    hadd "AKA" "${nick}!${host}" [unixtime]    hadd "AKA" $hostmask [nodups [hget "AKA" $hostmask] $newnick]  }  proc ntimer {name seconds command} {    set killtimer [hget NTIMER $name]    if {[set idx [lsearch -glob [utimers] "*$killtimer*"]] != -1 &amp;&amp; $killtimer != ""} {      putlog "killed timer [lindex [lindex [utimers] $idx] 2]"      killutimer [lindex [lindex [utimers] $idx] 2]    }    hadd NTIMER $name [utimer $seconds $command]    utimer $seconds "aka::hdel {NTIMER} $name"  }  proc address {hostmask type} {    set halfhost ""    regexp -- {^(.*)\!(.*)@(.*?)(\..*\..*)?$} $hostmask wholematch nick user host halfhost    switch $type {      0 { return "*!${user}@${host}${halfhost}" }      1 { return "*!*${user}@${host}${halfhost}" }      2 { return "*!*@${host}${halfhost}" }      3 {          if {$halfhost != ""} {            return "*!*${user}@*${halfhost}"          } else {             return "*!*${user}@${host}${halfhost}"          }        }      4 {                  if {$halfhost != ""} {            return "*!*@*${halfhost}"          } else {            return "*!*@${host}${halfhost}"          }        }       5 { return $hostmask }      6 { return "${nick}!*${user}@${host}${halfhost}" }      7 { return "${nick}!*@${host}${halfhost}" }      8 {          if {$halfhost != ""} {            return "${nick}!*${user}@*${halfhost}"          } else {            return "${nick}!*${user}@${host}${halfhost}"          }        }      9 {          if {$halfhost != ""} {            return "${nick}!*@*${halfhost}"          } else {            return "${nick}!*@${host}${halfhost}"          }        }      default { return $hostmask }    }  }  proc joinadd {chan} {     foreach user [chanlist $chan] {      set host [getchanhost $user $chan]      set hostmask "akaindex[address "${user}!${host}" $aka::addresstype]"      hadd "AKA" "${user}!${host}" [unixtime]      hadd "AKA" $hostmask [nodups [hget "AKA" $hostmask] $user]    }      }  proc nodups {text add} {    set return ""    set addfix [string map {\[ \( \] \) \\ \\\\} $add]    foreach name $text {      set namefix [string map {\[ \( \] \) \\ \\\\} $name]      if {![string match -nocase $namefix $addfix]} {        set return [concat $return $name]      }    }    if {[llength $return] &gt;= [expr $aka::maxakas -1]} {      set return [lrange $return 1 end]    }    return [concat $return $add]  }  proc noop {nick} {    return 0  }    proc join {nick host hand chan} {    if {$nick != $::botnick} {      set hostmask "akaindex[address "${nick}!${host}" $aka::addresstype]"      set safenick [string map {\[ \{ \] \}} $nick]      hadd "AKA" "${nick}!${host}" [unixtime]      hadd "AKA" $hostmask [nodups [hget "AKA" $hostmask] $nick]      if {$nick != [hget "AKA" $hostmask]} {        if {$aka::reportchan != ""} {          if {[lsearch -glob [utimers] "*aka::noop $safenick*"] == -1} {            putmsg $aka::reportchan "$aka::logo ${aka::nicktextf}${nick} $chan $aka::logo\                   ${aka::nickstextf}[string map {" " "\,"} [hget "AKA" $hostmask]]"             utimer $aka::dupsdelay "aka::noop $safenick"          }        } elseif {[lsearch -exact [channel info $chan] +akashowlog] != -1} {          if {[set idx [lsearch -glob [utimers] "*aka::noop $safenick*"]] == -1} {            putlog "$aka::logo ${aka::nicktextf}${nick} $aka::logo ${aka::nickstextf}[string map {" " "\,"} [hget "AKA" $hostmask]]"             utimer $aka::dupsdelay "aka::noop $safenick"          }        }        if {[lsearch -exact [channel info $chan] +akashowchan] != -1} {          if {[set idx [lsearch -glob [utimers] "*aka::noop ${chan}${safenick}*"]] == -1} {            putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${nick} $aka::logo ${aka::nickstextf}[string map {" " "\,"} [hget "AKA" $hostmask]]"            utimer $aka::dupsdelay "aka::noop ${chan}${safenick}"          }        }      }    } else {       timer 1 "aka::joinadd $chan"     }  }  proc hadd {hashname hashitem hashdata } {    global $hashname    set ${hashname}($hashitem) $hashdata  }  proc hget {hashname hashitem} {    upvar #0 $hashname hgethashname    if {[info exists hgethashname($hashitem)]} {      return $hgethashname($hashitem)    } else {      return ""    }  }  proc hfind {hashname search matchno {type "w"}} {    upvar #0 $hashname hfindhashname    set search "(?i)[string map {* ""} ${search}]"    if {$type == "w"} {      if {[array exists hfindhashname]} {        if {$matchno == 0} {          return [llength [array names hfindhashname -regexp $search]]        } else {          set matchno [expr $matchno - 1]          return [lindex [array names hfindhashname -regexp $search] $matchno]        }      }    } elseif {$type == "W"} {      set count 0      foreach {item value} [array get hfindhashname] {        if {[string match -nocase $search $value] &amp;&amp; ![string match -nocase "*akaindex*" $item]} {          incr count          if {$count == $matchno} { return $item }        }      }      if {$matchno == 0} {         return $count      } else {        return ""      }    }  }  proc hsave {hashname filename} {    upvar #0 $hashname hsavehashname    if {[array exists hsavehashname]} {      set hsavefile [open $filename w]      foreach {key value} [array get hsavehashname] {        puts $hsavefile "${key}=${value}"      }      close $hsavefile    }  }  proc hload {hashname filename} {    upvar #0 $hashname hloadhashname    hfree $hashname    set hloadfile [open $filename]    set linenum 0    while {[gets $hloadfile line] &gt;= 0} {      if {[regexp -- {([^\s]+)=(.*)$} $line wholematch item data]} {        set hloadhashname($item) $data      }    }    close $hloadfile  }  proc hfree {hashname} {    upvar #0 $hashname hfreehashname    if {[array exists hfreehashname]} {      foreach key [array names hfreehashname] {         unset hfreehashname($key)       }    }  }  proc hdel {hashname hashitem} {    upvar #0 $hashname hdelhashname    if {[info exists hdelhashname($hashitem)]} {      unset hdelhashname($hashitem)    }  }  proc hcopy {hashfrom hashto} {    upvar #0 $hashfrom hashfromlocal $hashto hashtolocal    array set hashtolocal [array get hashfromlocal]  }  }putlog "\002*Loaded* \002\00304\[\00307A\00304K\00307A\00304\]\017 \002by \Ford_Lawnmower irc.GeekShed.net #Script-Help .rss for help"</code></pre></div><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=7749">SpiKe^^</a> — Thu Apr 30, 2015 4:52 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sky6419]]></name></author>
		<updated>2015-04-30T16:46:50-04:00</updated>

		<published>2015-04-30T16:46:50-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=103979#p103979</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=103979#p103979"/>
		<title type="html"><![CDATA[aka.tcl]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=103979#p103979"><![CDATA[
<blockquote class="uncited"><div><blockquote class="uncited"><div>As stated in the script's documentation, set the chanset to see stuff in the channel...<div class="codebox"><p>Code: </p><pre><code>## .chanset #chan +akashowchan to automatically see aka's in #chan                          ##</code></pre></div></div></blockquote>First of all I congratulate you on your bogus trivia!!<br>( .chanset #chan +akashowlog to automatically see aka's in the partyline on join.)<br>Setting .chanset + akashowlog #examplechan the bot writes in the partyline akas coming into channel I was wondering if it was possible to do this function and what part you had to change to make it write in a specific channel rather than in partyline . Thank you for your intervention . I'm sorry for my english.</div></blockquote><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12331">sky6419</a> — Thu Apr 30, 2015 4:46 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sky6419]]></name></author>
		<updated>2015-04-30T15:14:53-04:00</updated>

		<published>2015-04-30T15:14:53-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=103978#p103978</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=103978#p103978"/>
		<title type="html"><![CDATA[aka.tcl]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=103978#p103978"><![CDATA[
<blockquote class="uncited"><div>As stated in the script's documentation, set the chanset to see stuff in the channel...<div class="codebox"><p>Code: </p><pre><code>## .chanset #chan +akashowchan to automatically see aka's in #chan                          ##</code></pre></div></div></blockquote>First of all I congratulate you on your bogus trivia!!<br>( .chanset #chan +akashowlog to automatically see aka's in the partyline on join.)<br>Setting .chanset + akashowcnan #examplechan the bot writes in the partyline akas coming into channel I was wondering if it was possible to do this function and what part you had to change to make it write in a specific channel rather than in partyline . Thank you for your intervention . I'm sorry for my english.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12331">sky6419</a> — Thu Apr 30, 2015 3:14 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[SpiKe^^]]></name></author>
		<updated>2015-04-29T21:19:21-04:00</updated>

		<published>2015-04-29T21:19:21-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=103971#p103971</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=103971#p103971"/>
		<title type="html"><![CDATA[aka.tcl]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=103971#p103971"><![CDATA[
As stated in the script's documentation, set the chanset to see stuff in the channel...<div class="codebox"><p>Code: </p><pre><code>## .chanset #chan +akashowchan to automatically see aka's in #chan                          ##</code></pre></div><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=7749">SpiKe^^</a> — Wed Apr 29, 2015 9:19 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sky6419]]></name></author>
		<updated>2015-04-27T08:22:49-04:00</updated>

		<published>2015-04-27T08:22:49-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=103958#p103958</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=103958#p103958"/>
		<title type="html"><![CDATA[aka.tcl]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=103958#p103958"><![CDATA[
<div class="codebox"><p>Code: </p><pre><code>################################################################################################  ##     aka.tcl for eggdrop by Ford_Lawnmower irc.geekshed.net #Script-Help          ##  ################################################################################################## .chanset #chan +aka for each channel you want to run the !aka trigger on.                #### .chanset #chan +akashowlog to automatically see aka's in the partyline on join.          #### .chanset #chan +akashowchan to automatically see aka's in #chan                          ##################################################################################################      ____                __                 ###########################################  ####     / __/___ _ ___ _ ___/ /____ ___   ___   ###########################################  ####    / _/ / _ `// _ `// _  // __// _ \ / _ \  ###########################################  ####   /___/ \_, / \_, / \_,_//_/   \___// .__/  ###########################################  ####        /___/ /___/                 /_/      ###########################################  ####                                             ###########################################  ##################################################################################################  ##                             Start Setup.                                         ##  ################################################################################################namespace eval aka {## Edit cmdchar to change the !trigger used to for this script                          ##  ##  variable cmdchar "!"## AKA Logo edit to change                                                              ##  ##  variable logo "\002\00304\[\00307A\00304K\00307A\00304\]\017"## Edit nicktextf to change the colors of the nickname.                                 ##  ##  variable nicktextf "\017\00309"## Edit nickstextf to change the colors of the nicks in the aka list                    ##  ##  variable nickstextf "\017\00304"## addresstype defines the type of search AKA uses to match users. Valid values are     ##  #### 0-9 0 *!user@host, 1 *!*user@host, 2 *!*@host, 3 *!*user@*.host, 4 *!*@*.host, 5     ##  #### nick!user@host, 6 nick!*user@host, 7 nick!*@host, 8 nick!*user@*.host, 9 nick!*@*.host   ##  variable addresstype 2## dupsdelay is the delay in seconds before the aka for a nick already displayed will   ##  #### be displayed again. This prevents redisplay on /hop and duplicates in partyline      ##  ##  variable dupsdelay 5## maxakas is the maximum number of nicks that will be recorded for a single hostmask   ##  ##  variable maxakas 25################################################################################################  ##                           End Setup.                                              ## ################################################################################################  setudef flag akashowchan  setudef flag akashowlog  setudef flag aka  bind dcc - aka aka::dccsearch  bind pub -|- [string trimleft $aka::cmdchar]aka aka::search  bind join -|- * aka::join  bind nick -|- * aka::nick  bind evnt -|- prerehash aka::savehash  bind evnt -|- prerestart aka::savehash  bind evnt -|- disconnect-server aka::savehash  bind evnt -|- save aka::savehash  bind evnt -|- init-server aka::loadhash  proc dccsearch {hand idx text {matchno 1}} {    if {[getchanhost $text] != ""} {      set ltext [string tolower $text]      set hostmask "akaindex[address "${text}![getchanhost $text]" $aka::addresstype]"      if {[llength [hget "AKA" $hostmask]] &lt;= 1} {        putlog "${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."      } else {        putlog "${aka::logo} ${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"      }    } else {      if {[hfind "AKA" "*${text}*" $matchno] != ""} {        set hostmask "akaindex[address [hfind "AKA" "*${text}*" $matchno] $aka::addresstype]"      }      if {[hfind "AKA" "*${text}*" $matchno] == ""} {        putlog "${aka::logo} ${aka::nickstextf}I have no data for ${aka::nicktextf}${text}."      } elseif {[llength [hget "AKA" $hostmask]] &lt;= 1} {        putlog "${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."      } else {        putlog "${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"      }    }  }  proc search {nick host hand chan text {matchno 1}} {    if {[lsearch -exact [channel info $chan] +aka] != -1} {      if {[getchanhost $text] != ""} {        set hostmask "akaindex[address "${text}![getchanhost $text]" $aka::addresstype]"        if {[llength [hget "AKA" $hostmask]] &lt;= 1} {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."        } else {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"        }      } else {        if {[hfind "AKA" "*${text}*" $matchno] != ""} {          set hostmask "akaindex[address [hfind "AKA" "*${text}*" $matchno] $aka::addresstype]"        }        if {[hfind "AKA" "*${text}*" $matchno] == ""} {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nickstextf}I have no data for ${aka::nicktextf}${text}."        } elseif {[llength [hget "AKA" $hostmask]] &lt;= 1} {          putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${text} ${aka::nickstextf} has not been know by any other names."        } else {          putserv "PRIVMSG $chan :${aka::nicktextf}${text} $aka::logo ${aka::nickstextf}[string map {" " \,} [hget "AKA" $hostmask]]"        }      }    }  }  proc loadhash {type} {    if {[file exists "${::network}aka.hsh"]} { aka::hload "AKA" "${::network}aka.hsh" }  }  proc savehash {type} {    hsave "AKA" "${::network}aka.hsh"  }  proc nick {nick host hand chan newnick} {    set hostmask "akaindex[address "${nick}!${host}" $aka::addresstype]"    hadd "AKA" "${nick}!${host}" [unixtime]    hadd "AKA" $hostmask [nodups [hget "AKA" $hostmask] $newnick]  }  proc ntimer {name seconds command} {    set killtimer [hget NTIMER $name]    if {[set idx [lsearch -glob [utimers] "*$killtimer*"]] != -1 &amp;&amp; $killtimer != ""} {      putlog "killed timer [lindex [lindex [utimers] $idx] 2]"      killutimer [lindex [lindex [utimers] $idx] 2]    }    hadd NTIMER $name [utimer $seconds $command]    utimer $seconds "aka::hdel {NTIMER} $name"  }  proc address {hostmask type} {    set halfhost ""    regexp -- {^(.*)\!(.*)@(.*?)(\..*\..*)?$} $hostmask wholematch nick user host halfhost    switch $type {      0 { return "*!${user}@${host}${halfhost}" }      1 { return "*!*${user}@${host}${halfhost}" }      2 { return "*!*@${host}${halfhost}" }      3 {          if {$halfhost != ""} {            return "*!*${user}@*${halfhost}"          } else {             return "*!*${user}@${host}${halfhost}"          }        }      4 {                  if {$halfhost != ""} {            return "*!*@*${halfhost}"          } else {            return "*!*@${host}${halfhost}"          }        }       5 { return $hostmask }      6 { return "${nick}!*${user}@${host}${halfhost}" }      7 { return "${nick}!*@${host}${halfhost}" }      8 {          if {$halfhost != ""} {            return "${nick}!*${user}@*${halfhost}"          } else {            return "${nick}!*${user}@${host}${halfhost}"          }        }      9 {          if {$halfhost != ""} {            return "${nick}!*@*${halfhost}"          } else {            return "${nick}!*@${host}${halfhost}"          }        }      default { return $hostmask }    }  }  proc joinadd {chan} {     foreach user [chanlist $chan] {      set host [getchanhost $user $chan]      set hostmask "akaindex[address "${user}!${host}" $aka::addresstype]"      hadd "AKA" "${user}!${host}" [unixtime]      hadd "AKA" $hostmask [nodups [hget "AKA" $hostmask] $user]    }      }  proc nodups {text add} {    set return ""    set addfix [string map {\[ \( \] \) \\ \\\\} $add]    foreach name $text {      set namefix [string map {\[ \( \] \) \\ \\\\} $name]      if {![string match -nocase $namefix $addfix]} {        set return [concat $return $name]      }    }    if {[llength $return] &gt;= [expr $aka::maxakas -1]} {      set return [lrange $return 1 end]    }    return [concat $return $add]  }  proc noop {nick} {    return 0  }    proc join {nick host hand chan} {    if {$nick != $::botnick} {      set hostmask "akaindex[address "${nick}!${host}" $aka::addresstype]"      set safenick [string map {\[ \{ \] \}} $nick]      hadd "AKA" "${nick}!${host}" [unixtime]      hadd "AKA" $hostmask [nodups [hget "AKA" $hostmask] $nick]      if {$nick != [hget "AKA" $hostmask]} {        if {[lsearch -exact [channel info $chan] +akashowlog] != -1} {          if {[set idx [lsearch -glob [utimers] "*aka::noop $safenick*"]] == -1} {            putlog "$aka::logo ${aka::nicktextf}${nick} $aka::logo ${aka::nickstextf}[string map {" " "\,"} [hget "AKA" $hostmask]]"             utimer $aka::dupsdelay "aka::noop $safenick"          }        }        if {[lsearch -exact [channel info $chan] +akashowchan] != -1} {          if {[set idx [lsearch -glob [utimers] "*aka::noop ${chan}${safenick}*"]] == -1} {            putserv "PRIVMSG $chan :${aka::logo} ${aka::nicktextf}${nick} $aka::logo ${aka::nickstextf}[string map {" " "\,"} [hget "AKA" $hostmask]]"            utimer $aka::dupsdelay "aka::noop ${chan}${safenick}"          }        }      }    } else {       timer 1 "aka::joinadd $chan"     }  }  proc hadd {hashname hashitem hashdata } {    global $hashname    set ${hashname}($hashitem) $hashdata  }  proc hget {hashname hashitem} {    upvar #0 $hashname hgethashname    if {[info exists hgethashname($hashitem)]} {      return $hgethashname($hashitem)    } else {      return ""    }  }  proc hfind {hashname search matchno {type "w"}} {    upvar #0 $hashname hfindhashname    set search "(?i)[string map {* ""} ${search}]"    if {$type == "w"} {      if {[array exists hfindhashname]} {        if {$matchno == 0} {          return [llength [array names hfindhashname -regexp $search]]        } else {          set matchno [expr $matchno - 1]          return [lindex [array names hfindhashname -regexp $search] $matchno]        }      }    } elseif {$type == "W"} {      set count 0      foreach {item value} [array get hfindhashname] {        if {[string match -nocase $search $value] &amp;&amp; ![string match -nocase "*akaindex*" $item]} {          incr count          if {$count == $matchno} { return $item }        }      }      if {$matchno == 0} {         return $count      } else {        return ""      }    }  }  proc hsave {hashname filename} {    upvar #0 $hashname hsavehashname    if {[array exists hsavehashname]} {      set hsavefile [open $filename w]      foreach {key value} [array get hsavehashname] {        puts $hsavefile "${key}=${value}"      }      close $hsavefile    }  }  proc hload {hashname filename} {    upvar #0 $hashname hloadhashname    hfree $hashname    set hloadfile [open $filename]    set linenum 0    while {[gets $hloadfile line] &gt;= 0} {      if {[regexp -- {([^\s]+)=(.*)$} $line wholematch item data]} {        set hloadhashname($item) $data      }    }    close $hloadfile  }  proc hfree {hashname} {    upvar #0 $hashname hfreehashname    if {[array exists hfreehashname]} {      foreach key [array names hfreehashname] {         unset hfreehashname($key)       }    }  }  proc hdel {hashname hashitem} {    upvar #0 $hashname hdelhashname    if {[info exists hdelhashname($hashitem)]} {      unset hdelhashname($hashitem)    }  }  proc hcopy {hashfrom hashto} {    upvar #0 $hashfrom hashfromlocal $hashto hashtolocal    array set hashtolocal [array get hashfromlocal]  }  }putlog "\002*Loaded* \002\00304\[\00307A\00304K\00307A\00304\]\017 \002by \Ford_Lawnmower irc.GeekShed.net #Script-Help .rss for help"</code></pre></div><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12331">sky6419</a> — Mon Apr 27, 2015 8:22 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sky6419]]></name></author>
		<updated>2015-04-27T08:26:16-04:00</updated>

		<published>2015-04-27T08:21:41-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=103957#p103957</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=103957#p103957"/>
		<title type="html"><![CDATA[aka.tcl]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=103957#p103957"><![CDATA[
AKA.TCL Hello . Which part and how you can change to make the bot write in a specific channel and not in partyline ? Thanks for any suggestions .<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12331">sky6419</a> — Mon Apr 27, 2015 8:21 am</p><hr />
]]></content>
	</entry>
	</feed>
