Construct + connect immediately. The Phoenix Socket opens on
the next tick — onOpen fires the first time with
isInitialConnection === true.
Fired on every successful open.
Fired on transport errors (before reconnect).
Fired on every close. Distinguishes consumer
disconnect() from unexpected drops via isDisconnecting.
Override the Phoenix endpoint. Defaults to DEFAULT_TILTIFY_SOCKET_URL.
Subscribe to per-channel ack events (ok, error, timeout)
for every channel this client opens. Add the listener BEFORE
calling startListeningToFact / startListeningToCampaignBySlug
— listeners added afterwards only fire for subsequent channels.
Subscribe to every Phoenix event across every fact this client is listening to. The firehose form of on.
Re-arm + re-open the underlying socket. Resets the initial-
connection flag so the next onOpen reports true.
Useful for callers that want explicit "reconnect now" behavior — Phoenix's built-in auto-reconnect is normally sufficient.
Tear down every joined channel and close the underlying socket.
Sets the isDisconnecting flag so the next onClose reports
true.
Cached display name for a campaign fact, or undefined.
Cached display name for a cause fact, or undefined.
Convenience: look up the cached display name for any fact type in one call.
Cached display name for a fundraising-event fact, or undefined.
Subscribe to a single Phoenix event across every fact this client is listening to. Use addEventListener for the unfiltered firehose.
High-level: resolve @user/campaign-slug (or +team/...) via
the Tiltify REST API, then start listening to the resolved
campaign + its parent fundraising event + parent cause.
Throws Error("Could not find campaign with the provided slugs")
if the lookup fails. Network errors bubble up as-is.
@username for individuals or +teamname
for teams. The leading sigil is stripped before lookup.
Campaign URL slug.
Optional narrowed event list. Defaults to EVENTS_TO_WATCH.
Low-level: subscribe to every events channel for the given
fact. Idempotent — subsequent calls with the same factID are
no-ops, even if the requested events list differs.
Tiltify fact UUID.
Defaults to EVENTS_TO_WATCH.
One of "campaign", "fundraising-event",
"cause". Routed into the right REST lookup when
lookup === true.
When true (default), look up the fact's name
false to skip
the round-trip — the channel subscription happens
immediately and getXxxName(factID) returns undefined
until the cache is populated some other way.
Wraps the Tiltify Phoenix Channels gateway with the same surface
playlive-console-v2'sLiveEventsProvider(and legacy callers) already use:addEventListener) →disconnect()on unmount.addChannelListenerfor per-channelok/error/timeoutfromChannel.join().getCampaignName/getFundraisingEventName/getCauseName— populated as facts are looked up.REST lookups for
FindCampaign,GetCampaign,GetFundraiser,GetCause, andGetFundraisingEventsSupportingCampaignsare delegated to the@playlive/tiltify-coretiltifysingleton withtiltify.UseProxy()enforced — the proxy URL is configured via that singleton's setup, this class does not touch it.Example