Study
Genie

WebSocket Dasar

Penjelasan

Genie punya dukungan WebSocket bawaan lewat modul `Genie.WebChannels`, tanpa perlu package tambahan seperti Socket.IO di framework lain. Channel didaftarkan mirip route HTTP biasa, dan pesan bisa dikirim dua arah antara server dan browser secara realtime. Fitur ini sering dipakai untuk dashboard data science interaktif — misalnya mengirim update hasil komputasi Julia secara langsung ke browser tanpa perlu polling berulang dari sisi client.

Contoh Konsep

using Genie.WebChannels
using Genie.Router

route("/") do
    Genie.Renderer.Html.html("index.jl.html")
end

channel("/notifikasi") do
    pesan = Genie.WebChannels.message
    "Server menerima: $pesan"
end

# Di sisi JavaScript browser (dari view)
# Genie.WebChannels.sendMessageTo("notifikasi", "Halo server")

Praktikum

Buat channel WebSocket "/harga-saham" yang membalas pesan dengan menambahkan awalan "Update: " di depan pesan yang diterima.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Pastikan channel WebSocket punya nama unik yang tidak bentrok dengan path route HTTP biasa, supaya tidak membingungkan saat debugging.