| Lista de identificadores del
mIRC
El entorno del programa mIRC provee de una serie de identificadores o funciones que devuelven automáticamente un valor, para su uso en definiciones de alias, popups y eventos. Todos ellos están precedidos para su identificación por el símbolo "$". Cuando el mIRC, en la ejecución de un script, encuentra uno de estos identificadores, lo sustituye por el valor que este devuelve. Es importante tener en cuenta que estos identificadores deben de ir siempre especificados entre dos espacios en blanco, de lo contrario el mIRC no los identificará como tales; aunque en las últimas versiones del programa esto no es necesario en ocasiones, es un buen hábito que nos ahorrará más de un problema. Los identificadores están concebidos para su uso dentro de rutinas de script y por tanto no funcionarán (no devolverán el valor correspondiente, sino que serán interpretados literalmente) en los comandos que introduzcamos directamente en la línea de escritura durante una sesión del programa. Este inconveniente, con el fin de hacer pruebas cómodamente, se puede soslayar de una manera sencilla: mormalmente usted escribirá el signo "/" delante de todos sus comandos, de esta forma mIRC interpreta lo que lee a continuación como un comando; si quiere probar un identificador dentro de un comando que introduce directamente no tiene más que preceder dicho comando de dos símbolos "/", de este modo el programa leerá la línea no como un comando simple, sino como una orden de script, y sustituirá el identificador por su valor correspondiente en ese momento. Un ejemplo sencillo es el siguiente: //whois $me Dado que, como veremos, el identificador "$me" devuelve siempre nuestro nick actual, la línea anterior será equivalente a hacernos un WHOIS a nosotros mismos sea cual sea el nick que tengamos en ese momento, mIRC se encargará de ponerlo en el lugar de "$me" a la hora de interpretar la orden. Si, en cambio, solo ponemos un símbolo "/" delante del comando el mIRC intentará hacer un WHOIS de un usuario apodado $me. A
continuación se relaciona una lista con la mayoría de
los identificadores que se encuentran disponibles en la
versión 5.31 de mIRC. Es también necesario
señalar que existe otra serie de identificadores
asociados con los eventos de mIRC de forma exclusiva, es
decir, solo se pueden usar dentro de estos y solo en
algunos de ellos, puesto que son específicos para los
mismos; los podrá descubrir dentro de los ejemplos que
se presentan del el capitulo correspondiente a los
eventos del mIRC.
Devuelve el
número del último timer activado con el comando /timer
Devuelve el
número de segundos transcurridos desde que se puso a
cero el reloj contador del mIRC, es decir, los segundos
transcurridos desde que nos conectamos en la sesión
actual, o desde una fecha determinada, dependiendo como
tengamos configurado el dialogo TIMER (menú
TOOLS). Devuelve el
número de ticks desde que se inició el sistema
operativo. Esta es una unidad de medida propia del reloj
interno de nuestro ordenador. Devuelve la hora
actual en formato horas/minutos/segundos.
Devuelve el
número de timers activos en el momento actual (ver
comando TIMER). Devuelve
todas las propiedades de timer cuyo número se
especifica: número de repeticiones, retardo y tipo...
etc. Las propiedades que podemos usar son: com, time,
reps, delay, type.
Devuelve
el comando o comandos asociados al timer
especificado. Devuelve el tipo
de status del timer especificado:
online/offline. $timestamp Devuelve
la hora actual en formato: [xx:xx]. Por ejemplo:
[13:34]
$abs(nº) Devuelve el
valor absoluto de un número, es decir, ese mismo número
pero sin signo. Devuelve el
número ASCII asociado al carácter que le
introduzcamos. Devuelve el resultado de las operaciones especificadas. Es útil para realizar operaciones múltiples de una forma sencilla. Por ejemplo: $calc(3.14159 * (2 ^ %x % 3) - ($ticks / (10000 + 1))) El símbolo
"^" representa la potencia, el asterisco el
producto, y "%" la división. Evidentemente
"+" y "-" son la suma y la resta. No
confundir el operador de la división con el símbolo
"%" que precede a las variables (las cuales
también se pueden incluir en la expresión), en el caso
de estas el símbolo precede inmediatamente al nombre de
la variable, mientras que si se trata del operador de
división tendrá siempre espacios en blanco a ambos
lados Devuelve
el carácter ASCII correspondiente al número
especificado. Por ejemplo: $tan(N), $atan(N)
Devuelve el número de veces que cadena_2 se encuentra repetida dentro de cadena_1. Por
ejemplo: Devuelve
la parte entera de un número, sin redondear. Por
ejemplo: Devuelve
los N primeros caracteres de una cadena, por
ejemplo: Devuelve
los N últimos caracteres de una cadena, por
ejemplo:
Retorna
todos los caracteres de una cadena convertidos a
minúsculas, por ejemplo: Devuelve
el número especificado de caracteres de una cadena desde
una posición dada. Por ejemplo:
Devuelve
la posición en que una sub_cadena comienza dentro de una
cadena. El número sirve para especificar la subcadena
cuando esta se repite en la cadena principal. Por
ejemplo: Si
el número especificado es 0 el identificador devolverá
el número de veces que la subcadena se repite, igual que
el identificador $count. Devuelve
un número o letra aleatorio comprendido en el
rango [valor1-valor2] . Por ejemplo:
Devuelve
la primera cadena, de la que habrá suprimido la primera
ocurrencia expresada en sub_cadena. Por
ejemplo: Busca
una cadena dentro de un texto, y la reemplaza por otra
especificada. Por ejemplo: Devuelve
un número especificado, con solo los N primeros
decimales. Por ejemplo: Devuelve
un texto del que eliminará los posibles códigos de
colores, negrita y subrayado. Devuelve
un texto dado repetido N veces.
Devuelve el nombre de n-ésimo fichero de alias cargado en ese momento. Si se especifica un 0 devolverá el número de ficheros de alias que se encuentran cargados. Es
posible también especificar un nombre de fichero en
lugar del número, la utilidad de esto es que el
identificador devolverá $null si ese nombre de
fichero no corresponde a ninguno de los ficheros de alias
cargados en ese momento, e puede aprovechar en
expresiones del tipo IF-ELSE (ver capítulo acerca de la
estrutura IF-ELSE). $alias(0) Devuelve el número de ficheros de alias cargados en ese momento. $alias(2) Devuelve el nombre del segundo fichero de alias cargado en ese momento. $alias(aliases.ini) Devuelve $null si el
fichero de alias especificado no está
cargado. Presentan un cuadro de dialogo desde el que permiten seleccionar un fichero o directorio para ser utilizado dentro de la especificación de un alias, popup, o rutina de script. $dir presenta un dialogo desde donde se puede acceder a toda la estructura de ficheros y directorios del disco permitiendo seleccionar un fichero, mientras que $file presenta solo los ficheros contenidos dentro de un determinado directorio. En ambos casos se puede especificar mediante el comodín "*" qué tipos de ficheros se desea que aparezcan según su extensión. $hfile es igual a $file con la única diferencia de que presenta los ficheros horizontalmente. $dir permite seleccionar un directorio, es útil para casos en que no se desea que se especifique un fichero, sino tan solo un directorio. El
formato es: $dir[="Texto"]
<path> $file[="Texto"]
<path> $hfile[="texto"]
<path> $sdir[="Texto"]
<path> Por ejemplo, podemos
definir una opción de popups que reproduzca los ficheros
de tipo midi que hay dentro de un directorio llamado
"midis", del que podremos seleccionar el que
deseemos: Es útil poner un símbolo $ adicional (dos en total) delante del identidicador, de este modo, si no se selecciona ningún fichero o directorio el comando no se ejecutará, de lo contrario daría un mensaje de error de parámetro no especificado. Nota:
no usar estos especificadores para seleccionar un fichero
a enviar por DCC, puesto que este comando lleva ya
incorporado su propio dialogo de selección.
Devuelve
$true si el fichero existe, y $false si no
es así. Es útil en instrucciones del tipo
IF-ELSE. Busca
en el directorio especificado (y en todos sus
subdirectorios), a todos los ficheros de un determinado
tipo, y presenta el path y el nombre del que tiene el
número de orden indicado. Si el número es 0 presentará
toda la lista de ficheros encontrados de ese tipo. Por
ejemplo: Devuelve
el directorio que tengamos especificado en el diálogo
DCC options, como destino por defecto para las
recepciones DCC. Devuelve
el directorio que tengamos especificado en el diálogo
DCC options, como destino para las recepciones DCC de
ficheros del tipo especificado. Por ejemplo:
Devuelve
el número de líneas que tiene un fichero de
texto. Devuelve
el tamaño en bytes de un fichero
especificado. Devuelve
el directorio especificado en la sección Loggin del
diálogo File/options, es decir, el direcctorio en los
que se guardarán las copias (logs).
Devuelve
el directorio especificado para los ficheros Midi en la
sección Sound Requests del diálogo File/options, es
decir, aquel en el que mIRC buscará un fichero de
extensión MID ante un requerimiento CTCP
MIDI. Devuelve
el path o ruta de un fichero especificado. Por
ejemplo: Devuelve
el nombre del fichero especificado, sin incluir el path.
Por ejemplo: Devuelve
el path donde se encuentra actualmente el programa
mIRC. Devuelve
el nombre del fichero .ini principal del
directorio donde se encuentra el mIRC. Este es
normalmente: mirc.ini. Lee
una línea aleatoria de un fichero de texto, y la inserta
dentro del alias en que se esté utilizando,
interpretando esta línea como un comando de mIRC. Su
formato es: El
parámetro "-L<número>" permite
especificar un número concreto de línea del
fichero. Ejemplos:
NOTA:
si la primera línea del fichero es un número el
programa entenderá que representa el número total de
líneas del fichero; esto acelerará considerablemente la
ejecución de $read. En caso de que especifiquemos
el 0 como número de línea, y la primera de ellas sea un
número, el identificador devolverá dicho
número. Lee
información de un fichero .ini e inserta la fila
correspondiente dentro del alias para su interpretación
como un comando. El formato es: Por
ejemplo: Presentará nuestro nick actual tomándolo del fichero mirc.ini El
parámetro "-n" permite interpretar
literalmente la línea, no como un comando.
Devuelve el nombre del n-ésimo fichero de script cargado. Si se especifica un nombre de fichero de script en lugar de un número, devolverá este mismo nombre, o $null si dicho fichero no se encuentra cargado. Ejemplos: $script(0) Devuelve el número de ficheros de script cargados. $script(2) Devuelve el nombre del segundo fichero de script. $script(moo.txt) Devuelve $null si el
fichero no está cargado, o moo.txt si lo
está. Devuelve
el directorio especificado para los ficheros WAV en la
sección Sound Requests del diálogo
File/options.
Busca
en la lista interna de direcciones la dirección asociada
al nick especificado. Los tipos son los que se describen
en el identificador $mask. Por
ejemplo: Si
la lista interna no contiene el nick especificado, o se
encuentra desactivada, se devolverá $null.
Devuelve los canales en que nos encontramos nosotros junto al nick especificado. Por ejemplo: $comchan(nick,0) Devuelve todos los canales en que estamos nosotros y ese nick. $comchan(nick,1) Devuelve el primer canal
en que nos encontramos junto a ese nick
Devuelve direcciones de la lista interna de direcciones. Propiedades: nick, user, host, addr. Ejemplos: $ial(*!*@*.demon.co.uk,0) Devuelve todas las direcciones que concuerdan con la máscara especificada. $ial(*!*@*.demon.co.uk,3) Devuelve la tercera dirección de la lista que concuerda con la máscara especificada. $ial(*!*@*.com,0).nick Devuelve el nick que concuerda con la máscara. $ial(*!*@*.com,4).user Devuelve el User_ID que concuerda con la máscara. Para escanear
todas las direcciones de la lista interna se puede usar: $ial(*,0).
Igual al
anterior pero solo referido a la lista de ocupantes de un
canal especificado. Busca dentro de
nuestra lista de acceso remoto el usuario con la
dirección especificada y devuelve su nivel de
acceso. Devuelve el n-ésimo server de las lista de servers enlazados en la actual red de IRC. Propiedades: addr, ip, level, info. Ejemplos: $link(0) Devuelve el número de servers enlazados $link(1) Devuelve el primer
server de la lista de links Devuelve
la máscara correspondiente al tipo especificado, para
una dirección dada. Por ejemplo:
Devolverá: *!*khaled@mardam.demon.co.uk
Devolverá: *!*@mardam.demon.co.uk Los tipos de máscara aplicables son los siguientes:
La utilidad de
este identificador es su uso en otros identificadores y
comandos. Devuelve nuestro
actual nick. Devuelve el
n-ésimo nick de la lista de nicks del canal
especificado. Si ponemos 0 devolverá en número de
ocupantes del canal. Devuelve el
enésimo nick de la lista de nicks que no tiene
estatus de operador del canal especificado. Si ponemos 0
devolverá en número de no operadores del
canal Igual a los
anteriores pero referido a los nicks de nuestra lista de
notificaciones. Además tiene las propiedades: note,
sound, y whois. Igual a los
anteriores pero referido a los nicks que tengan voz
dentro del canal especificado Igual a los
anteriores pero referido a los nicks que no tengan voz
dentro del canal especificado Igual los
anteriores, pero referido solo a los nicks que tengan
estatus de operadores del canal Devuelve
en una línea, separados por comas, todos los nicks que
tengamos seleccionados de la lista de nicks del
canal.
Pensemos
por ejemplo en una frase cualquiera; estará formada por
una serie de palabras que se pueden identificar
individualmente, aunque no entendamos su significado,
porque tienen siempre un caracter ASCII concreto que las
separa: el espacio en blanco. Otro ejemplo es la ruta de
acceso completa de un fichero en nuestro disco duro, un
caso: Este
ejemplo devolverá: 6, es decir, la posición del tercer
caracter "c" dentro de la cadena. Buscará
dentro de la cadena un elemento igual al indicado, si hay
varios elejirá el que hace el número de orden que
indicamos, y nos devolverá la misma cadena después de
haber eliminado este elemento.
Devuelve el
nombre de la ventana activa. Devuelve información sobre los canales en que nos encontramos. Propiedades: topic, mode, key, limit. Si se especifica un numero en vez de un canal, devuelve el nombre de ese canal. $chan(0) Devuelve el número de canales en que nos encontramos. $chan(2) Devuelve el nombre del segundo canal en que nos encontramos. $chan(2).key Devuelve la clave del segundo canal en que nos encontramos. También podemos especificar un nombre de canal, pero solo devuelve información sobre este si nos encontramos dentro de él. $chan(#mIRC).mode Devuelve los modos del
canal #mirc. Devuelve información sobre las ventanas de DCC chat abiertas. Propiedades: ip, status. Por ejemplo: $chat(2).ip Devuelve la IP del
segundo DCC chat activo. Devuelve información sobre las ventanas abiertas del servidor de ficheros. Propiedades: ip,
status, cd (directorio abierto) Devuelve información sobre los DCC get en curso (recepción de ficheros). Propiedades: ip, status, file, size, rcvd, cps, pc. Ejemplos: $get(0) Devuelve el número de dcc gets en curso. $get(2) Devuelve el nick que envía el segundo DCC get activo $get(2).rcvd Devuelve el número de bytes recibidos hasta el momento en el segundo dcc get. $get(2).cps Devuelve el número de caracteres por segundo que se están recibiendo en la segunda transmisión de ficheros $get(3).pc Devuelve el porcentaje
transmitido en la tercera recepción en
curso. Devuelve el nick o la dirección del enésimo query abierto. Propiedad: address Ejemplos: $query(0) Devuelve el número de querys abiertos. $query(2) Devuelve el nick del segundo query. $query(1).address Devuelve la dirección
del primer query. Devuelve información sobre los envíos de ficheros en curso (DCC sends). Propiedades: ip, status, file, size, sent, cps, pc. Ejemplos: $send(0) Devuelve el número de ficheros que se están enviando. $send(2) Devuelve el nick de destino del segundo envío. $send(1).sent Devuelve el número de bytes enviados en el primer DCC en curso. $send(3).pc Devuelve el porcentaje
transferido en el tercer envío en curso.
Devuelve el
valor $true (verdadero) o $false (falso) Si
estamos en estado de away o no.
$ignore(0) Devuelve el número de elementos incluidos en la lista de ignores. $ignore(1) Devuelve la dirección del primer elemento de la lista de ignores. $ignore(2).type Devuelve el flag del
segundo elemento de la lista de ignores, es decir, el
tipo de ignore impuesto: a los querys, a los
DCC...etc. Devuelve el
carácter de salto de línea. Equivale a: $chr(10).
Devuelve el número del puerto del server en el que estamos conectados.
Propiedades: desc (descripción), port (puerto), group (grupo). $server(0) Devuelve el número de servers de la lista. $server(2) Devuelve la dirección del segundo server. $server(2).desc Devuelve la descripción del segundo server. $server(3).port Devuelve el puerto de
conexión especificado para el tercer
server. Devuelve
la dirección URL de la página actualmente cargada en el
navegador. Ejemplo: /say
Estoy viendo la página: $url ... os la recomiendo!
$group(1) Devuelve el nombre del primer grupo del script. $group(1).status Devuelve el estatus del primer grupo: on o off. $group(#name) Devuelve el estatus del
grupo #name Devuelve el nick
de un usuario asociado a un evento.
Devuelve el
nivel de acceso remoto de un usuario asociado a un
evento. Documento escrito por SomaTic ( sucubus@arrakis.es ) |