IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   IRCd Makaleler (https://www.ircforumlari.net/ircd-makaleler/)
-   -   EGGDROP - Tcl scriptleri bota yükleme,tanıtma.. (https://www.ircforumlari.net/ircd-makaleler/390422-eggdrop-tcl-scriptleri-bota-yuklemetanitma.html)

Heartbroken 18 Nisan 2011 18:25

EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
Selamlar..

dilim döndüğü kadar eggdrop botunuza scriptlerinizi nasıl yükleyecek nasıl tanıtacaksınız bunu burada anlatmaya resimlerle göstermeye çalışacağım..

burada yer alan pek çok konu altında pek çok arkadaşın scriptleri nasıl yükleyip tanıtacaklarını bilmediklerini görüyordum. pek çok konu altında ''peki bunu nasıl yükleyeceğiz ? '' sorusu vardı.

örnek olarak bir tcl scripti eggdropumuza yükleyelim..

Ben ftp olarak filezilla kullanıyorum google da aratırsanız ftp aracı olarak farklı çeşitlerde ftp aracını freeware ücretsiz yazılım olarak bulup kullanabilirsiniz...

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

ftp programımızla shell hesabımıza bağlanalım shell adresinizi kullanıcı adınızı şifrenizi ve kullanılacak portu yazıyoruz ..bu port değişebilir ancak genellikle 22 -23 portları kullanılıyor bilmiyorsanız boş bırakıp ''hızlı bağlan'' butonuna tıklayın, aracınız bağlanmayı denesin.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Hesabınıza bağlandıktan sonra eggdropunuzun kurulu olduğu dizine gidin ''çift tıklayıp klasörlerin içine girebilirsiniz''

yukardaki resimde eggdrop ''botdir'' dizininde kurulu /home/kullanıcı-adınız/eggdrop-dizininiz şeklinde eggdrop botunuzun kurulu klasörüne girdikten sonra ''scripts'' yazan bottaki tcl scriptlerinizin bulunduğu klasöre üstüne çift tıklayarak girin..

yüklemek istediğiniz tcl scriptinizi ftp aracının size göre sol penceresinde arayıp bulun ben burda masaüstünde join.tcl dediğim tcl scripti bota atıyorum.

bot/scripts dizinine göndermek için ya scriptin üstüne sağ tıklayıp açılan menuden ''karşıya yükle'' seçeneğini seçerek yada ''sürükle bırak '' yöntemiyle bot/scripts dizini içine atmak istediğim tcl scripti kopyalıyorum-taşıyorum..

Sürükle bırak'' yapmak için mouse ile taşımak istediğiniz dosya üstünde tıklayıp tutun ve taşımak istediğiniz yere mouse okunuzu yürütün.mouse bıraktığınız anda dosya karşı tarafa yüklenmeye başlıyacaktır.

bot/scripts dizini içinde yüklemek istediğiniz tcl scripti gördükten sonra.. geri bot ana dizinine gelin ve botunuzun .conf dosyasını açın.. açmak için .conf dosyanız üstüne sağ tıklayıp açılan menuden ''göster-düzenle'' seçin..

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

botu ilk kurduktan sonra yeni bir .conf düzenleyip bot içersine atmışsınızdır.. düzenlemediğiniz sürece zaten bot çalışmayacaktır. yukardaki resimde benim .conf dosyamın adı yo.conf sağ tıkla ''göster-düzenle'' seçip text editörüyle açıyoruz..''not defteri yada sizin önceden seçtiğiniz araçla açacaktır''

.conf dosyamızın içindeki ayarların genellikle en alt kısmında ...

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

botta yüklü scriptlerin listelendiği kısım mevcuttur.
yeni ftp ile bot içine gönderdiğimiz tcl scriptimizi bu listeye botun görebilmesi için eklememiz gerekir.bunuda yukarda resimde görüldüğü şekilde yapıyoruz..

source scripts/script-adı.tcl şekline yukarda join.tcl dediğimiz yeni scriptimizin eklendiğini görüyoruz.text editörümüze ''kaydet'' diyoruz direkt kapamaya çalışsakda yapılan değişikliği kaydetmek isteyip istemediğimizi soracaktır ''kaydet'' diyoruz..

otomatik olarak ftp aracı üstünde küçük bir pencere açılacak yapılan değişikliği karşıya yüklesin-kaydetsin mi? diye soracaktır.'evet' diyoruz.conf dosyasının yeni halini eggdrop dizini içine göndermiş oluyoruz..

şimdi işin ilk aşamasını geçmiş bulunuyoruz.. ikinci aşama bota yeni scriptimizi tanıtıp işlevsellik kazandırmak.. yani çalışmaya başlaması için botun yeniden yüklenmesi gerekiyor. bunu yapmanın birkaç farklı yolu var..

1- kanaldan komutla

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

botunuza kanalda /msg bot-nicki komut şeklinde ''sınırlı'' da olsa komut vermek mümkün botun yeni yüklenen scriptleri yada ''değişiklikleri'' algılayabilmesi için ya botu durdurup yeniden başlatmak yada ''rehash'' dediğimiz (''yeniden yüklemek'' diye çevirebiliriz ) işlemi yapmamız lazım..

tabi botu durdurup yeniden başlatmak gibi görece- nispeten zahmetli-uzun yol yerine ..botun işleyişini durdurmadan bu işi halletmek için ideal olan ''rehash'' çekmektir.. bota kanalda '' /msg bot-nick help '' yazıp atarsanız botunuz size notice olarak kanal üstünden kullanabileceğiniz komutların listesini gönderecektir..

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

''rehash'' komutuda kanal üstünden uygulayabileceğiniz komutlardan biridir ..

''/msg bot-nick rehash şifreniz'' şeklinde botun yeniden yüklenmesini sağlayabilirsiniz..burdaki 'şifreniz'' botu ilk çalıştırıp kanala soktuktan '' /msg bot-nick hello'' ile kendinizi sahip olarak tanıttıktan sonra bota /msg bot-nick pass şifreniz olarak tanıttığınız sahiplik şifrenizdir..

2 konsoldan-telnet'ten

windows kullanıcıları başlat/çalıştır-> telnet yazıp tamam dediğinizde telnet aracı açılacaktır.win7 kullanıcıları başlat/denetim masası/programlar/program özellikleri menüsü içerisinden tüm windows programları özellikleri penceresi içerisinden telneti seçip aktif hale getirebilirler.

botunuza telnetle bağlanabilmeniz için eggdropunuzun hangi portu dinlediğini bilmelisiniz bunu botunuzun .conf unda
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

resimde görüldüğü şekilde göreceksiniz. bota set my-ip yada set my-host şeklinde eklediğiniz adres-ip üzerinden telnet ile bağlanmaya çalışalım.
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

telneti açıp '' o shell-adı-yada-ip botun-portu '' şeklinde yazmalıyız ..
örnek -> '' o blabla.net 3333 '' blabla.net shellinizin-botunuzun işlediği ip adreside olabilir direkt adres olarakta yazılabilir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

bağlandığında bot sizden kendinizi tanıtmanızı isteyecek. owner olarak -sahip olarak hangi nicki-adı tanıyorsa bot ''handle'' olarak o nick yazılmalı şifre soracak bota ayarladığınız /msg bot-nick pass şifreniz '' olarak ayarladığınız şifrenizi girip enterlayın..
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
bota konsoldan bağlandık..

burdaki tüm komutlar '' .'' noktayla başlar.. '' .help '' yazarak diğer komutları görebilirsiniz.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Rehash işlemi için '' .rehash '' komutunu yazıp enterlıyarak uyguluyoruz..

burada rehash yerine başka komutlarda uygulanabilir mesala '' .restart '' dersek bot bağlantısını koparıp kendini oto yeniden başlatacaktır.

tüm kanallardan ayrılıp sonra kendi kendine başlayıp kanallara geri dönecektir..

yada '' .die '' komutuyla botu tamamen durdurup ssh aracınızla shellinize bağlanıp botu yeniden ./eggdrop bot.conf komutuyla kendiniz yeniden başlatmak durumunda kalırsınız .

Gördüğünüz gibi tüm bu seçenekler arasında .rehash komutu en pratik en az rahatsızlıkla botu hiç kanallardan çıkarmadan çalışmasını kesmeden yeni değişiklikleri uygulama - başlatma yoludur.

.rehash komutuyla beraber telnet ekranında botunuz tüm modül ve scriptleri süratle yeniden yükler eğer yeni yüklediğiniz scriptte yada .conf dosyanız üstünde yaptığınız değişikliklerde bir hata-sorun varsa çalışmasını-yüklemeyi durduracak ve bağlantıyı kesecektir.
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

konsolda config file not loaded not found or error ... gibisinden hata mesajları görürsünüz...

hemen üst kısımda eggdropun belkide en güzel yönü hatanın neyden kaynaklandığını ,nerede bulunduğunu göstermesidir .scriptte bir tcl hatası olabilir, yada yüklemek istediğiniz scriptin işlemesi için başka bir tcl ye daha ihtiyaç olabilir ve bunu script içinde şart koşmuş olabilirler

script içinde genelde üst kısımlarında : package require vsvs yada require bla.v.1 gibi o scriptin çalışması için şart-zorunlu olan script-yada paketleri belirtirler..bu gereksinimler olmadan o scripti yüklemeye -çalıştırmaya çalışırsanız ..yukardaki gibi bir hata mesajıyla bot kendini durduracaktır.

script -.conf üzerinde yaptığınız değişiklikler uygun- doğru* yapılmamış olabilir..tüm bunları ,hatanın nerede, hangi satırda olduğunu bot kendini durdurmadan o ekranda gösterecektir. o hatayı orda görüp giderme şansınız vardır böylece..

botu yeniden başlatmak için ssh aracımızı ( putty , futty vb.. )
açıp kullanıcı adımızı, shell hesabımızın şifresini girip bağlanıyoruz cd bot-dizini adı girip bot dizinine giriyoruz..

nerede bulunduğumuzu görmek için pwd tüm dizinleri görmek için ls yada ls -al komutları kullanılabilir.

botun hala işleyip işlemediğini ps x yada ps ux komutuyla görebiliriz..

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
PID nosunu hala çalışan botu durdurmak için kullanıyoruz.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

ya kill PID-no yada

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

kill -9 PID-no <-- botunuzun işlem tanımlama nosu diye çevirebiliriz..

bu şekilde botu durdurduktan sonra yeniden çalıştırmak için düzenlememizi tamamladıktan sonra bot dizinine gidip cd botdir

./eggdrop bot.conf komutuyla botumuzu yeniden çalıştırıyoruz.
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

modül yada scriptlerinizde nede .conf dosyanızda bir sorun-hata yoksa botunuz başarılı bir şekilde yeniden yüklenecek yeni eklediğiniz scriptleriniz-değişiklikler işlemeye başlamış olacaktır..

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

kolay gelsin..

toXic 18 Nisan 2011 19:27

Cevap: Tcl scriptleri bota yükleme,tanıtma..
 
Makaleler bölümüne taşidim.

CLubber 25 Nisan 2011 22:04

Cevap: Tcl scriptleriş bota yükleme,tanıtma..
 
Güzel bi paylaşım, emeğin için teşekkürler.

Bi çok kişi, tcl'leri bota tanıtmakta zorlanıyor, bu şekilde artık kolayca öğrenirler :)

Heartbroken 28 Nisan 2011 15:24

Cevap: Tcl scriptleriş bota yükleme,tanıtma..
 
selamlar..


bugün tüm bunlara eklemek istediğim birşey daha var şöle ki:

arkadaşlar ne yapın edin shell hesabınız üstündeki özellikle ayarlarınızın şifrelerinizin saklı olduğu .conf dosyalarınızı özellikle 'dosya izinlerini '' 711 olarak değişip başkalarının erişemeyeceği şekilde ayarlayın...(yapabiliyorsanız)

aksi halde hacklenmeye de hazır olun..bugün yabancı bir shell'deki arkadaşımın hesabına singapurlu biri hesabına girip bnc hesabına conf'una kendi bouncerlarını eklemiş ve daha yeni oda tesadüfen fark edebildi ..şifrenizi uzun ve karışık bir yapıda olmasına ve dosya izinlerinizi sadece sizin ulaşabileceğiniz şekilde yapılandırmaya özen gösterin..

benim bulunduğum shell hesaplarından biri bir türk sunucu ircd kurulu ve birkaç hafta evvel ben tesadüfen kullanıcı adı türk olduğu için farkedip baktım ki tüm dosyalarına girip açabiliyorum kopyalayıp açabiliyorum.. hatta kendisi bu forumunda üyesi burda gördüğüm biri.

kötü niyetli art niyetli birine denk gelse tüm ircd confları sunucu şifreleri admin şifreleri ne varsa kolayca hiç bir engelleme olmadan erişilebilir durumda..

siz siz olun buna dikkat buyurun.. benden söylemesi...

MeeT 07 Mayıs 2011 11:57

Cevap: Tcl scriptleriş bota yükleme,tanıtma..
 
Güzel Bir Çalışma emeğine Sağlık

MesqeN 03 Ocak 2012 20:04

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
Yine Yapmışsın yapacagını Makale dedigin böyle şehvetli olmalıdır.
Başarılarının devamını dilerim.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Bence Böyle bilgili insanlar.
İnsanlara yardım edebilmek adı altında
belirli uzmanlık alanları olan kısımlarda Görevlendirilebilir.

Yada Yardim verme yetkisi vardır adi ALtinda Yönetim Tarafindan RANK verilebilir
Cünkü verilen Komutların kodların hangi amacla ne icin kulanıldıgı önemlidir.
Saygılarımla

mercenary 18 Nisan 2012 14:49

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
benim ftp'de botdir şeklinde bir dizin yokki, /eggdrop/scripts bu şekilde çıkıyor dosyanın olduğu dizin, birde anlatımlarda hep bot botunuzun gibi ifadeler var hangi bot bu olayı bi türlü çözemedim başınızı ağrıttıysam özür.

saywhat 18 Nisan 2012 16:36

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
hesabınızda birden fazla eggdrop kurmaya kalkarsanız hepsine eggdrop adını vermeniz mümkün olamaz ..

yukardaki anlatımda eggdrop botuna kurulumda yada kurulumdan sonra botdir ismi uygun görülmüş.sizde dilerseniz eggdropunuza sağ tıklayıp yeniden adlandır deyip dilediğiniz ismi yazabilirsiniz..ister Ahmet deyin ister Mualla..

konu başlığından da anlaşılacağı üzere "eggdrop" bota bir script nasıl yüklenir tanıtılır o anlatılmaya çalışılmış..

.sizde eggdrop botun dizini her ne ise..hangi eggdrop botunuza script eklemeye çalışıyorsanız o eggdrop dizinine girip ..eggdrop botun scriptlerinin bulunduğu /home/kullanıcı-adınız/eggdrop-botunuz/scripts/ dizini içersine sftp ile yüklemek istediğiniz tcl scripti atın.

eggdrop botunuz (adı her ne ise) ana dizininde bulunan .conf uzantılı dosyasını açıp eklediğiniz scripti gösterin ..scriptin çalışmaya başlaması için ya .rehash ya .restart yada kill'leyip yeniden başlatın.hangisi kolayınıza geliyorsa o iyi olandır..

amasyaLi 18 Nisan 2012 22:25

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
bide örnek conf dosyası olsaydı iyi olurdu conf dosyasını yapamadım

CLubber 19 Nisan 2012 15:36

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
PHP- Kodu:

#! ~/eggdrop
set username "BOTUNADI"
set admin "BOTUNSAHIBI"
set timezone "EST"
set max-logs 5
set max
-logsize 0
set quick
-logs 0
logfile mco 
"olanbiten.log"
logfile jk #log "kanal.log"
set log-time 1
set keep
-all-logs 0
set 
switch-logfiles-at 300
set quiet
-save 0
set console 
"mkcobxs"
set userfile "shell.user"
set sort-users 0
set help
-path "help/"
set temp-path "/tmp"
set motd "motd"
set telnet-banner "telnet-banner"
set init-server putserv "MODE $botnick +ix-ws" 
putserv "PRIVMSG NICKSERV :identify NICKSIFRESI"
}
set protect-telnet 1
set dcc
-sanitycheck 0
set ident
-timeout 5
set 
require-p 0
set open
-telnet 1
set stealth
-telnets 0
set 
use-telnet-banner 0
set connect
-timeout 15
set dcc
-flood-thr 3
set telnet
-flood 5:60
set paranoid
-telnet-flood 1
set resolve
-timeout 15
set ignore
-time 15
set hourly
-updates 00
set owner 
"By_X"
set notify-newusers "$owner"
set default-flags "hp"
set whois-fields "url birthday"
set remote-boots 2
set share
-unlinks 0
set 
die-on-sighup 0
set 
die-on-sigterm 0
bind dcc n tcl 
*dcc:tcl
bind dcc n tcl 
*dcc:set
set must
-be-owner 1
set must
-be-owner 0
unbind dcc n simul 
*dcc:simul
set max
-dcc 50
set dcc
-portrange 1024:65535
set enable
-simul 1
set allow
-dk-cmds 1
set mod
-path "modules/"
loadmodule channels
set chanfile 
"elma.chan"
set ban-time 120
set exempt
-time 60
set invite
-time 60
set 
use-info 0
set 
global-flood-chan 10:60
set 
global-flood-deop 3:10
set 
global-flood-kick 3:10
set 
global-flood-join 5:60
set 
global-flood-ctcp 3:60
set 
global-chanset {
+
clearbans +enforcebans
+dynamicbans +userbans
-autoop -bitch
+greet +protectops
+statuslog -stopnethack
-revenge -secret
-autovoice +cycle
+dontkickops -wasoptest
-inactive +protectfriends
+shared +seen
+userexempts +dynamicexempts
+userinvites +dynamicinvites
}
channel add #kanal
channel add #kanal
channel add #kanal
channel add #kanal
channel add #kanal
 
 
loadmodule server
set net
-type 0
set nick 
"BOTUNNICKI"
set altnick "ALTERNATIFNICK"
set realname "ISMi"
set servers {
SERVERIPSI:PORT
}
set keep-nick 1
set 
use-ison 1
set strict
-host 0
set quiet
-reject 1
set lowercase
-ctcp 0
set answer
-ctcp 3
set flood
-ctcp 3:60
set never
-give-up 1
set strict
-servernames 0
set 
default-port 6663
set server
-cycle-wait 60
set server
-timeout 15
set servlimit 0
set check
-stoned 1
set 
use-console-r 0
set debug
-output 0
set serverror
-quit 1
set max
-queue-msg 300
set trigger
-on-ignore 0
set double
-mode 0
set double
-server 0
set double
-help 0
loadmodule ctcp
set ctcp
-mode 0
loadmodule irc
set bounce
-bans 1
set bounce
-modes 1
set kick
-bogus-bans 1
set bounce
-bogus-bans 1
set max
-bans 20
set max
-modes 30
set allow
-desync 1
set kick
-bogus 1
set ban
-bogus 1
set kick
-fun 1
set ban
-fun 1
set learn
-users 1
set wait
-split 600
set wait
-info 180
set mode
-buf-length 200
#unbind msg - hello *msg:hello
#bind msg - myword *msg:hello
unbind msg ident *msg:ident
unbind msg 
addhost *msg:addhost
#bind msg - myidentword *msg:ident
set no-chanrec-info 0
set revenge
-mode 1
set bounce
-exempts 0
set bounce
-invites 0
set max
-exempts 20
set max
-invites 20
set bounce
-bogus-exempts 0
set kick
-bogus-exempts 0
set bounce
-bogus-invites 0
set kick
-bogus-invites 0
set prevent
-mixing 1
set kick
-method 1
set modes
-per-line 3
loadmodule transfer
set max
-dloads 3
set dcc
-block 1024
set copy
-to-tmp 1
set xfer
-timeout 30
loadmodule share
set files
-path "/home/mydir/filesys"
set incoming-path "/home/mydir/filesys/incoming"
set upload-to-pwd 0
set filedb
-path ""
set max-file-users 20
set max
-filesize 1024
loadmodule notes
set notefile 
"arcan.notes"
set max-notes 50
set note
-life 60
set allow
-fwd 0
set notify
-users 1
set notify
-onjoin 1
loadmodule console
set console
-autosave 1
set force
-channel 0
set info
-party 0
loadmodule seen
checkmodule blowfish
loadmodule assoc
loadmodule wire
 
#Eger TCL Eklicekseniz source scripts/ismi.tcl 
#eklemelisiniz. 
 
source scripts/tclninadi.tcl 


OtherSide 06 Haziran 2012 04:33

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
Merhaba , eggdroplarda sıkıntı yokta bir bota extra tcl dosyası attığımda bunu confuna da eklediğim halde çalışmıyor nedenini bulamadım bir türlü sorun yok gibi gözüküyor ama tcl yi görmüyor..

saywhat 06 Haziran 2012 08:39

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
botun içine attığı tcl scripti botun görebilmesi ve çalışmaya başlaması için botun confunda scriptlerin eklendiği kısımda

source scripts/scriptin-adi.tcl

şeklinde gösterilmesi gerekir. scripts klasörü yerine başka bir klasöre eklendiyse o klasörün yerin adı "scripts" yerine yazılır.botun ana dizinine koyduysanız
source scriptin-adi.tcl

şeklinde eklenir. burda dikkat edilmesi gereken scriptin adını olduğu gibi yazmak gerekir .büyük -küçük harf uyumuna dikkat etmelisiniz.ayrıca scriptin adında birden fazla kelimeden oluşuyorsa kelime aralarında boşluk olamaz örneğin:

sCRiptİN AdI.tcl

şeklinde olamaz ayrı yazan AdI ya birleştirilmeli ya araya nokta yada tire konmalı sadece .conf gösterirken değil scriptin adınıda bu şekilde değişmelisiniz.yani confta eklenenle olan script adları görünümleri uyumlu aynı olmalı:

sCRiptİN-AdI.tcl ise bunu botun .confunda source scripts/scriptin-adi.tcl

şeklinde gösteremezsiniz olduğu gibi eklenmeli

source scripts/sCRiptİN-AdI.tcl

bu örnek için doğru şekildir.

sadece bu değişikliği yapmak da yeterli değildir. botun bu değişikliği görmesi için bota ya .rehash ya .restart işlemi uygulamak gerekir

kanal üstünden sahip-owner yetkisindeki kişi /msg bot-nick rehash şifre

komutuyla yada telnet/dcc bağlantısıyla .rehash yada .restart komutu uygulayabilir. bazı scriptlerde .rehash yeterli gelirken bazı scriptlerin işlemeye başlaması için .restart gerekebiliyor.

eklediğiniz scriptin de kendine göre işlemeye başlaması için yazılışından kaynaklanan özellikleri nedeniyle bazı ayarların yapılması gerekir..

bazı scriptlerin çalışması için telnet/dcc üzerinden aktif hale getirilmesi gerekir.

bunun için
.chaninfo #kanaliniz

komutuyla botun bulunduğu kanal üzerindeki ayarları göreceksiniz. bu komuttan sonra alt bölümde botun içindeki scriptlerden kaynaklanan ayarlar yer alır.örnek

bota Google tcl scripti attık diyelim bu scripti aktif etmek için scripti botun içine sftp ile upload ettik confu açtık

source scripts/Google.tcl
die ekledik .rehash yada .restart ettik.
bota telnet/dcc bağlandık.

.chaninfo #akanali

komutu verdik bot ayarları listeledi .listelenen ayarlarda kullanıcı tanımlı ayarlar kısmında -Google die bir satır gördük diyelim.
bu scriptin yüklendiğine ancak kanal üstünde aktif halde olmadığına işaret eder.
aktif etmek için:
.chanset #akanali +Google
komutu verdik mi bu script kanalımız üstünde işlemeye başlayacaktir. ayarları korumak için .save kanal ve kullanıcı dosyamızın yedeklemek için .backup komutu uygulanabilir.yedeklenmiş ayarları geri yüklemek için .reload uygulnabilir.

eğer hala script işlemiyorsa bu script üstünde sizin yaptığınız değişiklikler nedeniyle olabilir.yada yapmanız gereken ayarları script içinde yapmadığınızdan kaynaklanabilir.

yada yüklenen script artık işlevini yitirmiş olabilir.yani artık çalışmıyordur.bu özellikle bir siteden kaynak kodlar aracılığıyla bilgi çeken scriptlerin başına sık sık gelir.site üstünde yapılan değişiklikler nedeniyle kaynak kodu değişir ve bot için yazılmış kod artık işlemez hale gelir.

tüm bunların dışında yüklediğiniz scriptin çalışması için ya başka bir scriptin daha yüklü olması yada botun işlediği sistemde tcl.lib haricinde başka başka paketlerin var olması gerekebilir.

bu yüklü olması gereken script yada paketleri scriptin kodların başladığı üst kısmında require http yada package require json vs gibi belirtirler.bunun anlamı o scripti çalışması için bu scriptin yada paketin bulunması zorunludur.bu gereksinim yoksa yada script bu paketin-scriptin yüklü olduğu yeri-dizini göremiyorsa çalışmayacaktır.

Örnek bazı scriptler mysql database kullanabilir bunu kullanmanız için botun kurulu olduğu makinada bu paketin kurulu olması ve sistem yöneticisinin size bu pakete erişim hakkı tanıması gerekebilir...

yukardaki şekilde yüklediniz kontrolleri yaptınız hala işlemiyorsa o scripti ve botunuzu özelliklerini (versionu yüklü olduğu makinadaki tcl versionu vs ) gibi bilgilerini burda paylaşmanız gerekir (bota telnet/dcc üzerinde .status komutu bu bilgileri listeler.) ki neden çalışmadının cevabını verebilelim.bunun dışında scripti çalıştımayı denediğinizde yada botu yüklediğinizde telnet/dcc yada putty üzerinde herhangi bir hata error mesajı görünüyorsa bunuda paylaşmanız hatayı tanımlamakta yardımcı olacaktır.

saywhat 06 Haziran 2012 13:42

Cevap: EGGDROP - Tcl scriptleri bota yükleme,tanıtma..
 
konuya biraz daha katkı yapalım ve işinize yarayabilecek bilgi amaçlı bazı komutları tanıtalım:

öncelikle eggdrop botunuzun .conf dosyasına şu iki satırı ekleyip botu yeniden başlatın.

Kod:

bind dcc n tcl *dcc:tcl
bind dcc n set *dcc:set

bu iki satır bota telnet/dcc chat üzerinden .tcl ve .set komutlarını kullanabilmezi sağlayacak ki bu çok işe yarar bir şey ,aşağıdaki bazı komut örneklerini vereyim:

TCL Komutları:

Kod:

.tcl set ::tcl_library
tcl kütüphanesinin sistem üzerinde nerde kurulu olduğunu verir
Kod:

Tcl: /usr/local/lib/tcl8.5
gibi...

Kod:

.tcl package names
halihazırda botun kullanabildiği-görebildiği tcl paketlerini listeler.
Kod:

Tcl: logger http htmlparse tcl::tommath tcltest opt OAuthSingle MenzAgitats_Soundex Levenshtein msgcat eggbase64 eggdrop whatswhat Tcl sha1 platform base64 fsck
gibi...

Kod:

.tcl set ::tcl_patchLevel
sistemde kurulu tcl paketini tam sürümünü gösterecektir.
Kod:

Tcl: 8.5.9
gibi...

Kod:

.tcl set ::errorCode
hatalı kullanılmış yada tanımlanamayan yüklediğiniz scriptteki kodu gösterecektir..

Kod:

Tcl: TCL LOOKUP CHANNEL sock14
gibi...

Kod:

.tcl set ::errorInfo
koddaki hatalı görülen -botun tanımlayamadığı kod parçasının bilgisini verecektir..

Kod:

Tcl: can not find channel named "sock14"
Tcl:    while executing
Tcl: "eof $sock"

gibi...


Shell Komutları:

Kod:

.tcl exec -- date
botun kurulu olduğu sistemdeki tarih ve saat dilimi bilgisini verecek
Kod:

Tcl: Wed Jun  6 13:02:11 EST 2012
gibi


Kod:

.tcl exec -- pwd
botun kurulu olduğu dizini-yolu gösterecek..

Kod:

Tcl: /home/saywhat/bot
gibi...

Kod:

.tcl exec -- ls -m
botun kurulu olduğu dizindeki dosyaları listeler..

Kod:

Tcl: bum.txt, data, doc, eggdrop, eggdrop-1.6.21, filesys, gseen.conf, gseen.dat,
Tcl: help, ig-debug.txt, language, logs, logs2html.conf, megahal.aux, megahal.ban,
Tcl: megahal.brn, megahal.c, megahal.dic, megahal.dll, megahal.h, megahal.msg,
Tcl: megahal.swp, megahal.trn, modules, modules-1.6.21, patches, scripts,
Tcl: social.conf, stats.conf, statsmod.dat, sup, system, templates, text,
Tcl: triggerlog.txt, twitter.dat, var, webby.txt, whatswhat.dat, whatswhat.dat.bak,
Tcl: egg.conf

gibi...

Kod:

.tcl exec -- ps x
hesabınızda çalışan işlemleri listeler..

Kod:

Tcl:  PID TTY      STAT  TIME COMMAND
Tcl: 14919 ?        S      8:10 ./eggdrop egg.conf
Tcl: 15859 ?        S      0:00 sshd: saywhat@notty
Tcl: 15860 ?        Ss    0:00 /usr/lib/openssh/sftp-server
Tcl: 17348 ?        R      0:00 ps x

gibi...

Kod:

.tcl exec -- uptime
sistem zamanı uptime süresini verir makinanın açık olduğu süreyi.
Kod:

Tcl:  13:04:41 up 96 days,  8:23, 15 users,  load average: 0.00, 0.00, 0.00
gibi...

Kod:

.tcl exec -- uname -sr
sistem kernel versionu sürümünü verir.

Kod:

Tcl: Linux 2.6.32.40-grsec
gibi..

Bot Komutları:
Kod:

.tcl set ::serveraddress
botun şuan bağlı olduğu sunucu adresini verir..
Kod:

Tcl: 67.220.75.93:6667
gibi...


Kod:

.tcl set ::config
botun .conf dosyasının adını gösterir.

Kod:

Tcl: egg.conf
gibi...

Kod:

.tcl set ::botname
işleyen botun bilgisini nickini-ident-hostunu vs ..
Kod:

Tcl: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
gibi..


Kod:

.console
sizin ayarlanmış erişiminizdeki konsol flaglarını verir.telnet bağlantısında botun size gösterdikleri de denebilir.

Kod:

Your console is #bum: mpjkcobxsdw (msgs, public, joins, kicks/modes, cmds, misc, bots, files, server, debug, wallops).
gibi..

Kod:

.whom
konsol kullanıcı bilgilerini verir yada başka deyişle botun sizi telnet üzerindeki gördüğü. bilgiyi..,

Kod:

Nick        Bot        Host
----------  ---------  --------------------
*nrt        BoTie      [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Total users: 1

gibi...


Kod:

.uptime
botun son çalıştırılmaya başladığından bu yana online süresi.

Kod:

Online for 3 days, 22:12  (background)
gibi..


Kod:

.tcl set ::version
eggdrop botunuzun versionu sürümü..
Kod:

Tcl: 1.6.21 1062100
gibidir...

bunun dışında elinizdeki tcl kod parçasını işlemin doğru dönüp dönmediğini .tcl komutuyla deneme şansıda vardır..

şöyleki bota .tcl kod parçası yazıp attığınızda bot tcl: 1 dönerse kod doğru çalışır 0 dönerse hatalı olduğunu gösterecek hatta hemen ardından .tcl set ::errorInfo yaptığınızda hatanın ayrıntısını yanlış olan tcl komutu ve yerine ne kullanılabileceğini dahi söyleyecektir...

işinize yarayabilir sanırım..kolay gelsin..


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 09:29.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk