Öncelikle RAW’ın sözlük anlamından başlayalım.
Aslı Ingilizce olan bu kelime “Canlı,çiğ,pişmemiş” anlamlarına gelmektedir.
Bu kadar anlaşılmaz olmasının ismiyle bir ilgisi varmı acaba?
IRC’de ise Rawlar “Serverin Diri mesajları” anlamına gelmektedir.Yani bu mesajlar, IRC server programının içine düzenli bir şekilde yerleştirilip, program tarafından belirli zamanlarda kullanıcılara iletiliyor.
En basit örneği servere bağlanırken;
Welcome to the OracLe IRC Network nobetci-sazan!aA@195.171.47.30
Your host is irc.superonline.com[@0.0.0.0], running version SoLIRCD(1)-9.0(07)
This server was created Fri Mar 16 2001 at 13:48:43 EET
irc.oracle.com SoLIRCD(1)-9.0(07) oiwscrknfydaAbghe biklmnoprRstvc
NOQUIT WATCH=128 SAFELIST are available on this server
karşınıza çıkan bu mesaj birkaç raw mesajından meydana geliyor.
Ilk satır ilk Raw, yani Raw numarası 1,
Ikinci satır, raw numarası 2,
Ve 3,4,5… böyle devam edip gidiyor.
RAW’lar Kaç bölüme Ayrılır?
ıÜüRaw’larla ilgili ilk belgelerin sahibi Jarkko Oikarinen ve S. M. Allen (a.k.a. Jeepster) Rawları şu ana bölümlere ayırıyorlar.
(000’lı seriler) Server Info : Server kod serileri.
(200’lü seriler) Command Replies : Komut Yanıtları
(300’lü seriler) Command Replies : Komut Yanıtları
(400-500’lü seriler) Error Replies : Hata Yanıtları
(600’lü seriler) Watch System (DALnet) : Sistem izleme serileri (Dalnet)
(Reserved Codes) Various Reserved or No-Longer-Used Codes : Çeşitli yedek veuzun zamandır kullanılmayan Raw’lar
Örnekler:
* 000’lı seriler
Raw numarası : 001
Server Mesajı : Welcome to the OracLe IRC Network nobetci-sazan!aA@195.171.47.30
* 200’lü seriler
Raw numarası : 265
Server Mesajı : Current Local Users “Current local users: Max:
* 300’lü seriler
Raw numarası : 313
Server Mesajı : :is an IRC operator
* 400-500’lü seriler
Raw numarası : 482
Server Mesajı : :You’re not channel operator
* 600’lü seriler
Raw numarası : 602
Server Mesajı : :stopped watching (removed from list)
* Reserved Codes:
209 RPL_TRACECLASS D
217 RPL_STATSQLINE D
231 RPL_SERVICEINFO D
232 RPL_ENDOFSERVICES D
233 RPL_SERVICE D
234 RPL_SERVLIST D
235 RPL_SERVLISTEND D
316 RPL_WHOISCHANOP
361 RPL_KILLDONE D
362 RPL_CLOSING D
363 RPL_CLOSEEND D
373 RPL_INFOSTART D
384 RPL_MYPORTIS D
466 ERR_YOUWILLBEBANNED D
476 ERR_BADCHANMASK D
492 ERR_NOSERVICEHOST D
D = DALNET
ıÜüBilinen Kaç Adet Raw Vardır?
ıÜü6 bölüme ayrılan Raw’lar kendi içlerinde de numaralandırılmışlardır.
Aşağıda hangi seriler, hangi Raw numaralarına sahip olduğu belirtilmektedir;
* 000’li seriler
Sahip Olduğu Raw numaraları : 001, 002, 003, 004, 005, 006, 007
* 200’lu seriler
Sahip Olduğu Raw numaraları : 200, 201, 202, 203, 204, 205, 206, 208, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 231, 232, 233, 234, 235, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 261, 262, 263, 265, 266, 271, 272, 275, 280, 281, 290, 291, 292, 293, 294, 295
* 300’lu seriler
Sahip Olduğu Raw numaraları : 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 321, 322, 323, 324, 328, 329, 331, 332, 333, 341, 342, 351, 352, 353, 361, 362, 363, 364, 365, 366, 367, 368, 369, 371, 372, 373, 374, 375, 376, 377, 381, 382, 383, 384, 391, 392, 393, 394, 395
* 400’lu seriler
Sahip Olduğu Raw numaraları : 401, 402, 403, 404, 405, 406, 407, 408, 409, 411, 412, 413, 414, 421, 422, 423, 424, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 451, 461, 462, 463, 464, 465, 466, 467, 468, 471, 472, 473, 474, 475, 476, 477, 478, 481, 482, 483, 491, 492
* 500’lu seriler
Sahip Olduğu Raw numaraları : 501, 502, 511, 512, 513, 521
* 600’lu seriler
Sahip Olduğu Raw numaraları : 600, 601, 602, 603, 604, 605, 606, 607
ıÜüNasıl Kullanılır?
çııÖÖçşıÜüGenelde mIRC’de Rawlara pek dokunulmaz. Müdahelede bulunulsa bile sadece echo ile kullanılır.
mIRC’de Raw’lara müdahele komutu;
/raw < Num >:*: { eylem }
Örneğin;
/raw 401:*: { /echo 4 -a $2 $2- | halt }
Raw’larda $2 ibaresi regular yani düzenli değerleri ifade eder. Kanal Nickname Server gibi. $2 den sonra gelen her değer ($3, $4, $5, $6….) serverden gelen her mesajın birer kelimesini ifade eder.
Örneğin;
OracLe is an IRC operator
Bu mesajın mIRC’de Kelimelere bölünmüş hali aşağıdadır,
OracLe : $2
is : $3
an : $4
IRC : $5
operator : $6
Kullanımı;
/raw < Num >:*: { echo $2 $3 $4 $5 $6 | halt }
mIRC’de birde bu mesajları birleştirerek okuma yöntemi vardır.Bu yöntemde belirli birkaç değişken verilir ve geriye kalanları da belirtilen yöntemle okunması sağlanır.
Örneğin;
/raw < Num >:*: { echo $2 $3 | say $4- | halt }
Burada $2 ve $3 sadece kendinize görünecek şekilde ayarladık. Yani örnekteki $2 ve $3 (OracLe is) ‘e kadar olan kısmı yanlızca siz,
$4 ten sonraki bölümü (an IRC operator) ise kanala veya query’e söyleyecektir.Önemli olan $4’ten sonra gelen ” – ” işaretidir. Bu işaret “$4 ve sonrasında gelen bütün kelimeleri $4 gibi göster” anlamına gelmektedir.
RAW NuMARALARI VE KARŞILIKLARI
001 RPL_WELCOME 363 RPL_CLOSEEND
002 RPL_YOURHOST 364 RPL_LINKS
003 RPL_CREATED 365 RPL_ENDOFLINKS
004 RPL_MYINFO 366 RPL_ENDOFNAMES
200 RPL_TRACELINK 367 RPL_BANLIST
201 RPL_TRACECONNECTING 368 RPL_ENDOFBANLIST
202 RPL_TRACEHANDSHAKE 369 RPL_ENDOFWHOWAS
205 RPL_TRACEUSER 371 RPL_INFO
206 RPL_TRACESERVER 372 RPL_MOtd
207 RPL_TRACESERVICE 373 RPL_INFOSTART
208 RPL_TRACENEWTYPE 374 RPL_ENDOFINFO
209 RPL_TRACECLASS 375 RPL_MOtdSTART
211 RPL_STATSLINKINFO 376 RPL_ENDOFMOtd
212 RPL_STATSCOMMANDS 381 RPL_YOUREOPER
213 RPL_STATSCLINE 382 RPL_REHASHING
214 RPL_STATSNLINE 383 RPL_YOURESERVICE
215 RPL_STATSILINE 384 RPL_MYPORTIS
216 RPL_STATSKLINE 385 RPL_NOTOPERANYMORE
217 RPL_STATSQLINE 391 RPL_TIME
218 RPL_STATSYLINE 392 RPL_USERSSTART
219 RPL_ENDOFSTATS 393 RPL_USERS
221 RPL_UMODEIS 394 RPL_ENDOFUSERS
231 RPL_SERVICEINFO 395 RPL_NOUSERS
232 RPL_ENDOFSERVICES 401 ERR_NOSUCHNICK
233 RPL_SERVICE 402 ERR_NOSUCHSERVER
234 RPL_SERVLIST 403 ERR_NOSUCHCHANNEL
235 RPL_SERVLISTEND 404 ERR_CANNOTSENDTOCHAN
241 RPL_STATSLLINE 405 ERR_TOOMANYCHANNELS
242 RPL_STATSUPTIME 406 ERR_WASNOSUCHNICK
243 RPL_STATSOLINE 407 ERR_TOOMANYTARGETS
244 RPL_STATSHLINE 408 ERR_NOSUCHSERVICE
245 RPL_STATSSLINE 409 ERR_NOORIGIN
251 RPL_LUSERCLIENT 411 ERR_NORECIPIENT
252 RPL_LUSEROP 412 ERR_NOTEXTTOSEND
413 ERR_NOTOPLEVEL 395 RPL_NOUSERS
254 RPL_LUSERCHANNELS 414 ERR_WILDTOPLEVEL
255 RPL_LUSERME 421 ERR_UNKNOWNCOMMAND
256 RPL_LUSERADMINME 422 ERR_NOMOtd
257 RPL_ADMINLOC1 423 ERR_NOADMININFO
258 RPL_ADMINLOC2 424 ERR_FILEERROR
259 RPL_ADMINEMAIL 431 ERR_NONICKNAMEGIVEN
261 RPL_TRACELOG 432 ERR_ERRONEUSNICKNAME
300 RPL_NONE 433 ERR_NICKNAMEINUSE
301 RPL_AWAY 434 ERR_SERVICENAMEINUSE
302 RPL_USERHOST 435 ERR_SERVICECONFUSED
303 RPL_ISON 436 ERR_NICKCOLLISION
304 RPL_TEXT 441 ERR_USERNOTINCHANNEL
305 RPL_UNAWAY 442 ERR_NOTONCHANNEL
306 RPL_NOAWAY 443 ERR_USERONCHANNEL
311 RPL_WHOISUSER 444 ERR_NOLOGIN
312 RPL_WHOISSERVER 445 ERR_SUMMONDISABLED
313 RPL_WHOISOPERATOR 446 ERR_USERSDISABLED
314 RPL_WHOWASUSER 451 ERR_NOTREGISTERED
315 RPL_ENDOFWHO 461 ERR_NEEDMOREPARAMS
316 RPL_WHOISCHANOP 462 ERR_ALREADYREGISTRED
317 RPL_WHOISIDLE 463 ERR_NOPERMFORHOST
318 RPL_ENDOFWHOIS 464 ERR_PASSWDMISMATCH
319 RPL_WHOISCHANNELS 465 ERR_YOUREBANNEDCREEP
321 RPL_LISTSTART 466 ERR_YOUWILLBEBANNED
322 RPL_LIST 467 ERR_KEYSET
323 RPL_LISTEND 471 ERR_CHANNELISFULL
324 RPL_CHANNELMODEIS 472 ERR_UNKNOWNMODE
331 RPL_NOTOPIC 473 ERR_INVITEONLYCHAN
332 RPL_TOPIC 474 ERR_BANNEDFROMCHAN
333 RPL_TOPICBY 502 ERR_USERSDONTMATCH
341 RPL_INVITING 475 ERR_BADCHANNELKEY
342 RPL_SUMMONING 476 ERR_BADCHANMASK
351 RPL_VERSION 481 ERR_NOPRIVILEGES
352 RPL_WHOREPLY 482 ERR_CHANOPRIVSNEEDED
353 RPL_NAMREPLY 483 ERR_CANTKILLSERVER
361 RPL_KILLDONE 491 ERR_NOOPERHOST
362 RPL_CLOSING 501 ERR_UMODEUNKNOWNFLAG
492 ERR_NOSERVICEHOST 502 ERR_USERSDONTMATCH