FAKULTAS TEKNOLOGI INFORMASI DAN KOMUNIKASI
Selamat Datang di Forum FTIKOM.

"Information & Communication Technology Faculty"
"UNIVERSITAS MULAWARMAN"


Daftarkan Diri Anda. Selamat Berposting.
Ramekan Forum kita guna memajukan Fakultas kita.

Best Regard

Bot Internet Relay Chat (IRC) menggunakan PHP

Topik sebelumnya Topik selanjutnya Go down

Bot Internet Relay Chat (IRC) menggunakan PHP

Post  Root_Wailler on Fri May 20, 2011 5:11 am

Di dalam tulisan ini, penulis tidak membahas secara mendetail tentang script PHP, karena tujuan untuk penulisan script ini ditargetkan kepada pembaca yang sudah mengerti sedikit banyak tentang PHP. PHP adalah suatu bahasa pemrograman web yang menempel pada HTML (hipertext markup language). Kebanyakan syntak PHP diambil dari bahasa C, Java, dan Perl, jadi sangat mudah bagi programmer di atas untuk mengerti bahasa PHP. Tidak seperti bahasa lainnya, PHP (hypertext preprocessor) mempunyai keunggulan dalam kecepatan, ampuh dan murah (gratis). PHP dikatakan cepat karena modul PHP berjalan di dalam ruang memorinya sendiri.

Dalam kasus membuat koneksi menggunakan PHP digunakan suatu perintah fsockopen yang berguna untuk membuka socket pada server dan port yang ditentukan, selain itu untuk menjalankan script ini tentu ada syarat khusus yaitu server yang anda gunakan haruslah mendukung script PHP, kemudian memperbolehkan Anda untuk menggunakan perintah fsockopen. Berikutnya buatlah file baru yang diberi nama form.html dan letakkan kode di bawah ini :

HTML Code:

<html>
<head>
<title>IRC bot by www.hdteam.net</title>
</head>
<body>
<form method="post" action="irc.lib.php">
Nick : <input type="text" name="nick"> <br>
Nama user : <input type="text" name="user"> <br>
Nama asli : <input type="text" name="nama"> <br>
Server : <input type="text" name="server"> <br>
Port : <input type="text" name="port"> <br>
Channel : <input type="text" name="channel"> <br>
<input type="submit" value="join" name="submit">
</form>
</body>
</html>

Berikutnya pastekan kode berikut ini kedalam file irc.lib.php :

PHP Code:

<?php
set_time_limit(0);
define('CRLF',"\r\n");
$nick = $_POST['nick'];
$user = $_POST['user'];
$localhost = ‘127.0.0.1';
$server = $_POST['server'];
$port = $_POST['port'];
$nama = $_POST['nama'];
$channel = $_POST['channel'];
$fp = fsockopen($server,$port, &$err_num, &$err_msg, 30);

if(!$fp) {
echo "Maaf, tidak bisa menghubungi server $server";
exit;
}

$data = 'NICK ' . $nick . CRLF;
$data .= 'USER ' . $user . ' ' . $localhost . ' ' . $server . ' :' . $nama . CRLF;
fputs($fp, $data);
$response = '';
while (!feof($fp)) {
$response .= fgets($fp, 1024);
while (substr_count($response,CRLF) != 0) {
$offset = strpos($response, CRLF);
$data = substr($response,0,$offset);
$response = substr($response,$offset+2);

if ( substr($data,0,1) == ':' ) {
$offsetA = strpos($data, ' ');
$dFrom = substr($data,1,$offsetA-1);
$offsetB = strpos($data, ' :');
$dCommand = substr($data,$offsetA+1,$offsetB-$offsetA-1);
$dText = substr($data,$offsetB+2);

if (substr($dCommand,0,3) == '004' ) {
fputs($fp,'JOIN ' . $channel . CRLF);
}
elseif ( substr($dCommand,0,7) == 'PRIVMSG' ) {
if ( Ord(substr($dText,0,1)) == 1 ) {
if ( substr($dText,1,4) == 'PING' ) {
fputs($fp,':' . $nick . ' NOTICE ' . $dFrom . ' :' .
chr(1) . 'PING ' . substr($dText,6) . chr(1) . CRLF);
}
elseif ( substr($dText,1,7) == 'VERSION' ) {
fputs($fp,':' . $nick . ' NOTICE ' . $dFrom . ' :' .
chr(1) . 'VERSION PHPirc' . chr(1) . CRLF);
}
}
else {
fputs($fp,$dText . CRLF);
}
}
}
elseif ( substr($data,0,4) == 'PING' ) {
fputs($fp,'PONG . substr($data,5) . CRLF);
}
}
}
fclose ($fp);
?>


Setelah ke-dua file di atas dibuat sekarang bukalah browser anda dan arahkan ke file form.html, contohnya http://www.domain.com/irc/form.html dan isikan spesifikasi identitas anda. Sekarang anda dapat melihat nick yang anda isikan join pada channel yang anda tentukan. Sebenarnya script di atas merupakan awal mula pembelajaran anda untuk membuat sebuah bot pada IRC. Silahkan mecoba.

Penulis sarankan agar Anda mencoba script ini hanya pada server hosting gratisan saja, karena ditakutkan jika anda menggunakan server hosting yang anda beli maka account anda dapat dihapus secara sepihak oleh pengelola server.

Semoga bermanfaat.

_________________________________________________
kita kan bray,....
ES DAWET NYA BRAY,....



BACA BRAY:
Semua takan sia-sia,bila ingin belajar
hanya dirimulah yang bisa mengubah garis hidupmu
hanya dirimulah yang bisa,bukan orang lain
perkataan mu adalah doa


K.E.E.P P.O.S.T.I.N.G B.R.A.Y

Root_Wailler
Third Moderator Forum [Ace]
Third Moderator Forum [Ace]

Posts : 250
Points : 335
Reputasi : 4
Age : 25
Location : Jakarta
Universitas : Indonesia
Fakultas : Informatika

http://Kaltimfree.com

Kembali Ke Atas Go down

Topik sebelumnya Topik selanjutnya Kembali Ke Atas

- Similar topics

 
Permissions in this forum:
Anda tidak dapat menjawab topik