Popularity
1.7
Growing
Activity
0.0
Declining
6
1
2

Monthly Downloads: 26
Programming language: Elixir
License: MIT License
Tags: Actors     Voip     Socket     Freeswitch     Event    
Latest version: v0.4.0

Event Socket Outbound alternatives and similar packages

Based on the "Actors" category

Do you think we are missing an alternative of Event Socket Outbound or a related project?

Add another 'Actors' Package

README

Event Socket Outbound

Hex.pm Build Status Coverage Status

EventSocketOutbound is an Elixir protocol for the FreeSWITCH's Event Socket. This protocol provides support for Outbound method of the Event Socket.

Installation

Add event_socket_outbound to your list of dependencies in mix.exs:

    def deps do
      [{:event_socket_outbound, "~> 0.4.0"}]
    end

Getting started

# In your config/config.exs file
config :event_socket_outbound, EventSocketOutbound.Call.Manager,
  call_mgt_adapter: MySample.Call

where MySample.Call will be a module that implements EventSocketOutbound.CallMgmt behaviour and logic for controlling the call. By default EventSocketOutbound uses EventSocketOutbound.ExampleCallMgmt module which answers the call and play a welcome message.

Usage

  1. Start EventSocketOutbound without options.

    >Application.start(:ranch)
    :ok
    >EventSocketOutbound.start
    {:ok, #PID<0.172.0>}
    
  2. Start EventSocketOutbound with options.

    >Application.start(:ranch)
    :ok
    >EventSocketOutbound.start port: 8090, acceptors: 50
    {:ok, #PID<0.174.0>}
    
  3. Add the child specs to your supervision tree, using EventSocketOutbound.Protocol as protocol. For more info, refer to ranch docs.

    child_spec = :ranch.child_spec(ref, :ranch_tcp, %{num_acceptors: acceptors, socket_opts: [{:port, port}]}, EventSocketOutbound.Protocol :ranch)
    

Copyright (c) 2019, Davide Colombo.

EventSocketOutbound source code is licensed under the [MIT License](LICENSE.md).


*Note that all licence references and agreements mentioned in the Event Socket Outbound README section above are relevant to that project's source code only.