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/)
-   Eggdrop, NeoStats, BNC (https://www.ircforumlari.net/eggdrop-neostats-bnc/)
-   -   webden istegi bot kanala atsin (https://www.ircforumlari.net/eggdrop-neostats-bnc/125137-webden-istegi-bot-kanala-atsin.html)

KryshtaL 23 Temmuz 2008 06:56

webden istegi bot kanala atsin
 
Boyle bir sey yapmayi dusunuyorum ve cok fazla tcl, php anlamam o yuzden yardımlarınızı bekliyorum.

duşuncem şu şekilde:

webden yapılan istekler bir txt dosyasına kayıt olacak ve eggdrop botuda txt dosyasına kayıt olduğu zaman kanala yansıtıp txt dosyasındakileri silecek.

bu şekilde bi kod yazılabilirmi yazılamazsa önerileriniz nelerdir :S

KryshtaL 29 Temmuz 2008 07:51

Cevap: webden istegi bot kanala atsin
 
Bu Tcl Dosyamız
Kod:

set db "../puplic_html/istek/veri.txt"
set gecikme_zamani "1"
set wait "1"
bind time - "* * * * *" time:optara
proc time:optara {min hour day month year} {
global db wait gecikme_zamani
set file [open $db r]
set listfile [split [subst -nocommands [read $file]] "\n"]
foreach i $listfile {
set wait [expr $wait + $gecikme_zamani]
set ch "#Dj"
utimer $wait[list putserv "privmsg $ch :$i"]
}

set filem [open $db w]
set listfilem [split [subst -nocommands [read $filem]] "\n"]
foreach i $listfilem {
set wait [expr $wait + $gecikme_zamani]
set ch "#Dj"
utimer $wait[list putserv "privmsg $ch :$i"]
}
close $file
}

yukarıdaki set db "../puplic_html/istek/veri.txt" isteklerin kayıt olacağı txt dosyasıdır bunun yerini doğru girmek önemli.
ve veri.txt dosyasının chmod değerini 777 yapınız. ben öyle yaptım belki silip yazamaz diye :)

Buda index.php Dosyamız
Kod:

<?php
ob_start();
?>
<html>
<head>
<title>Sunucuİsmi Radyo İstek</title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1254">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-9"></head>
<body bgcolor="FFF4DF">
<div align=center>
<table width=258 height="271" border=0 cellpadding=0 cellspacing=0>
<form action=iste.php method=post>
<tr>
 <td height="31" colspan="3"><div align="center"><font face=Tahoma size=2 color=brown><b>
    Sunucuİsmi
  Radyo İstek</b></font></div></td>
</tr>
<tr>
 <td width="71" align=left valign="middle"><div align="right"><font color="#000000" size="2" face="Arial"><strong>İsminiz:</strong></font></div></td>
 <td width="11">&nbsp;</td>
 <td width=208 align=left><input type=text size=25 name=isim></td>
</tr>
<tr>
 <td align=left valign="middle"><div align="right"><font color="#000000" size="2" face="Arial"><strong>Sanatçı:</strong></font></div></td>
 <td>&nbsp;</td>
 <td align=left><input type=text size=25 name=sanatci></td>
</tr>
<tr>
 <td align=left valign="middle"><div align="right"><font color="#000000" size="2" face="Arial"><strong>Şarkı:</strong></font></div></td>
 <td>&nbsp;</td>
 <td align=left><input type=text size=25 name=sarki></td>
</tr>
<tr>
 <td height="139" align=left valign="middle"><div align="right"><font color="#000000" size="2" face="Arial"><strong>Mesaj:</strong></font></div></td>
 <td>&nbsp;</td>
 <td align=left ><textarea rows=8 cols=20 name=mesaj></textarea></td>
</tr>
<tr>
 <td colspan="3"><div align="center">
  <input type=submit value=Gönder size=20 name=gonder>
 </div>
</form>
</table>
</div>
</body>
</html>

Ve Buda iste.php Dosyamız
Kod:

<html>
<head>
<title>Sunucİsmi Web İstek</title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1254">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-9"></head>
<body bgcolor="#FFF4DF">
</head>
<body>
<?php
$isim = $_POST['isim'];
$sanatci = $_POST['sanatci'];
$sarki = $_POST['sarki'];
$mesaj = $_POST['mesaj'];
if ($sanatci == "" OR $sarki == "" OR $mesaj == "") {
echo "<center>Lütfen Boş Alan Bırakmayınız.<br><a href='index.php'>Geri</a></center>";
} else {
$dosya_adi = "veri.txt";
$dosya = fopen ($dosya_adi , 'w') or die ("Hata! Lutfen Tekrar Deneyiniz!");
$yazi = "\00304,01 İsim:\00309,01 $isim \00304,01Sanatçı:\00309,01 $sanatci \00304,01Şarkı:\00309,01 $sarki \00304,01Mesaj:\00309,01 $mesaj ";
fwrite ( $dosya , $yazi ) ;
echo "<font color=red size=2 face=Arial><b><center>İsteğiniz sunucularımıza iletilmiştir.</b><br><br>
<FORM>
<INPUT TYPE='BUTTON' VALUE='Kapat'
NAME='lowerButton' onClick='self.close()'>
</FORM></center>
</font>";
}

?>
</body>
</html>

bu iste.php index.php ve boş bir veri.txt dosyalarını istek klasörüne attığınızda uyumlu bir şekilde çalışacaktır önemli olan tcl dosyasına veri.txt dosyasını doğru bir şekilde göstermektir.

Fazla php ve tcl kodlarından anlamadığımı söylemiştim.
Sizin verdiğiniz yöntemleri kullanarak birşeyler çıkarmaya çalıştım işte hepinize teşekkür ediyorum.
Umarım işinize Yarar
Not: Denenmiştir..

ŞaH42 09 Şubat 2012 02:09

Cevap: webden istegi bot kanala atsin
 
Hocam dediklerinizi aynen uyguladım webden girip istek yapıyorum weri.txt e isteği yazıyor fakat kanala aktarmıyor.tcl dediklerinizi normal radyo.tcl doyasının en altına ekledim nerde yanlışlık yapıyorum acaba set db "../puplic_html/radyo/veri.txt" buda bu şekilde ayarlı

saywhat 09 Şubat 2012 10:29

Cevap: webden istegi bot kanala atsin
 
sizdeki veri.txt mi weri.txt mi?

ŞaH42 yukardaki mesajında bir yerde weri diğer yerde veri.txt demişin senin oluşturduğun txt dosyasının adını set db "../puplic_html/radyo/veri.txt" bu yere doğru girdiğine emin misin?

saywhat 09 Şubat 2012 10:33

Cevap: webden istegi bot kanala atsin
 
birde bence o tcl kodu ayrı bir txt açıp veri.tcl vs gibi bi adla yeni bir tcl olarak ekle radyo.tcl içinden sil botunun confunda source scripts/veri.tcl vs gibi göstertip rehash yaptırt yada yeniden başlat bide böyle dene bakalım olacak mı?

CLubber 09 Şubat 2012 14:16

Cevap: webden istegi bot kanala atsin
 
Kod:

set db "../puplic_html/istek/veri.txt"
Kodunu;

Kod:

set db "../public_html/istek/veri.txt"
şeklinde değiştirin, index.php ve iste.php dosyalarını FTP'nizde public_html/istek klasörüne atınız.

Kod:

utimer $wait[list putserv "privmsg $ch :$i"]
Ve

Kod:

utimer $wait[list putserv "privmsg $ch :$i"]
TCL'deki $wait ile [ işaretinin arasındada boşluk olması gerekiyor.

ŞaH42 09 Şubat 2012 14:58

Cevap: webden istegi bot kanala atsin
 
Evet onları hallettimde birde bot kanala çok geç atıyor mesela 5 saniye içinde 3 istek istense sadece en son yazılanı kanala atıyor bunu hızlandırmanın bir yöntemi varmıdır

Eggdrop #define migrate zaten 0 olarak ayarlı timer e -h kipi olarak milisaniyeye düşürmeye çalıştım oda olmadı.

Hatta veri.txt dosyasını eggdrop klasörünün içine yazdırdım ordan çekiyor bot ama hala yavaş.

Birde şu var : Tcl error [time:optara] : "file25" wasn't opened for reading ; diye çalışıyor ama neden tcl error hatası veriyor onu anlayamadım.

saywhat 09 Şubat 2012 16:14

Cevap: webden istegi bot kanala atsin
 
yukardaki tcldeki putserv'leri putquick olarak değişirsenz daha çabuk atacaktır. msg

bide bunlar var bunları 0 olarak deneyebilirsinz.
set gecikme_zamani "1"
set wait "1"

MesqeN 09 Şubat 2012 16:46

Cevap: webden istegi bot kanala atsin
 
TcL Tam paylaşman gerekiyor.

ŞaH42 10 Şubat 2012 03:16

Cevap: webden istegi bot kanala atsin
 
istek.conf

Kod:

loadmodule channels
loadmodule server
loadmodule ctcp
loadmodule irc
loadmodule notes
loadmodule console
loadmodule blowfish
set username "xxxxxxxx"
set nick "Webistek"
set altnick "Webistek2"
set my-ip "xxxxxxxxxxxx"
set my-hostname "xxxxx.Com"
set realname "xxxx.Com"
set init-server {
putserv "identify xxxxxx"
putserv "oper xxxxx  xxxxx"
putserv "MODE Webistek +D"
}
set servers {
  xxx.xx.xx.xx:xxxx
}
  channel add #istek {
  need-op { putserv "MODE #istek +v Webistek" }
  }
set net-type 5
set owner "ŞaH"
set userfile "Komik.user"
set chanfile "Komik.chan"
logfile jpk #opers "logs/istek.log"
set shortnick "Webistek"
set home "#istek"
set mod-path "modules/"
set help-path "help/"
set text-path "text/"
listen 3334 all
logfile msbxco * "logs/istek.log"
set console "mkcobxs"
loadmodule uptime
source scripts/alltools.tcl
source scripts/action.fix.tcl
source scripts/istek.tcl



istek.tcl

Kod:

set db "veri.txt"
set gecikme_zamani "1"
set wait "1"
bind time - "* * * * *" time:optara
proc time:optara {min hour day month year} {
global db wait gecikme_zamani
set file [open $db r]
set listfile [split [subst -nocommands [read $file]] "\n"]
foreach i $listfile {
set wait [expr $wait + $gecikme_zamani]
set ch "#istek"
utimer $wait[list putserv "privmsg $ch :1,4 İstek: $i"]

set filem [open $db w]
set listfilem [split [subst -nocommands [read $filem]] "\n"]
foreach i $listfilem {
set wait [expr $wait + $gecikme_zamani]
set ch "#istek"
utimer $wait[list putserv "privmsg $ch :$i"]
}
close $file
}



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

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net