Disajikan dalam sekejap

use IO:: Socket; use constant OURPORT => 2345; and then change the main program to: my $server = IO:: Socket:: INET->new( Proto => 'tcp', LocalPort=> OURPORT, Listen => SOMAXCONN, Timeout => 1, Reuse => 1); while(1) { $oscar->do_one_loop(); my $client; if ($client = $server->accept()) { my $message = ''; while () { $message = $message. $_; } close $client; my $buddy; foreach $buddy ($oscar->buddies(BUDDYGROUP)) { $oscar->send_im($buddy, $message); } } sleep 1; } 

Program ini sekarang menerima pesan pada port TCP 2345 dan mengirimkannya ke semua teman Anda. Server diatur untuk mendengarkan soket, dan panggilan terima() memberitahu kita jika seseorang mencoba menghubungi kita. Ketika ya, kita mendapatkan variabel bernama $client yang dapat kita gunakan seperti file – tanda kurung sudut tersebut berarti membaca satu baris dari file dan memasukkannya ke dalam variabel khusus yang disebut $_. Perulangan “sementara” membaca seluruh pesan dari server jarak jauh dan kemudian perulangan “foreach” mengirimkannya ke semua teman kita.

Disajikan dalam sekejap

Saya yakin Anda akan setuju bahwa contoh ini menunjukkan betapa hebatnya Perl untuk mengembangkan utilitas, dan jangan lupa ada banyak koleksi ekstensi sumber terbuka yang mengimplementasikan fungsi yang terlalu membosankan untuk dibuat menggores. Model dasar di sini dapat digunakan dengan sistem IM lain seperti Jabber hanya dengan menggunakan kelas yang sesuai sebagai pengganti Net:: OSCAR. Untuk melihat versi server kami yang diperluas yang dijelaskan di sini, kirimkan pesan “bantuan” ke realworldoss di AIM.