All Projects → esl-client → Esl Client

esl-client / Esl Client

Licence: apache-2.0
A Fork from http://git.freeswitch.org/git/freeswitch-contrib/tree/dvarnes/java/esl-client

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Esl Client

human-call-filter
Captcha for phone calls
Stars: ✭ 41 (-74.37%)
Mutual labels:  telephony, voip
Core
Free, easy to setup PBX for small business based on Asterisk 16 core
Stars: ✭ 190 (+18.75%)
Mutual labels:  telephony, voip
fonoster
🚀 The open-source alternative to Twilio
Stars: ✭ 5,072 (+3070%)
Mutual labels:  telephony, voip
freeswitch-esl-all
freeswitch event socket base on netty 4 and has some new features.
Stars: ✭ 110 (-31.25%)
Mutual labels:  netty, voip
Freeswitch
FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a versatile software implementation that runs on any commodity hardware. From a Raspberry PI to a multi-core server, FreeSWITCH can unlock the telecommunications potential of any device.
Stars: ✭ 1,213 (+658.13%)
Mutual labels:  voip, telephony
awesome-rtc
📡 A curated list of awesome Real Time Communications resources
Stars: ✭ 196 (+22.5%)
Mutual labels:  telephony, voip
Kalbi
Kalbi - Golang Session Initiated Protocol Framework
Stars: ✭ 85 (-46.87%)
Mutual labels:  telephony, voip
Oreka
Enterprise telephony recording and retrieval system with web based user interface.
Stars: ✭ 20 (-87.5%)
Mutual labels:  telephony, voip
Asterisk Cdr Viewer Mod
Simple and fast viewer for Asterisk CDRs and Recordings (Mod)
Stars: ✭ 76 (-52.5%)
Mutual labels:  voip, telephony
Baresip
Baresip is a modular SIP User-Agent with audio and video support
Stars: ✭ 817 (+410.63%)
Mutual labels:  voip, telephony
Fonos
🚀 The open-source alternative to Twilio
Stars: ✭ 3,785 (+2265.63%)
Mutual labels:  voip, telephony
Ivozprovider
IVOZ Provider - Multitenant solution for VoIP telephony providers
Stars: ✭ 127 (-20.62%)
Mutual labels:  voip, telephony
somleng
Open Source Implementation of Twilio's REST API
Stars: ✭ 33 (-79.37%)
Mutual labels:  telephony, voip
Katari
Katari - Python Session Initiated Protocol Framework
Stars: ✭ 29 (-81.87%)
Mutual labels:  telephony, voip
Kamailio
Kamailio - The Open Source SIP Server for large VoIP and real-time communication platforms -
Stars: ✭ 1,358 (+748.75%)
Mutual labels:  voip, telephony
Switchio
asyncio powered FreeSWITCH cluster control
Stars: ✭ 160 (+0%)
Mutual labels:  voip, telephony
Java Kcp
基于java的netty实现的可靠udp网络库(kcp算法),包含fec实现,可用于游戏,视频,加速等业务
Stars: ✭ 137 (-14.37%)
Mutual labels:  netty
Netty Learning Example
🥚 Netty实践学习案例,见微知著!带着你的心,跟着教程。我相信你行欧。
Stars: ✭ 2,146 (+1241.25%)
Mutual labels:  netty
Easydeviceinfo
📱 [Android Library] Get device information in a super easy way.
Stars: ✭ 1,698 (+961.25%)
Mutual labels:  telephony
Pdf Books
📚 PDF 书籍库
Stars: ✭ 134 (-16.25%)
Mutual labels:  netty

esl-client

Travis Maven Central

esl-client is a Java-based Event Socket Library for the FreeSWITCH project.

This project is a fork of the unmaintained, original project at https://freeswitch.org/stash/projects/FS/repos/freeswitch-contrib/browse/dvarnes/java/esl-client

Status: In Progress...

Example

package com.ecovate.freeswitch.lb;

import com.google.common.base.Throwables;
import org.freeswitch.esl.client.inbound.Client;
import org.freeswitch.esl.client.inbound.IEslEventListener;
import org.freeswitch.esl.client.internal.IModEslApi.EventFormat;
import org.freeswitch.esl.client.outbound.Context;
import org.freeswitch.esl.client.outbound.IClientHandler;
import org.freeswitch.esl.client.outbound.IClientHandlerFactory;
import org.freeswitch.esl.client.outbound.SocketClient;
import org.freeswitch.esl.client.transport.event.EslEvent;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.net.InetSocketAddress;

public class FreeSwitchEventListener {

  private static Logger logger = LoggerFactory.getLogger(FreeSwitchEventListener.class);

  public static void main(String[] args) {
    try {

      final Client inboudClient = new Client();
      inboudClient.connect(new InetSocketAddress("localhost", 8021), "ClueCon", 10);
      inboudClient.addEventListener(new IEslEventListener() {
        @Override
        public void onEslEvent(EslEvent eslEvent) {

        }
      });
      inboudClient.setEventSubscriptions(EventFormat.PLAIN, "all");

      final SocketClient outboundServer = new SocketClient(
        new InetSocketAddress("localhost", 8084),
        new IClientHandlerFactory() {
          @Override
          public IClientHandler createClientHandler() {
            return new IClientHandler() {
              @Override
              public void handleEslEvent(Context context, EslEvent eslEvent) {
              }

              @Override
              public void onConnect(Context context, EslEvent eslEvent) {
              }
            };
          }
        });


    } catch (Throwable t) {
      Throwables.propagate(t);
    }
  }

}

Authors

License

esl-client is licensed under the Apache License, version 2.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].