Last active
April 12, 2023 19:12
-
-
Save westor7/22db6c925a8a8086b1f192f05860199c to your computer and use it in GitHub Desktop.
Check for AdiIRC build-in Identifier/Command for Koragg
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ON *:START: { get_buildin } | |
ON *:SOCKOPEN:adiirc_buildin_identifiers: { | |
if ($sockerr) { echo 4 -at Error: Could not connect to the server to retrieve adiirc build-in identifiers list! | return } | |
sockwrite -nt $sockname GET /projects/adiirc/wiki/Scripting_Identifiers HTTP/1.1 | |
sockwrite -nt $sockname Host: $sock($sockname).addr | |
sockwrite -nt $sockname Connection: Close | |
sockwrite -nt $sockname $crlf | |
} | |
ON *:SOCKREAD:adiirc_buildin_identifiers: { | |
if ($sockerr) { echo 4 -at Error: Could not parse the server data to retrieve adiirc build-in identifiers list! | return } | |
var %r | |
sockread %r | |
; echo 4 -sg READ: %r | |
if (*<ul class="conthead">* iswm %r) { | |
var %v = $replace(%r,"> $+ $chr(36),$chr(166) $+ $chr(36)) | |
var %t = $numtok(%v,166) | |
var %i = 1 | |
while (%i <= %t) { | |
var %c = $gettok($gettok(%v,%i,166),1,60) | |
if (!%c) || ($left(%c,1) !== $chr(36)) { goto next } | |
hadd BUILDIN_IDENTIFIERS %c 1 | |
:next | |
inc %i | |
} | |
} | |
if (*"Missing-Identifiers"* iswm %r) { sockclose $sockname } | |
} | |
ON *:SOCKOPEN:adiirc_buildin_commands: { | |
if ($sockerr) { echo 4 -at Error: Could not connect to the server to retrieve adiirc build-in commands list! | return } | |
sockwrite -nt $sockname GET /projects/adiirc/wiki/Scripting_Commands HTTP/1.1 | |
sockwrite -nt $sockname Host: $sock($sockname).addr | |
sockwrite -nt $sockname Connection: Close | |
sockwrite -nt $sockname $crlf | |
} | |
ON *:SOCKREAD:adiirc_buildin_commands: { | |
if ($sockerr) { echo 4 -at Error: Could not parse the server data to retrieve adiirc build-in commands list! | return } | |
var %r | |
sockread %r | |
; echo 4 -sg READ %r | |
if (*<ul class="conthead">* iswm %r) { | |
var %v = $replace(%r,">/,$chr(166),</a>,$chr(166)) | |
var %t = $numtok(%v,166) | |
var %i = 1 | |
while (%i <= %t) { | |
var %c = $gettok(%v,%i,166) | |
if (!%c) || (*<* iswm %c) || (*>* iswm %c) { goto next } | |
hadd BUILDIN_COMMANDS $chr(47) $+ %c 1 | |
:next | |
inc %i | |
} | |
} | |
if (*"System-information-Commands"* iswm %r) { sockclose $sockname } | |
} | |
alias get_buildin { | |
; /get_buildin | |
if ($hget(BUILDIN_IDENTIFIERS)) { hfree $v1 } | |
if ($hget(BUILDIN_COMMANDS)) { hfree $v1 } | |
hmake BUILDIN_IDENTIFIERS 1000 | |
hmake BUILDIN_COMMANDS 1000 | |
var %s1 = adiirc_buildin_identifiers | |
var %s2 = adiirc_buildin_commands | |
if ($sock(%s1)) { sockclose $v1 } | |
if ($sock(%s2)) { sockclose $v1 } | |
sockopen -e %s1 dev.adiirc.com 443 | |
sockopen -e %s2 dev.adiirc.com 443 | |
} | |
alias check_buildin_identifier { | |
; $check_buildin_identifier(me) | |
var %h = BUILDIN_IDENTIFIERS | |
if (!$1) || (!$hget(%h,0).item) { return } | |
var %r = $hget(%h,$($) $+ $1) | |
return $iif(%r,1,0) | |
} | |
alias check_buildin_command { | |
; $check_buildin_command(zip) | |
var %h = BUILDIN_COMMANDS | |
if (!$1) || (!$hget(%h,0).item) { return } | |
var %r = $hget(%h,$(/) $+ $1) | |
return $iif(%r,1,0) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment