Langsung ke konten utama

Construct 2 Indonesia Manual: Bab Plugin Reference - 29. Websocket

Plugin: WebSocket adalah Wrapper sederhana dari protokol standar pada WebSocket. Hal ini memungkinkan komunikasi Bi-directional secara Real-time dengan biaya rendah. Karena Object: WebSockets berbasis standar, ini harus kompatibel dengan server WebSocket yang sesuai standar.

Menggunakan Plugin: WebSocket memerlukan server WebSocket. Construct 2 tidak menyediakan server dan Plugin: WebSocket tidak dapat digunakan untuk membuat server. Jika Anda belum menyiapkan server WebSocket, Anda harus membuatnya sendiri dengan menggunakan teknologi seperti: node.js (http://nodejs.org/) dengan dukungan WebSocket. Ini bisa menjadi usaha yang signifikan dan membutuhkan pengetahuan pemrograman Server-side.

Perhatikan bahwa Plugin: WebSocket saat ini juga hanya mendukung pesan teks, dan bukan pesan biner.


Websocket dan game MultipLayer

Mungkin Anda tertarik untuk menggunakan WebSockets untuk merancang game Real-time Multiplayer. Sayangnya, terlepas dari kenyataan bahwa WebSocket berkomunikasi secara Real-time, WebSockets saat ini tidak menjadi pilihan tepat untuk ini. Transportasi yang mendasarinya menggunakan Reliable Transmission, yang berarti satu pengiriman paket dapat menjaga semua transmisi sampai paket berhasil dipancarkan. Untuk game yang menuntut persyaratan Real-time, ini dapat menyebabkan tingkat Latency yang tidak dapat dimainkan. Biasanya tidak mungkin untuk merancang masalah ini tanpa mengubah mode transmisi, yang tidak didukung oleh Object: Websockets.

Di sisi lain, WebSockets akan cocok untuk game tanpa tuntutan persyaratan Real-time, seperti ‘Turn-based game’. Ini juga berguna untuk layanan aplikasi, seperti ‘Chat Room’. Catatan: Ini masih akan mengharuskan Anda untuk membuat server WebSocket Anda sendiri.



Websocket Properties

Object: Websocket tidak memiliki Properties.



Websocket Conditions

  • Is connecting
    TRUE jika saat ini sedang dalam proses menjalin koneksi ke server.
    Sambungan belum berhasil didirikan; Masih mungkin terjadi kesalahan.

  • Is open
    TRUE jika koneksi berhasil dibuat dan saluran komunikasi saat ini terbuka.

  • Is supported
    Gunakan Condition ini sebelum mencoba koneksi, untuk memverifikasi apakah browser atau Platform mendukung WebSockets.

  • On closed
    Dipicu saat koneksi ditutup, entah disengaja atau karena kesalahan.
    Expression: CloseCode dan CloseReason dapat menunjukkan penyebab mengapa sambungan tertutup.

  • On error
    Dipicu saat terjadi kesalahan pada koneksi WebSocket.
    Gunakan Expression: ErrorMsg untuk mendapatkan teks pesan kesalahan.

  • On opened
    Dipicu saat koneksi berhasil dibuat dan saluran komunikasi sekarang terbuka.

  • On message
    Dipicu saat pesan teks masuk dari server melalui koneksi yang terbuka.
    Gunakan Expression: MessageText untuk mengambil isi pesan.



Websocket Actions

  • Close
    Tutup semua koneksi aktif.
    Tidak ada lagi pesan yang bisa dikirim atau akan diterima setelah ditutup.

  • Connect
    Sambungkan ke server WebSocket. Alamat server WebSocket biasanya dimulai dengan ws:// untuk transmisi yang tidak aman dan wss:// untuk transmisi aman.
    Perhatikan: Beberapa konfigurasi jaringan mungkin memerlukan transmisi yang aman agar bisa berfungsi dengan benar.

    Parameter: Protocol dapat diatur secara opsional ke sub-protokol yang diperlukan (dikirim dengan Sec-WebSocket-Protocol Header di WebSocket Handshake).Jika server tidak mengindikasikan mendukung sub-protokol yang dipilih, koneksi akan gagal dibuat. Ini bisa digunakan untuk mencegah Client terhubung ke server WebSocket yang tidak mengerti pesan aplikasi Anda secara spesifik.

  • Send text
    Kirim String teks ke server. Ini diabaikan jika koneksi saat ini tidak terbuka.



Websocket Expressions

  • CloseCode
    Pada saat Condition: On closed terpicu, Expression ini mengambil kode numerik dari penyebab ditutupnya koneksi.
    Ini bisa menjadi salah satu nilai pengembalian Standard-specified, atau nilai yang ditentukan user.

  • CloseReason
    Pada saat Condition: On closed terpicu, Expression ini mengambil sebuah String yang menjelaskan penyebab koneksi ditutup.
    Ini opsional dan mungkin kosong.

  • ErrorMsg
    Pada saat Condition: On error terpicu, Expression ini mengambil pesan kesalahan teks.

  • MessageText
    Pada saat Condition: On message terpicu, Expression ini mengambil isi teks pesan yang baru diterima dari server.




Komentar