pengiriman string dan record

4
- Pengiriman String/Record melalui ICS: 1. Menggunakan Protokol TCP Dalam pengirimam menggunakan protokol TCP, harus ada yang berlaku sebagai Server yang berfungsi untuk mengatur client yang terhubung. Dalam program server,ketika pertama kali program dijalankan maka program akan menentukan protokol apa yang akan digunakan,menggunakan script berikut ini: WSocketServer1.Proto :='TCP'; setelah menentukan protokol yang digunakan,kemudian ditentukan port yang akan digunakan server untuk menunggu client yang mau melakukan koneksi ke server. Dalam program ini saya menggunakan port telnet.cara pendefinisian portnya menggunakan script berikut ini: WSocketServer1.Port :='telnet'; Program selanjutnya menentukan IP yang digunakan untuk menunggu client di IP 0.0.0.0. Program menggunakan ip ini supaya ketika program ganti komputer,maka program tidak perlu disetting lagi ip untuk listen nya. Misalkan,program pertama kali dijalankan di IP 192.168.1.109 kemudian program dipindahkan kekomputer lain dengan IP 192.168.1.110. apabila program disetting untuk listen di IP 192.168.1.109, maka ketika program dipindahkan kekomputer dengan IP 192.168.1.110, kita harus menyetting ulang ip untuk listennya. karena apabila tidak kita setting ulang,program client tidak akan bisa menemukan server. Sehingga client dan server tidak akan bisa berkomunikasi. Setelah Client dan server terhubung,maka program bisa memulai komunikasi. Untuk yang tcp ini data dikirim dalam bentuk String.untuk pengiriman data String, pada sisi server menggunakan Script berikut ini: for i := 1 to WSocketServer1.ClientCount do

Upload: muhammad-farid-ghozi

Post on 30-Jun-2015

27 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Pengiriman String dan record

- Pengiriman String/Record melalui ICS:

1. Menggunakan Protokol TCP Dalam pengirimam menggunakan protokol TCP, harus ada yang berlaku sebagai Server yang berfungsi untuk mengatur client yang terhubung. Dalam program server,ketika pertama kali program dijalankan maka program akan menentukan protokol apa yang akan digunakan,menggunakan script berikut ini:

WSocketServer1.Proto :='TCP';

setelah menentukan protokol yang digunakan,kemudian ditentukan port yang akan digunakan server untuk menunggu client yang mau melakukan koneksi ke server. Dalam program ini saya menggunakan port telnet.cara pendefinisian portnya menggunakan script berikut ini:

WSocketServer1.Port :='telnet';

Program selanjutnya menentukan IP yang digunakan untuk menunggu client di IP 0.0.0.0. Program menggunakan ip ini supaya ketika program ganti komputer,maka program tidak perlu disetting lagi ip untuk listen nya. Misalkan,program pertama kali dijalankan di IP 192.168.1.109 kemudian program dipindahkan kekomputer lain dengan IP 192.168.1.110. apabila program disetting untuk listen di IP 192.168.1.109, maka ketika program dipindahkan kekomputer dengan IP 192.168.1.110, kita harus menyetting ulang ip untuk listennya. karena apabila tidak kita setting ulang,program client tidak akan bisa menemukan server. Sehingga client dan server tidak akan bisa berkomunikasi. Setelah Client dan server terhubung,maka program bisa memulai komunikasi. Untuk yang tcp ini data dikirim dalam bentuk String.untuk pengiriman data String, pada sisi server menggunakan Script berikut ini:

for i := 1 to WSocketServer1.ClientCount do WSocketServer1.Client[i - 1].SendLine(edit1.Text);

Program melakukan perulangan untuk menentukan client keberapa yang akan dikirimi data. Sedangkan pada sisi client, menggunakan Script Berikut ini: email.pesan := edit1.Text; WSocket1.SendLine(email.pesan);

untuk menerima data dari client, program server dibuat seolah-olah menjadi client melalui class TWSocketClient. setelah itu baru dilakukan penerimaan data. menggunakan script berikut ini:

pesan := ReceiveStr;

Page 2: Pengiriman String dan record

2. Menggunakan Protokol UDP Untuk pengiriman Data menggunakan protokol UDP,tidak diperlukan adanya server. karena pengiriman data menggunakan UDP sifatnya broadcast yaitu data akan tetap dikirimkan ada atau tidak ada penerima. sehingga pengiriman menggunakan udp, rawan data yang hilang. Untuk proses koneksi menggunakan protokol UDP sebagai berikut: WSocket1.proto :='UDP';

Sama seperti TCP, pertama kali menentukan protokol yang digunakan.setelah ditentukan protokolnya, kemudian ditentukan ip untuk menerima data.yaitu di IP 0.0.0.0. Dalam pengiriman menggunakan protokol UDP,caranya sebagai berikut: WSocket1.Connect;

Sebelum dilakukan pengiriman data,dilakukan prosedur untuk connect ke ip broadcast. setelah terhubung ke ip broadcast baru data bias dikirimkan. tetapi bedanya dengan tcp, apabila di UDP telah mengirimkan data, koneksinya langsung diputuskan. Untuk pengiriman data STRING menggunakan protocol UDP yaitu sama dengan TCP, menggunakan perintah :

WSocket1.Sendline(data);

Untuk data sendiri merupakan nama variable yang mempunyai type data STRING. Untuk inisialisasinya bias dengan menggunakan dua cara. Yaitu:

Data := ‘saya’;

Atau bias juga dengan cara dibawah ini:

Data := edit1.text;

Dari kedua cara tersebut yang membedakan hanyalah, kalau menggunakan cara yang kedua, nilai yang masuk ke variable data bias berubah – ubah sesuai dengan yang diinputkan user. Sedangkan untuk penerimaannya menggunakan perintah berikut ini :

Len := WSocket1.Receive(@Buffer, SizeOf(Buffer) - 1);

Dari perintah diatas yaitu pesan yang diterima dimasukkan ke varibel buffer. Setelah dimasukkan ke variable buffer, pesan yang diterima diambil panjang pesannya, yang kemudian dihilangkan karakter enter. Baru kemudian ditampilkan melalui prosedur Display.

Untuk pengiriman menggunakan record, pertam kita buat record dan pointer dulu. Misalnya seperti dibawah ini:

Page 3: Pengiriman String dan record

PKirim : ^RKirim;RKirim = record Pesan : String;End;

Pada variable diatas yaitu variable PKirim menunjuk ke variable RKirim. Dimana variable RKirim berisi variable Pesan dengan type data String. Kemudian untuk mengirimkannya menggunakan perintah :

PtrKirim := @RecKirim;RecKirim.Pesan := edit1.Text;WSocket1.Send (PtrKirim,SizeOf(RecKirim));

Pada pengiriman record tidak lagi menggunakan SendLine, tetapi menggunakan Send. Karena pada pengiriman record yang dikirimkan adalah alamat pointer yang menunjuk ke variaber record itu.

Sedangkan untuk penerimanya sendiri yaitu:

Len := WSocket1.Receive(@Buffer, SizeOf(Buffer)); PtrTerima := @Buffer; Display('Receive Messaege : '+ PtrTerima.terima);

Pesan yang diterima dimasukkan kedalam variable buffer. Kemudian pointer terima atau PtrTerima menunjuk kealamat yang diterima oleh Buffer. Dalam alamat yang diterima terdapat pesan yang berupa record. Alamat pesan tersebut dimasukkan kedalam variable record lagi supaya bisa dibaca datanya. Untuk menampilkan datanya menggunakan perintah :

Display (‘Terima Pesan : ‘+PtrTerima.terima);