WebsockexNova.Defaults.DefaultMessageHandler (WebsockexNova v0.1.1)

View Source

Default implementation of the MessageHandler behavior.

This module provides sensible default implementations for all MessageHandler callbacks, including:

  • JSON message parsing and validation
  • Message type detection from common fields
  • JSON encoding for outbound messages
  • Basic subscription tracking

Usage

You can use this module directly or as a starting point for your own implementation:

defmodule MyApp.CustomMessageHandler do
  use WebsockexNova.Defaults.DefaultMessageHandler

  # Override specific callbacks as needed
  def message_type(message) do
    # Custom message type detection
    Map.get(message, "custom_type", :unknown)
  end
end

Features

  • Automatically parses JSON text messages
  • Tracks message processing count
  • Handles common subscription responses
  • Provides standardized error handling