module XMPP::AutoTransport

Overview

XEP-0156 fallback for Config.transport = TransportMode::Auto: try the RFC 6120 TCP path first, then each discovered WebSocket/BOSH endpoint in order. Returns the concrete transport that connected (never a wrapper).

Defined in:

xmpp/transport/transport.cr

Class Method Summary

Class Method Detail

def self.open(config : Config, &discover : String, Config -> Array(AlternativeEndpoint)) : Transport #

Block form lets callers intercept discovery (e.g. tests that assert TCP succeeds without ever reaching host-meta).


[View source]
def self.open(config : Config, discover : String, Config -> Array(AlternativeEndpoint) = ->(domain : String, conf : Config) do AltConnectionResolver.discover(domain, conf) end) : Transport #

[View source]