|
Asterisk-Java | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.asteriskjava.live.internal.AsteriskServerImpl
public class AsteriskServerImpl
Default implementation of the AsteriskServer interface.
| Constructor Summary | |
|---|---|
AsteriskServerImpl()
Creates a new instance. |
|
AsteriskServerImpl(ManagerConnection eventConnection)
Creates a new instance. |
|
| Method Summary | |
|---|---|
void |
addAsteriskServerListener(AsteriskServerListener listener)
|
AsteriskChannel |
getChannelById(java.lang.String id)
Returns a channel by its unique id. |
AsteriskChannel |
getChannelByName(java.lang.String name)
Returns a channel by its name. |
java.util.Collection<AsteriskChannel> |
getChannels()
Returns the active channels of the Asterisk server. |
java.lang.String |
getGlobalVariable(java.lang.String variable)
Returns the value of the given global variable. |
ManagerConnection |
getManagerConnection()
Returns the underlying ManagerConnection. |
MeetMeRoom |
getMeetMeRoom(java.lang.String name)
Returns the MeetMe room with the given number, if the room does not yet exist a new MeetMeRoom object is created. |
java.util.Collection<MeetMeRoom> |
getMeetMeRooms()
Returns the acitve MeetMe rooms on the Asterisk server. |
java.util.Collection<AsteriskQueue> |
getQueues()
Returns the queues served by the Asterisk server. |
java.lang.String |
getVersion()
Returns the exact version string of this Asterisk server. |
int[] |
getVersion(java.lang.String file)
Returns the CVS revision of a given source file of this Asterisk server. |
java.util.Collection<Voicemailbox> |
getVoicemailboxes()
Returns a collection of all voicemailboxes configured for this Asterisk server with the number of new and old messages they contain. |
void |
initialize()
|
void |
onManagerEvent(ManagerEvent event)
Handles all events received from the Asterisk server. |
AsteriskChannel |
originateToApplication(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout)
Generates an outgoing channel to an application. |
AsteriskChannel |
originateToApplication(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables)
Generates an outgoing channel to an application and sets an optional map of channel variables. |
void |
originateToApplicationAsync(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables,
OriginateCallback cb)
Asynchronously generates an outgoing channel to an application and sets an optional map of channel variables. |
void |
originateToApplicationAsync(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout,
OriginateCallback cb)
Asynchronously generates an outgoing channel to an application. |
AsteriskChannel |
originateToExtension(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout)
Generates an outgoing channel to a dialplan entry (extension, context, priority). |
AsteriskChannel |
originateToExtension(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables)
Generates an outgoing channel to a dialplan entry (extension, context, priority) and sets an optional map of channel variables. |
void |
originateToExtensionAsync(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables,
OriginateCallback cb)
Asynchronously generates an outgoing channel to a dialplan entry (extension, context, priority) and sets an optional map of channel variables. |
void |
originateToExtensionAsync(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout,
OriginateCallback cb)
Asynchronously generates an outgoing channel to a dialplan entry (extension, context, priority). |
void |
removeAsteriskServerListener(AsteriskServerListener listener)
|
void |
setGlobalVariable(java.lang.String variable,
java.lang.String value)
Sets the value of the given global variable. |
void |
setManagerConnection(ManagerConnection eventConnection)
|
void |
setSkipQueues(boolean skipQueues)
Determines if queue status is retrieved at startup. |
void |
shutdown()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public AsteriskServerImpl()
public AsteriskServerImpl(ManagerConnection eventConnection)
eventConnection - the ManagerConnection to use for receiving events
from Asterisk.| Method Detail |
|---|
public void setSkipQueues(boolean skipQueues)
true to circumvent the startup delay caused by the missing
QueueStatusComplete event.
Default is false.
skipQueues - true to skip queue initialization,
false to not skip.public void setManagerConnection(ManagerConnection eventConnection)
public ManagerConnection getManagerConnection()
AsteriskServer
getManagerConnection in interface AsteriskServer
public void initialize()
throws ManagerCommunicationException
ManagerCommunicationException
public AsteriskChannel originateToExtension(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout)
throws ManagerCommunicationException,
NoSuchChannelException
AsteriskServer
originateToExtension in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".context - context to connect toexten - extension to connect topriority - priority to connect totimeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
NoSuchChannelException - if the channel is not available on the
Asterisk server, for example because you used "SIP/1310" and
1310 is not a valid SIP user, the SIP channel module hasn't
been loaded or the SIP or IAX peer is not registered
currently.
public AsteriskChannel originateToExtension(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables)
throws ManagerCommunicationException,
NoSuchChannelException
AsteriskServer
originateToExtension in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".context - context to connect toexten - extension to connect topriority - priority to connect totimeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)callerId - callerId to use for the outgoing channel, may be
null.variables - channel variables to set, may be null.
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
NoSuchChannelException - if the channel is not available on the
Asterisk server, for example because you used "SIP/1310" and
1310 is not a valid SIP user, the SIP channel module hasn't
been loaded or the SIP or IAX peer is not registered
currently.
public AsteriskChannel originateToApplication(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout)
throws ManagerCommunicationException,
NoSuchChannelException
AsteriskServer
originateToApplication in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".application - application to connect to, for example "MeetMe"data - data to pass to the application, for example "1000|d", may be
null.timeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
NoSuchChannelException - if the channel is not available on the
Asterisk server, for example because you used "SIP/1310" and
1310 is not a valid SIP user, the SIP channel module hasn't
been loaded or the SIP or IAX peer is not registered
currently.
public AsteriskChannel originateToApplication(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables)
throws ManagerCommunicationException,
NoSuchChannelException
AsteriskServer
originateToApplication in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".application - application to connect to, for example "MeetMe"data - data to pass to the application, for example "1000|d", may be
null.timeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)callerId - callerId to use for the outgoing channel, may be
null.variables - channel variables to set, may be null.
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
NoSuchChannelException - if the channel is not available on the
Asterisk server, for example because you used "SIP/1310" and
1310 is not a valid SIP user, the SIP channel module hasn't
been loaded or the SIP or IAX peer is not registered
currently.
public void originateToExtensionAsync(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout,
OriginateCallback cb)
throws ManagerCommunicationException
AsteriskServer
originateToExtensionAsync in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".context - context to connect toexten - extension to connect topriority - priority to connect totimeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)cb - callback to inform about the result
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
public void originateToExtensionAsync(java.lang.String channel,
java.lang.String context,
java.lang.String exten,
int priority,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables,
OriginateCallback cb)
throws ManagerCommunicationException
AsteriskServer
originateToExtensionAsync in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".context - context to connect toexten - extension to connect topriority - priority to connect totimeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)callerId - callerId to use for the outgoing channel, may be
null.variables - channel variables to set, may be null.cb - callback to inform about the result
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
public void originateToApplicationAsync(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout,
OriginateCallback cb)
throws ManagerCommunicationException
AsteriskServer
originateToApplicationAsync in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".application - application to connect to, for example "MeetMe"data - data to pass to the application, for example "1000|d", may be
null.timeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)cb - callback to inform about the result
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
public void originateToApplicationAsync(java.lang.String channel,
java.lang.String application,
java.lang.String data,
long timeout,
CallerId callerId,
java.util.Map<java.lang.String,java.lang.String> variables,
OriginateCallback cb)
throws ManagerCommunicationException
AsteriskServer
originateToApplicationAsync in interface AsteriskServerchannel - channel name to call, for example "SIP/1310".application - application to connect to, for example "MeetMe"data - data to pass to the application, for example "1000|d", may be
null.timeout - how long to wait for the channel to be answered before its
considered to have failed (in ms)callerId - callerId to use for the outgoing channel, may be
null.variables - channel variables to set, may be null.cb - callback to inform about the result
ManagerCommunicationException - if the originate action cannot be
sent to Asterisk
public java.util.Collection<AsteriskChannel> getChannels()
throws ManagerCommunicationException
AsteriskServer
getChannels in interface AsteriskServerManagerCommunicationException - if there is a problem communication
with Asterisk
public AsteriskChannel getChannelByName(java.lang.String name)
throws ManagerCommunicationException
AsteriskServer
getChannelByName in interface AsteriskServername - name of the channel to return
null if there
is no such channel.
ManagerCommunicationException - if there is a problem communication
with Asterisk
public AsteriskChannel getChannelById(java.lang.String id)
throws ManagerCommunicationException
AsteriskServer
getChannelById in interface AsteriskServerid - the unique id of the channel to return
null if
there is no such channel.
ManagerCommunicationException - if there is a problem communication
with Asterisk
public java.util.Collection<MeetMeRoom> getMeetMeRooms()
throws ManagerCommunicationException
AsteriskServer
getMeetMeRooms in interface AsteriskServerManagerCommunicationException - if there is a problem communication
with Asterisk
public MeetMeRoom getMeetMeRoom(java.lang.String name)
throws ManagerCommunicationException
AsteriskServerMeetMeRoom object is created.
getMeetMeRoom in interface AsteriskServername - the number of the room to return
ManagerCommunicationException - if there is a problem communication
with Asterisk
public java.util.Collection<AsteriskQueue> getQueues()
throws ManagerCommunicationException
AsteriskServer
getQueues in interface AsteriskServerManagerCommunicationException - if there is a problem communication
with Asterisk
public java.lang.String getVersion()
throws ManagerCommunicationException
AsteriskServerThis typically looks like "Asterisk 1.2.9.1-BRIstuffed-0.3.0-PRE-1q built by root @ pbx0 on a i686 running Linux on 2006-06-20 20:21:30 UTC".
getVersion in interface AsteriskServerManagerCommunicationException - if the version cannot be retrieved
from Asterisk
public int[] getVersion(java.lang.String file)
throws ManagerCommunicationException
AsteriskServerFor example getVersion("app_meetme.c") may return {1, 102} for CVS revision "1.102".
Note that this feature is not available with Asterisk 1.0.x.
You can use this feature if you need to write applications that behave different depending on specific modules being available in a specific version or not.
getVersion in interface AsteriskServerfile - the file for which to get the version like "app_meetme.c"
null if that file
is not part of the Asterisk instance you are connected to (maybe
due to a module that provides it has not been loaded) or if you
are connected to an Astersion 1.0.x
ManagerCommunicationException - if the version cannot be retrieved
from Asterisk
public java.lang.String getGlobalVariable(java.lang.String variable)
throws ManagerCommunicationException
AsteriskServer
getGlobalVariable in interface AsteriskServervariable - the name of the global variable to return.
null if it is
not set.
ManagerCommunicationException - if the get variable action cannot
be sent to Asterisk.
public void setGlobalVariable(java.lang.String variable,
java.lang.String value)
throws ManagerCommunicationException
AsteriskServer
setGlobalVariable in interface AsteriskServervariable - the name of the global variable to set.value - the value of the global variable to set.
ManagerCommunicationException - if the set variable action cannot
be sent to Asterisk.
public java.util.Collection<Voicemailbox> getVoicemailboxes()
throws ManagerCommunicationException
AsteriskServer
getVoicemailboxes in interface AsteriskServerManagerCommunicationException - if the voicemailboxes can't be
retrieved.
public void addAsteriskServerListener(AsteriskServerListener listener)
throws ManagerCommunicationException
addAsteriskServerListener in interface AsteriskServerManagerCommunicationExceptionpublic void removeAsteriskServerListener(AsteriskServerListener listener)
removeAsteriskServerListener in interface AsteriskServerpublic void onManagerEvent(ManagerEvent event)
Events are queued until channels and queues are initialized and then delegated to the dispatchEvent method.
onManagerEvent in interface ManagerEventListenerevent - the event that has been receivedpublic void shutdown()
shutdown in interface AsteriskServer
|
Asterisk-Java | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||