shaggoth
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: ; just connect to jabber server, jabber.org or anything other.. on *:START: { sockopen xmpp jabber.org 5222 } ; authorization, like in IRC /USER and /NICK, and /PASS ; "LOGIN HERE" and "PASSWORD HERE" - need to replace on *:SOCKOPEN:xmpp: { if ($sockerr) return sockwrite $sockname <?xml version='1.0'?><stream:stream xmlns:stream='http://etherx.jabber.org/streams' $+(to=',$sock($sockname).addr,') xmlns='jabber:client'> sockwrite $sockname <iq type='set' id='auth'> sockwrite $sockname <query xmlns='jabber:iq:auth'> sockwrite $sockname <username>LOGIN HERE</username> sockwrite $sockname <password>PASSWORD HERE</password> sockwrite $sockname <resource>mIRC</resource> sockwrite $sockname </query> sockwrite $sockname </iq> } ; and.. thats all. simple, huh? ; next - sockread, see traffic, educating and write bot on *:SOCKREAD:xmpp: { if ($sockerr) return sockread $+(&,$sockname) breplace $+(&,$sockname) 34 39 if ($sockbr = 0) return ; all incoming traffic echo -s $bvar($+(&,$sockname),1-).text ; this is like CTCP VERSION reply if ($bfind($+(&,$sockname),0,xmlns='jabber:iq:version')) { var %< = $bfind($+(&,$sockname),0,<iq), %> = $bfind($+(&,$sockname),%<,>), %from = 0@0/0, %id = 0 if ($bfind($+(&,$sockname),%<,from=') < %>) var %' = $v1 + 6, %from = $bvar($+(&,$sockname),%',$calc($bfind($+(&,$sockname),%',') - %')).text if ($bfind($+(&,$sockname),%<,id=') < %>) var %' = $v1 + 4, %id = $bvar($+(&,$sockname),%',$calc($bfind($+(&,$sockname),%',') - %')).text sockwrite $sockname <iq type='result' to=' $+ %from $+ ' id=' $+ %id $+ '> sockwrite $sockname <query xmlns='jabber:iq:version'> sockwrite $sockname <name>mIRC by Khaled Mardam-Bey</name> sockwrite $sockname <version>1.0.0.0</version> sockwrite $sockname <os>Microsoft Windows XP Professional Service Pack 2 (build 2600)</os> sockwrite $sockname </query> sockwrite $sockname </iq> } } ; For join to the conference/room/channel, just type: ; sockwrite $sockname <presence from='LOGIN@jabber.org/mIRC' to='mybot@conference.jabber.org/LOGIN'> ; sockwrite $sockname <x xmlns='http://jabber.org/protocol/muc'> ; sockwrite $sockname <history maxchars='0'/> ; sockwrite $sockname </x> ; sockwrite $sockname </presence> ; of course, LOGIN need to replace. jabber.org, mIRC, mybot - if it need.. | Добавлено: в общем через битлби залез, теперь надо придумать как бы копировать мессаги с канала на канал (в разых сетях).. в общем хочу из мирка бота сделать, который будет канал с конфой связывать. не подскажете? |