Fswitch
A complimentary Erlang library for FreeSWITCH mod_erlang_event See supplied etc/erlang.xml as a dialplan example.
Usage
rebar3 get-deps
rebar3 compileUsage and design
With mod_erlang_event loaded FreeSWITCH becomes an Erlang node, with an ability to handle calls in another Erlang node.
In order to do that one requires to forward calls to FreeSWITCH erlang application specifying full name of the target node.
<action application="erlang" data="call_sup:! reach@172.17.0.1"/>
This produces a message in form in target erlang node sent to a registered process named call_sup: {get_pid, UUID, Ref, From},
where UUID is a call UUID.
call_sup process on this message spawns a call handling process (see src/call.erl), and requests initial dump of variables
generating syntetic call event SYNC on success.
In spite of all messages sent from mod_erlang_event being Erlang strings, this library converts everything to Erlang binaries
(probably we change mod_erlang_event too to communcate binary strings only).
Notes
This is currently work in progress, and a foundation of SIP functional testing application busytone.