GithubHelp home page GithubHelp logo

asterisk-java / asterisk-java Goto Github PK

View Code? Open in Web Editor NEW
405.0 73.0 291.0 55.01 MB

The free Java library for Asterisk PBX integration.

Home Page: http://asterisk-java.org

License: Apache License 2.0

Java 99.54% HTML 0.46%
java asterisk asterisk-ami asterisk-pbx asterisk-agi

asterisk-java's Introduction

README for Asterisk-Java

INTRODUCTION

The Asterisk-Java package consists of a set of Java classes that allow you to easily build Java applications that interact with an Asterisk PBX Server. Asterisk-Java supports both interfaces that Asterisk provides for this scenario: The FastAGI protocol and the Manager API.

You can find the Java docs for the lastest version here: JavaDoc

FastAGI

FastAGI lets you create a service that manages a call in a similar way to what a webserver handles a http request. FastAGI can be (and should be) used to replace dialplan. FastAGI is thousands of times faster than dialplan, easier to debug and lets you do call control in a language that you are familiar with.

The FastAGI implementation supports all commands currently available from Asterisk.

Manager API

The Manager API implementation supports receiving events from the Asterisk server (e.g. call progess, registered peers, channel state) and sending actions to Asterisk (e.g. originate call, agent login/logoff, start/stop voice recording). If you like, the Manager API allows you start and manipulate calls. A complete list of the available events and actions is available in the javadocs.

Activities

Activities are new to asterisk-java 2.0. The aim of Activities is to provide a high level interface to interactions with Asterisk. Whist Activities use both FastAGI and the Manager API you would normally consider Activities as a replacement for the Manager API.

Activities provide a simple and consistent method of interaction with Asterisk without having to worry about issues such as connection management and without having to understand the intricacies of Asterisk Manager Actions and Events.

Getting Started

Tutorial

Activities

Examples

GETTING ASTERISK-JAVA

Asterisk-Java is available from here

Maven Dependency

Asterisk-Java 3.x (Java 1.8 and Asterisk Version 10 thru 18) (master)

<dependency>
  <groupId>org.asteriskjava</groupId>
  <artifactId>asterisk-java</artifactId>
  <version>3.39.0</version>
</dependency>

Gradle Dependency

  implementation group: 'org.asteriskjava', name: 'asterisk-java', version: '3.39.0'

INSTALLATION FROM SOURCE

git clone https://github.com/asterisk-java/asterisk-java.git
cd asterisk-java
mvn install

After the build is complete, the jar will then be built as target/asterisk-java.jar in the asterisk-java directory.

EXAMPLE

The file 'examples/ExampleCallIn.java' will answer the call and playback the audio file 'tt-monkeys'.

import org.asteriskjava.fastagi.AgiChannel;
import org.asteriskjava.fastagi.AgiException;
import org.asteriskjava.fastagi.AgiRequest;
import org.asteriskjava.fastagi.BaseAgiScript;
/* Example incoming call handler
Answer call, speak message */
public class ExampleCallIn extends BaseAgiScript {
  public void service(AgiRequest request, AgiChannel channel) throws AgiException {
    answer();
    exec("Playback", "tt-monkeys"); 
    hangup();
  }
}

The file 'examples/fastagi.properties' maps your Asterisk diaplan context to the class you would like to invoke above.

callin.agi = ExampleCallIn

To compile and run do:

javac -cp asterisk-java.jar ExampleCallIn.java
java -cp asterisk-java.jar org.asteriskjava.fastagi.DefaultAgiServer

SYSTEM REQUIREMENTS

Asterisk-Java needs a Java Virtual Machine of at least version 1.8 (Java SE 8.0). If you want to build the jar from source, you will also need Maven.

LEGAL

Asterisk-Java is subject to the terms detailed in the license agreement accompanying it.

asterisk-java's People

Contributors

bbankowski avatar bsutton avatar danieldbower avatar dependabot[bot] avatar discardedwutu avatar dr4k4n avatar elara-leitstellentechnik avatar gfelisberto avatar github-actions[bot] avatar juradoz avatar kantv avatar legart avatar leonardossilva avatar magicprinc avatar mareckii avatar mr-mister123 avatar paulokinho avatar piotrooo avatar polachok avatar rlsutton1 avatar scgm11 avatar seanbright avatar shonbir avatar sprior avatar srt avatar ssether-usinternet avatar terwarf avatar videanuadrian avatar yorlov avatar zoumhussein avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

asterisk-java's Issues

org.asteriskjava.manager.internal.EventBuilderImpl - Unable to set property...no setter

using 2.0 snapshot
org.asteriskjava.manager.internal.EventBuilderImpl - Unable to set property.....

'eventlist' to'Complete' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter.
'listitems' to'1' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter.
'eventlist' to'Complete' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter.
'listitems' to'0' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter.
'eventlist' to'Complete' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter.
'listitems' to'1' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter.
'language' to'en' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0sourcessrc' to'0x21337ddc' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0dlsr' to'2.0960' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'sentntp' to'3522090500.17560498606080' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'sentpackets' to'604' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'sentrtp' to'96800' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'uniqueid' to'1436111389.0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'reportcount' to'1' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0cumulativelost' to'0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0sequencenumbercycles' to'0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'ssrc' to'0x35552983' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0highestsequence' to'50896' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0fractionlost' to'0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'sentoctets' to'96800' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0iajitter' to'49' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'to' to'[::1]:0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0lsr' to'3500631455' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'channel' to'SIP/2001-00000000' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'language' to'en' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0sourcessrc' to'0x21337ddc' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0dlsr' to'4.8920' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'sentntp' to'3522090503.17560498606080' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'sentpackets' to'744' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'sentrtp' to'119200' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'uniqueid' to'1436111389.0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'reportcount' to'1' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0cumulativelost' to'0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'report0sequencenumbercycles' to'0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.
'ssrc' to'0x35552983' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter.

org.asteriskjava.manager.internal.EventBuilderImpl

----From: nohup.agi.20160407.out---------------------------------------------

2016-04-07 16:49:32 [main] INFO org.asteriskjava.fastagi.DefaultAgiServer - Listening on *:4573.
2016-04-07 16:49:51 [main] INFO org.asteriskjava.fastagi.DefaultAgiServer - Received connection from /45.63.68.90
2016-04-07 16:49:51 [main] INFO org.asteriskjava.fastagi.DefaultAgiServer - Thread pool started.
2016-04-07 16:49:51 [Asterisk-Java DaemonPool-1-thread-1] INFO org.asteriskjava.fastagi.ResourceBundleMappingStrategy - Added mapping for 'incoming.agi' to class com.vtiger.apps.asterisk.agi.actions.IncomingCall
2016-04-07 16:49:51 [Asterisk-Java DaemonPool-1-thread-1] ERROR org.asteriskjava.fastagi.internal.FastAgiConnectionHandler - Unexpected Exception while handling request
java.lang.NullPointerException
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at org.asteriskjava.fastagi.AbstractMappingStrategy.createAgiScriptInstance(AbstractMappingStrategy.java:117)
at org.asteriskjava.fastagi.ClassNameMappingStrategy.determineScript(ClassNameMappingStrategy.java:96)
at org.asteriskjava.fastagi.CompositeMappingStrategy.determineScript(CompositeMappingStrategy.java:114)
at org.asteriskjava.fastagi.internal.AgiConnectionHandler.run(AgiConnectionHandler.java:101)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)

-----------From: nohup.webapp.20160407.out------------------------------------------------

2016-04-07 16:49:33 [main] INFO org.eclipse.jetty.server.Server - jetty-8.1.14.v20131031
2016-04-07 16:49:33 [main] INFO org.eclipse.jetty.webapp.StandardDescriptorProcessor - NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet
2016-04-07 16:49:33 [main] INFO org.eclipse.jetty.server.AbstractConnector - Started [email protected]:8383
2016-04-07 16:49:47 [qtp1750458075-16] INFO a - Outbound Call
2016-04-07 16:49:47 [qtp1750458075-16] INFO a - Asterisk Login Successfull
2016-04-07 16:49:47 [qtp1750458075-16] INFO a - Successfully Authenticated Vtiger Secret Key
2016-04-07 16:49:47 [qtp1750458075-16] INFO org.asteriskjava.manager.internal.ManagerConnectionImpl - Connecting to 45...:5038
2016-04-07 16:49:47 [Asterisk-Java ManagerConnection-0-Reader-0] INFO org.asteriskjava.manager.internal.ManagerConnectionImpl - Connected via Asterisk Call Manager/1.3
2016-04-07 16:49:47 [Asterisk-Java ManagerConnection-0-Reader-0] WARN org.asteriskjava.manager.internal.ManagerConnectionImpl - Unsupported protocol version 'Asterisk Call Manager/1.3'. Use at your own risk.
2016-04-07 16:49:47 [Asterisk-Java ManagerConnection-0-Reader-0] INFO org.asteriskjava.manager.internal.EventBuilderImpl - No event class registered for event type 'fullybooted', attributes: {status=Fully Booted, event=FullyBooted, privilege=system,all}. Please report at http://jira.reucon.org/browse/AJ
2016-04-07 16:49:47 [qtp1750458075-16] INFO org.asteriskjava.manager.internal.ManagerConnectionImpl - Successfully logged in
2016-04-07 16:49:49 [qtp1750458075-16] INFO org.asteriskjava.manager.internal.ManagerConnectionImpl - Determined Asterisk version: Asterisk 1.6
2016-04-07 16:49:49 [qtp1750458075-16] INFO a - Sending call originate request to asterisk
2016-04-07 16:49:51 [qtp1750458075-16] INFO a - Context:vtiger
2016-04-07 16:49:51 [qtp1750458075-16] INFO a - From: 14 -> To: 317
******
2016-04-07 16:49:51 [qtp1750458075-16] INFO a - Outgoing Call Response: Success
2016-04-07 16:49:51 [qtp1750458075-16] INFO a - Asterisk Response: Originate successfully queued
2016-04-07 16:49:51 [Asterisk-Java ManagerConnection-0-Reader-0] WARN org.asteriskjava.manager.internal.EventBuilderImpl - Unable to set property 'connectedlinenum' to '3174145734' on org.asteriskjava.manager.event.NewStateEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
2016-04-07 16:49:51 [Asterisk-Java ManagerConnection-0-Reader-0] WARN org.asteriskjava.manager.internal.EventBuilderImpl - Unable to set property 'connectedlinenum' to '3174145734' on org.asteriskjava.manager.event.NewStateEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
2016-04-07 16:49:51 [Asterisk-Java ManagerConnection-0-Reader-0] INFO org.asteriskjava.manager.internal.EventBuilderImpl - No event class registered for event type 'softhanguprequest', attributes: {uniqueid=1460062189.0, cause=16, event=SoftHangupRequest, privilege=call,all, channel=SIP/14-00000000}. Please report at http://jira.reucon.org/browse/AJ
2016-04-07 16:49:51 [Asterisk-Java ManagerConnection-0-Reader-0] WARN org.asteriskjava.manager.internal.EventBuilderImpl - Unable to set property 'connectedlinename' to '' on org.asteriskjava.manager.event.HangupEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
2016-04-07 16:49:51 [Asterisk-Java ManagerConnection-0-Reader-0] WARN org.asteriskjava.manager.internal.EventBuilderImpl - Unable to set property 'connectedlinenum' to '317*******' on org.asteriskjava.manager.event.HangupEvent: no setter. Please report at http://jira.reucon.org/browse/AJ

No event class registered for event type 'bridgemerge'

Asterisk 13.7.2 asterisk-java master

2016-03-04T08:52:18.074+0200|Info: INFO Asterisk-Java ManagerConnection-0-Reader-0 - No event class registered for event type 'bridgemerge', attributes: {frombridgenumchannels=1, tobridgenumchannels=1, frombridgename=, frombridgeuniqueid=9a5d5623-7548-43e1-8314-658925a40574, frombridgecreator=, tobridgename=, frombridgetechnology=simple_bridge, privilege=call,all, event=BridgeMerge, tobridgeuniqueid=3f6c4074-5506-4912-a38c-77f31b200984, tobridgetechnology=simple_bridge, frombridgetype=basic, systemname=DEV-Asterisk13_1, tobridgetype=basic, tobridgecreator=}. Please report at https://github.com/asterisk-java/asterisk-java/issues

The application delimiter is now the comma, not the pipe. Did you forget to convert your dialplan?

After passing some variables to a OriginateAction Asterisk start to complaint.

forums says that it is an old change (from somewhere between 1.4 and 1.6)

http://forums.asterisk.org/viewtopic.php?f=1&t=88100

so don't know where to look.

Variables are passed with pipes anyway? This test seems to show it does.

https://github.com/asterisk-java/asterisk-java/blob/master/src/test/java/org/asteriskjava/manager/internal/ActionBuilderImplTest.java#L142

Could be a message composed with variables which fools asterisk adding undesired pipes?

DialBeginEvent Unable to set property 'accountcode'

Asterisk 13.7.2
protocol version 'Asterisk Call Manager/2.8.0'
asterisk-java branch: master 2016.04.11

[warn] o.a.m.i.EventBuilderImpl - Unable to set property 'accountcode' to '103'
on org.asteriskjava.manager.event.DialBeginEvent: no setter.

queuememberpause event

Asterisk 13.7.2, asterisk-java master

2016-02-24T17:04:56.839+0200|Info: INFO Asterisk-Java ManagerConnection-0-Reader-0 - No event class registered for event type 'queuememberpause', attributes: {paused=0, ringinuse=0, stateinterface=SIP/adrian.videanu, membername=adrian.videanu, status=1, penalty=1000, privilege=agent,all, membership=realtime, interface=SIP/adrian.videanu, callstaken=0, event=QueueMemberPause, systemname=DEV-Asterisk13_1, lastcall=0, queue=testIT}. Please report at https://github.com/asterisk-java/asterisk-java/issues

WARNING: Unable to set property 'eventlist' to 'Complete' on

WARNING: Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
May 05, 2016 7:49:40 PM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'listitems' to '0' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
May 05, 2016 7:49:40 PM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.AgentsCompleteEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
May 05, 2016 7:49:40 PM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'listitems' to '0' on org.asteriskjava.manager.event.AgentsCompleteEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
May 05, 2016 7:49:40 PM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
May 05, 2016 7:49:40 PM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'listitems' to '1' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter. Please report at http://jira.reucon.org/browse/AJ

On socket error managerconnection state is still connected

Hello,
the attached exception occurred on a production system.
It seems that the state of the Manager Connection keeps CONNECTED even if there is an connection exception.
When i looked throught the code it seems for me that the manager connection doesn't change the state due to an network communication error

2016-09-12 11:44:56,871 WARN  [Asterisk-Java Ping-0]  de.will.obelisk.asterisk.AsteriskManager - Exception on sending Ping to DefaultManagerConnection[hostname='172.24.244.164',port=5038]
java.net.SocketException: Datenübergabe unterbrochen (broken pipe)
    at java.net.SocketOutputStream.socketWrite0(Native Method)
    at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
    at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
    at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)
    at sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:282)
    at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:125)
    at java.io.OutputStreamWriter.write(OutputStreamWriter.java:207)
    at java.io.BufferedWriter.flushBuffer(BufferedWriter.java:129)
    at java.io.BufferedWriter.write(BufferedWriter.java:230)
    at java.io.Writer.write(Writer.java:157)
    at org.asteriskjava.util.internal.SocketConnectionFacadeImpl.write(SocketConnectionFacadeImpl.java:214)
    at org.asteriskjava.manager.internal.ManagerWriterImpl.sendAction(ManagerWriterImpl.java:76)
    at org.asteriskjava.manager.internal.ManagerConnectionImpl.sendAction(ManagerConnectionImpl.java:960)
    at org.asteriskjava.manager.internal.ManagerConnectionImpl.sendAction(ManagerConnectionImpl.java:876)
    at org.asteriskjava.manager.DefaultManagerConnection.sendAction(DefaultManagerConnection.java:330)
    at de.will.obelisk.asterisk.AsteriskManager$1.ping(AsteriskManager.java:52)
    at org.asteriskjava.manager.PingThread.run(PingThread.java:178)

No timeout or options in dial()

Hello,

I'm running the head version of asterisk-java with asterisk 13.7.1.

In my AGI if I use:
dial(“SIP/2”, 20, “m”)

I get in the Java STDOUT: EXEC "dial" "SIP/2" "30" "m"
But in the Asterisk console: [2016-04-15 18:28:55] VERBOSE[9941][C-0000003e] res_agi.c: AGI Script Executing Application: (dial) Options: (SIP/2)

And if in my AGI I do:
channel.exec("DIAL", "SIP/2,30,m");

In the Asterisk console I get: [2016-04-15 18:32:54] VERBOSE[10298][C-0000003f] res_agi.c: AGI Script Executing Application: (DIAL) Options: (SIP/2,30,m)

It seems the options (timeout and others) are being lost somewhere.

Asterisk-java in @Singleton EJB

Hi, I'm using asterisk-java version 1.1 beta in a enterprise environment (glassfish 4.0).
I've a singleton bean managing connections and events. It works fine but sometimes it seems that something "go mad" and then it starts rejecting executions:

java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask@7b485252 rejected from java.util.concurrent.ScheduledThreadPoolExecutor@6c53f5a7[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2047)
at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:823)
at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(ScheduledThreadPoolExecutor.java:326)
at java.util.concurrent.ScheduledThreadPoolExecutor.schedule(ScheduledThreadPoolExecutor.java:533)
at org.asteriskjava.live.internal.ChannelManager.addNewChannel(ChannelManager.java:234)
at org.asteriskjava.live.internal.ChannelManager.handleNewChannelEvent(ChannelManager.java:485)
at org.asteriskjava.live.internal.AsteriskServerImpl.onManagerEvent(AsteriskServerImpl.java:1015)
at org.asteriskjava.manager.ManagerEventListenerProxy$1.run(ManagerEventListenerProxy.java:59)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)]]

It is safe to run asterisk-java inside an EJB container?

Authentication failed on Windows machine

I am writing a small application to monitor events and I am implementing ManagerEventListener interface.

This small program works fine on Mac. But when I run the same on Windows machine. It throws org.asteriskjava.manager.AuthenticationFailedException: Authentication failed

Your help will be highly appreciated to solve this issue. I have spent whole weekend struggling on this already.

Here is the code snippet from my small application:

public class PhoneNumberResolver implements ManagerEventListener {
private ManagerConnection managerConnection;

public void PhoneNumberResolver()  {
        ManagerConnectionFactory factory = new ManagerConnectionFactory(
                hostAddress, port, username, password);
        this.managerConnection = factory.createManagerConnection();
}

public void run() throws IOException, AuthenticationFailedException,
            TimeoutException, InterruptedException, IllegalStateException {

        managerConnection.addEventListener(this);
        managerConnection.login();

        while (true) ;
        // Thread.sleep(60000);
        // managerConnection.logoff();
    }

public void onManagerEvent(ManagerEvent event) {
logger.info("Event :" + event);
}
}

Here are the error logs:

2016-09-18 21:48:44.202 INFO 10300 --- [ main] o.a.m.internal.ManagerConnectionImpl : Connecting to 54.217.225.96:35332
2016-09-18 21:48:44.374 INFO 10300 --- [tion-0-Reader-0] o.a.m.internal.ManagerConnectionImpl : Connected via Asterisk Call Manager/1.3
2016-09-18 21:48:45.473 INFO 10300 --- [tion-0-Reader-0] o.a.manager.internal.ManagerReaderImpl : Terminating reader thread: No more lines available: null
2016-09-18 21:48:45.478 INFO 10300 --- [ main] o.a.m.internal.ManagerConnectionImpl : Closing socket
.
2016-09-18 21:48:45.493 ERROR 10300 --- [ main] com.cds.ami.service.PhoneNumberResolver : Authentication failed

org.asteriskjava.manager.AuthenticationFailedException: Authentication failed
at org.asteriskjava.manager.internal.ManagerConnectionImpl.doLogin(ManagerConnectionImpl.java:639) ~[asterisk-java-1.1.0-beta.jar!/:na]
at org.asteriskjava.manager.internal.ManagerConnectionImpl.login(ManagerConnectionImpl.java:499) ~[asterisk-java-1.1.0-beta.jar!/:na]
at org.asteriskjava.manager.internal.ManagerConnectionImpl.login(ManagerConnectionImpl.java:484) ~[asterisk-java-1.1.0-beta.jar!/:na]
at org.asteriskjava.manager.DefaultManagerConnection.login(DefaultManagerConnection.java:294) ~[asterisk-java-1.1.0-beta.jar!/:na]
at com.cds.ami.service.PhoneNumberResolver.run(PhoneNumberResolver.java:63) ~[classes!/:na]
at com.cds.ami.service.PhoneNumberResolver.start(PhoneNumberResolver.java:105) ~[classes!/:na]
at com.cds.ami.AsteriskManagerInterfaceApplication.run(AsteriskManagerInterfaceApplication.java:29) [classes!/:na]
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:798) [spring-boot-1.4.0.RELEASE.jar!/:1.4.0.RELEASE]
at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:782) [spring-boot-1.4.0.RELEASE.jar!/:1.4.0.RELEASE]
at org.springframework.boot.SpringApplication.afterRefresh(SpringApplication.java:769) [spring-boot-1.4.0.RELEASE.jar!/:1.4.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) [spring-boot-1.4.0.RELEASE.jar!/:1.4.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185) [spring-boot-1.4.0.RELEASE.jar!/:1.4.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174) [spring-boot-1.4.0.RELEASE.jar!/:1.4.0.RELEASE]
at com.cds.ami.AsteriskManagerInterfaceApplication.main(AsteriskManagerInterfaceApplication.java:39) [classes!/:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_45]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_45]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_45]
at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_45]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [cds-sip-ami-0.0.1.jar:na]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [cds-sip-ami-0.0.1.jar:na]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) [cds-sip-ami-0.0.1.jar:na]
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:58) [cds-sip-ami-0.0.1.jar:na]

Unable to set property 'connectedlinename'

[2016-07-08 12:35:12,949] WARN org.asteriskjava.manager.internal.EventBuilderImpl Unable to set property 'connectedlinename' to '' on org.asteriskjava.manager.event.ParkedCallEvent: no setter.

channel.getVariable after blind transfer

channel.getVariable() after blind transfer returns the wrong value if there was channel.getVariable() call after executing Dial.

This is kinda hard to explain in english so I made a test:

package com.company;

import org.asteriskjava.fastagi.*;
import org.asteriskjava.live.AsteriskServer;
import org.asteriskjava.live.DefaultAsteriskServer;
import org.asteriskjava.manager.DefaultManagerConnection;
import org.asteriskjava.manager.ManagerConnection;

import java.util.logging.Logger;

public class Main {
    public static void main(String[] args) {
        ManagerConnection connection = new DefaultManagerConnection("asterisk.host", "test", "password");
        DefaultAsteriskServer defaultAsteriskServer = new DefaultAsteriskServer(connection);
        defaultAsteriskServer.initialize();
        AsyncAgiServer agiServer = new AsyncAgiServer(new AgiScript() {
            public void service(AgiRequest request, AgiChannel channel) throws AgiException {
                System.out.println("TESTVARIABLE = {" + channel.getVariable("TESTVARIABLE") + "}");

                System.out.println("AgiRequest: {" + request + "Channel: {" + channel + "}");
                channel.exec("Dial", "SIP/phone,,tT");

                System.out.println("DIALSTATUS = {"+ channel.getVariable("DIALSTATUS")+"}");
            }
        });
        connection.addEventListener(agiServer);
        while(true) {
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}

Test output:

# before dial
TESTVARIABLE = {null} // okay
# do blind transfer here
TESTVARIABLE = {ANSWER} 
# we got DIALSTATUS value instead of null

Relevant asterisk events go like this:
<- Action AGI(Dial/....)
-> AgiExecStart
-> DialBegin
-> DialEnd
-> BlindTransfer
-> AgiExecEnd
-> AsyncAgiExec
-> AsyncAgiEnd // this removes old AsyncConnectionHandler from the map in AsyncAsteriskServer

-> AsyncAgiStart // starts new AsyncConnectionHandler for the same channel
<- Action AGI(GET VARIABLE "DIALSTATUS")
-> AgiExecStart
-> AgiExecEnd
-> AsyncAgiExec(result: ANSWER) gets routed to the new handler and put into BlockingQueue

<- Action AGI(GET VARIABLE "TESTVARIABLE")
-> AgiExecStart
-> AgiExecEnd
-> AsyncAgiExec(result: NULL)

Channel then reads ANSWER from the BlockingQueue.

Caused by: java.lang.NumberFormatException: For input string: "0.0000"

Hello,

I'm using vtiger Asterisk connector and getting number formating problem.

Please help!

Thanks

java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.asteriskjava.manager.internal.AbstractBuilder.setAttributes(AbstractBuilder.java:122)
at org.asteriskjava.manager.internal.EventBuilderImpl.buildEvent(EventBuilderImpl.java:282)
at org.asteriskjava.manager.internal.ManagerReaderImpl.buildEvent(ManagerReaderImpl.java:341)
at org.asteriskjava.manager.internal.ManagerReaderImpl.run(ManagerReaderImpl.java:217)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NumberFormatException: For input string: "0.0000"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Long.parseLong(Long.java:589)
at java.lang.Long.parseLong(Long.java:631)
at org.asteriskjava.manager.event.AbstractRtcpEvent.secStringToLong(AbstractRtcpEvent.java:101)
at org.asteriskjava.manager.event.RtcpReceivedEvent.setRtt(RtcpReceivedEvent.java:202)
... 9 more

org.asteriskjava.manager.event.QueueMemberRemovedEvent

Unable to set property 'paused' to '0'
Unable to set property 'penalty' to '0'
Unable to set property 'stateinterface' to 'SIP
Unable to set property 'membership' to 'dynamic'
Unable to set property 'interface' to 'SIP/103
Unable to set property 'callstaken' to '0'
Unable to set property 'ringinuse' to '1'
Unable to set property 'lastcall' to '0'
Unable to set property 'status' to '1'

Unable to set property StatusCompleteEvent

Hello,

We are using:

  • Asterisk 13.5.0
  • Asterisk Call Manager/2.8.0 (1)
  • Asterisk java 2.0.0.CI-SNAPSHOT

And while the connetion is being stablished this warn is logged:
WARN Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter...

Please could you tell us what it means?

(1) We know that this version is not already supported but the new features don't affect to our app.

RtcpReceivedEvent Rtt wrong type

Hi, The correct type for Rtt property must be a Double instead of Long, because some returned values from event are like '0.0368'

Thanks

sorry for my english.

Wrong Asterisk version detected

Hi,

When I'm connecting to Asterisk 13 with asterisk-java 1.0.0-final and 1.1.0-beta, I get the message "Determined Asterisk version: Asterisk 1.6" in the log. Note that version 1.0.0-RC1 correclty prints "Determined Asterisk version: Asterisk 13".

Thanks.

Issues implementing Phonebridge that uses Asterisk-Java

Hi guys!

Please let me know if this is not the correct place to ask for help with this!

I am trying to get an application called Zoho Phonebridge working. Currently, making outgoing calls from the Zoho CRM are working just fine. However, one of the features of this phone bridge is a popup web browser notification when an incoming call comes in that has the same inbound CID as a 'record' in the CRM.

I am getting these error messages (I have replaced phone numbers with'xxxxxxxxx':

`SEVERE: Unable to set property 'rtt' to '0.1570' on org.asteriskjava.manager.event.RtcpReceivedEvent
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.asteriskjava.manager.internal.AbstractBuilder.setAttributes(AbstractBuilder.java:122)
at org.asteriskjava.manager.internal.EventBuilderImpl.buildEvent(EventBuilderImpl.java:282)
at org.asteriskjava.manager.internal.ManagerReaderImpl.buildEvent(ManagerReaderImpl.java:341)
at org.asteriskjava.manager.internal.ManagerReaderImpl.run(ManagerReaderImpl.java:217)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NumberFormatException: For input string: "0.1570"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Long.parseLong(Long.java:589)
at java.lang.Long.parseLong(Long.java:631)
at org.asteriskjava.manager.event.AbstractRtcpEvent.secStringToLong(AbstractRtcpEvent.java:101)
at org.asteriskjava.manager.event.RtcpReceivedEvent.setRtt(RtcpReceivedEvent.java:202)
... 9 more

Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'sentoctets' to '2390080' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0iajitter' to '0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'to' to '[::1]:0' on org.asteriskjava.manager.event.RtcpReceivedEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'linkedid' to '1459787394.5661' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0lsr' to '0' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'calleridname' to 'CH:FRESNO CA' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'pt' to '200(SR)' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'channel' to 'SIP/cbeyond-in-0000112b' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'language' to 'en' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0sourcessrc' to '0x76f10def' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'exten' to 's' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0dlsr' to '0.0000' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'calleridnum' to 'xxxxxxxxxx' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'context' to 'macro-dial' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'from' to '[::1]:0' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'connectedlinenum' to '304' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'uniqueid' to '1459787394.5661' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'channelstatedesc' to 'Up' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'reportcount' to '1' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0cumulativelost' to '0' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0sequencenumbercycles' to '1' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'ssrc' to '0x1d8bebbb' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'connectedlinename' to 'Joe' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'priority' to '17' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0highestsequence' to '16009' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'channelstate' to '6' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0fractionlost' to '0' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ
Apr 04, 2016 10:36:11 AM org.asteriskjava.manager.internal.AbstractBuilder setAttributes
WARNING: Unable to set property 'report0iajitter' to '1' on org.asteriskjava.manager.event.RtcpSentEvent: no setter. Please report at http://jira.reucon.org/browse/AJ`

sip-t.38maxdtgrm

Hi,
I have an asterisk 13.7.2 installed with asterisk-java master branch and I get this error :

2016-02-24T17:04:56.783+0200|Info: ERROR Asterisk-Java ManagerConnection-0-Reader-0 - Unable to convert value '4294967295' of property 'sip-t.38maxdtgrm' on org.asteriskjava.manager.response.SipShowPeerResponse to required type class java.lang.Integer

I think we have to change sipT38MaxDtgrm; from Integer to Long.

Unable to set property 'class' to 'default'

[2016-07-08 12:35:12,939] WARN org.asteriskjava.manager.internal.EventBuilderImpl Unable to set property 'class' to 'default' on org.asteriskjava.manager.event.MusicOnHoldEvent: no setter.

Unable to set property 'cause' to '1'

asterisk-java 1.1.0
asterisk 11.13

Log:
WARN EventBuilderImpl:110 - Unable to set property 'cause' to '1' on org.asteriskjava.manager.event.HangupRequestEvent: no setter.

Missing Example for Dial

I have connection to Manager API on my local Asterisk service and I have registered SIP users in sip.conf and numbers for this users in extensions.conf and I want to make a call using asterisk-java lib. SIP user is logged in Zoiper. But I cant find example for this. Can I make a SIP call with this library? If yes it will be useful to add this code in READMI.md examples.

WARNING: Unable to set property '' to 'AgentConnectEvent'

  • Unable to set property 'destexten' to '600' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destaccountcode' to '441142993721' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destchannelstatedesc' to 'Up' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'channelstate' to '4' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destuniqueid' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'calleridname' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destconnectedlinename' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destcalleridname' to '202' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'priority' to '4' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destcalleridnum' to '202' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'exten' to '600' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'accountcode' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'connectedlinenum' to '202' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'calleridnum' to '07800656909' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destpriority' to '1' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destcontext' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'channelstatedesc' to 'Ring' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destchannel' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'connectedlinename' to '202' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destchannelstate' to '6' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'destconnectedlinenum' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'interface' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.
  • Unable to set property 'context' to '' on org.asteriskjava.manager.event.AgentConnectEvent: no setter.

Dataobject question

Hello,

Would you be open to using something like Project Lombok in the dataobjects to cut down on the getters and setters? For example #67 is hundreds of lines of boiler plate code. Project lombok could cut that down to under 100 lines.. Just thought Id ask before I did any work on it..

[error] o.a.m.i.EventBuilderImpl - Unable to convert value penalty and status

[error] o.a.m.i.EventBuilderImpl - Unable to convert value: Called the construct
or of int with value '0' for the attribute 'penalty'
of event type org.asteriskjava.manager.event.QueueMemberRemovedEvent with resul
ting error: int.(java.lang.String)
java.lang.NoSuchMethodException: int.(java.lang.String)

fix error:
public void setStatus(Integer status)
public void setPenalty(Integer penalty)

Missing response to QueuePause event

I'm using asterisk java 1.1.0 with asterisk 11.13
Sometimes when I send a QueuePauseAction I receive a TimeoutException from the sendAction method of ManagerConnection.
Looking at the network traffic between asterisk and my server I see that the response arrives almost immediatly, well before the defined timeout period.
As it does not happen all the time I'm suspecting it could be a race condition in AsteriskJava.
I assume the ManagerConnection object is thread safe as I use it as a singleton injected by spring. I create it using the constructor of DefaultManagerConnection.

missing setters/getters

Hi All,
I have asterisk 13.7.2 with asterisk-java master.

2016-03-02T09:42:19.762+0200|Info: INFO admin-listener(4) - Determined Asterisk version: Asterisk 13
2016-03-02T09:42:19.764+0200|Info: WARN Asterisk-Java ManagerConnection-1-Reader-0 - Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter. Please report at https://github.com/asterisk-java/asterisk-java/issues
2016-03-02T09:42:19.768+0200|Info: WARN Asterisk-Java ManagerConnection-1-Reader-0 - Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.AgentsCompleteEvent: no setter. Please report at https://github.com/asterisk-java/asterisk-java/issues
2016-03-02T09:42:19.768+0200|Info: WARN Asterisk-Java ManagerConnection-1-Reader-0 - Unable to set property 'listitems' to '0' on org.asteriskjava.manager.event.AgentsCompleteEvent: no setter. Please report at https://github.com/asterisk-java/asterisk-java/issues
2016-03-02T09:42:19.770+0200|Info: WARN Asterisk-Java ManagerConnection-1-Reader-0 - Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter. Please report at https://github.com/asterisk-java/asterisk-java/issues
2016-03-02T09:42:19.770+0200|Info: WARN Asterisk-Java ManagerConnection-1-Reader-0 - Unable to set property 'listitems' to '0' on org.asteriskjava.manager.event.QueueStatusCompleteEvent: no setter. Please report at https://github.com/asterisk-java/asterisk-java/issues

I guess these properties should be added to ResponseEvent as there are multiple classes that inherits it and needs these properties. Should I add them ?

ModuleCheckResponse can lead to conversion exceptions

It is not guaranteed that the module version is in integer format.

For example when you have installed the silk module from digium it will leads to error because the version number is not displayable in integer.
We could have 2 solutions for this, breaking the abi in newer version and switch the version type to string or make a new getter for a string version, changing the setter to string and fix the old getter to avoid exceptions and return a save value

java.lang.NumberFormatException: For input string: "0.0044"

Bug in version 2.0.0-CI.SNAPSHOT (from git)

Asterisk 13.1.0 built by root @ sip on a x86_64 running Linux

ERROR 2015-05-05 13:35:47,488 [Asterisk-Java ManagerConnection-0-Reader-0] (Slf4JLogger.java:134) - Unable to set property 'rtt' to '0.0044' on org.asteriskjava.manager.event.RtcpReceivedEvent
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.asteriskjava.manager.internal.AbstractBuilder.setAttributes(AbstractBuilder.java:136)
    at org.asteriskjava.manager.internal.EventBuilderImpl.buildEvent(EventBuilderImpl.java:411)
    at org.asteriskjava.manager.internal.ManagerReaderImpl.buildEvent(ManagerReaderImpl.java:348)
    at org.asteriskjava.manager.internal.ManagerReaderImpl.run(ManagerReaderImpl.java:224)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NumberFormatException: For input string: "0.0044"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Long.parseLong(Long.java:441)
    at java.lang.Long.parseLong(Long.java:483)
    at org.asteriskjava.manager.event.AbstractRtcpEvent.secStringToLong(AbstractRtcpEvent.java:101)
    at org.asteriskjava.manager.event.RtcpReceivedEvent.setRtt(RtcpReceivedEvent.java:202)
    ... 9 more

AsteriskLive ChannelManager does not record any channels

It seems that the channel manager are not initialized correctly in current git, so any query to asterisk server getChannels leads to an empty list.

In commit 0ab2997 the initializing in intializeIfNeeded is removed.

When i reImplement this code section, the channel manager works nearly as expected, channels where populated in ChannelManager but not linkedChannels

missing setters and getters to .StatusCompleteEvent class

Asterisk 13.7.2 asterisk-java master

2016-02-24T17:02:50.756+0200|Info: WARN Asterisk-Java ManagerConnection-1-Reader-0 - Unable to set property 'eventlist' to 'Complete' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter. Please report at https://github.com/asterisk-java/asterisk-java/issues
2016-02-24T17:02:50.756+0200|Info: WARN Asterisk-Java ManagerConnection-1-Reader-0 - Unable to set property 'listitems' to '0' on org.asteriskjava.manager.event.StatusCompleteEvent: no setter. Please report at https://github.com/asterisk-java/asterisk-java/issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.