PhoenixKitWeb.SyncChannel (phoenix_kit v1.7.38)

Copy Markdown View Source

Channel for DB Sync protocol messages.

Handles communication between sender and receiver sites during a data sync session.

Architecture

The SENDER site hosts this channel (has data to share). The RECEIVER connects via WebSocket to pull data.

Data Flow:

  1. Receiver's WebSocketClient connects to this channel
  2. Receiver sends requests (e.g., "request:tables")
  3. Channel handles request by querying local database
  4. Channel sends response back to Receiver

Protocol Messages

From Receiver (requests)

  • request:capabilities - Get server capabilities/version
  • request:tables - Request list of available tables
  • request:schema - Request table schema
  • request:count - Request record count for table
  • request:records - Request paginated records

To Receiver (responses)

  • response:capabilities - Server capabilities
  • response:tables - List of available tables
  • response:schema - Table schema details
  • response:count - Record count
  • response:records - Paginated records
  • response:error - Error response

Summary

Functions

child_spec(init_arg)

start_link(triplet)