Supabase Backend as a Service · Ders

Kullanıcı Varlığı ve Yayın Kanalları

Supabase Realtime Presence ile tablo değişikliklerinin ötesine geçerek kimlerin çevrimiçi olduğunu izleyin; Broadcast ile istemciler arasında geçici iletiler gönderin.

4. ders / 413 adım

Kullanıcı Varlığı ve Yayın Kanalları, CoddyKit'te ücretsiz bir Supabase Backend as a Service dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Supabase Backend as a Service öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Supabase Backend as a Service kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

Two More Realtime Features

Besides Postgres change streams, Supabase Realtime offers Presence (track online users) and Broadcast (send transient messages). Neither requires a database table.

What Is Presence?

Presence lets each client share small state (like a username or cursor position) and see everyone else's state in the same channel in real time.

Creating a Channel

A channel is a named room clients join.

const room = supabase.channel('room-1', {
  config: { presence: { key: 'user-42' } }
});

Tracking Presence

After subscribing, call track to publish your state to everyone in the channel.

room.subscribe(async (status) => {
  if (status === 'SUBSCRIBED') {
    await room.track({ name: 'Ada', online_at: Date.now() });
  }
});

Reading Who Is Online

Listen for sync events and read the current presence state of all members.

room.on('presence', { event: 'sync' }, () => {
  const state = room.presenceState();
  console.log('Online:', Object.keys(state).length);
});

Join and Leave Events

Presence emits join and leave events so you can animate users appearing and disappearing.

room.on('presence', { event: 'join' }, ({ newPresences }) => {
  console.log('Joined:', newPresences.length);
});

What Is Broadcast?

Broadcast sends low-latency messages to everyone in a channel without storing them. Great for cursors, typing indicators, and game moves.

Sending a Broadcast

Use send with a custom event name and payload.

room.send({
  type: 'broadcast',
  event: 'cursor',
  payload: { x: 120, y: 80 }
});

Receiving a Broadcast

Subscribe to the same event name to handle incoming messages.

room.on('broadcast', { event: 'cursor' }, ({ payload }) => {
  console.log('Cursor at', payload.x, payload.y);
});

Cleaning Up

Always remove channels when a component unmounts to free connections.

function cleanup(channel, supabase) {
  supabase.removeChannel(channel);
  return 'removed';
}
console.log(cleanup('chan', { removeChannel: () => {} }));

Choosing the Right Tool

Use Postgres changes for persisted data, Presence for online status, and Broadcast for fast disposable messages.

Quick Check

Test your understanding of Presence and Broadcast.

Recap

You learned to track online users with Presence and send ephemeral messages with Broadcast, plus when to use each versus Postgres change streams, and to clean up channels.

Başlamak ücretsiz

Yapay zeka eğitmeniyle Supabase Backend as a Service öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
11
Dersler
40

Sıkça Sorulan Sorular

“Kullanıcı Varlığı ve Yayın Kanalları” dersi ücretsiz mi?

Evet — “Kullanıcı Varlığı ve Yayın Kanalları” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Supabase Backend as a Service kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Supabase Backend as a Service kursu toplamda 4 dersten oluşur.

“Kullanıcı Varlığı ve Yayın Kanalları” dersinde ne öğreneceğim?

Supabase Realtime Presence ile tablo değişikliklerinin ötesine geçerek kimlerin çevrimiçi olduğunu izleyin; Broadcast ile istemciler arasında geçici iletiler gönderin. Supabase Backend as a Service ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Supabase Backend as a Service öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Supabase Backend as a Service, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Kullanıcı Varlığı ve Yayın Kanalları” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Supabase Backend as a Service dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Supabase Backend as a Service dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Gerçek Zamanlı Abonelikleri Anlama
  2. Tablo Değişikliklerine Abone Olma
  3. Canlı Sohbet Özelliği Oluşturma
  4. Kullanıcı Varlığı ve Yayın Kanalları
← Supabase Backend as a Service Sayfasına Dön