public interface AgiChannel
| Modifier and Type | Method and Description |
|---|---|
void |
answer()
Answers the channel.
|
void |
bridge(String channelName,
String options) |
void |
confbridge(String room,
String profile) |
void |
continueAt(String context,
String extension,
String priority)
Defines the point in the dialplan where the call will continue when the
AGI script returns.
|
void |
controlStreamFile(String file)
Plays the given file allowing the user to control the streaming by using
"#" for forward and "*" for rewind.
|
char |
controlStreamFile(String file,
String escapeDigits)
Plays the given file allowing the user to control the streaming by using
"#" for forward and "*" for rewind.
|
char |
controlStreamFile(String file,
String escapeDigits,
int offset)
Plays the given file allowing the user to control the streaming by using
"#" for forward and "*" for rewind.
|
char |
controlStreamFile(String file,
String escapeDigits,
int offset,
String forwardDigit,
String rewindDigit,
String pauseDigit)
Plays the given file allowing the user to control the streaming by using
forwardDigit for forward, rewindDigit for rewind and pauseDigit for
pause.
|
void |
databaseDel(String family,
String key)
Deletes an entry in the Asterisk database for a given family and key.
|
void |
databaseDelTree(String family)
Deletes a whole family of entries in the Asterisk database.
|
void |
databaseDelTree(String family,
String keytree)
Deletes all entries of a given family in the Asterisk database that have
a key that starts with a given prefix.
|
String |
databaseGet(String family,
String key)
Retrieves an entry in the Asterisk database for a given family and key.
|
void |
databasePut(String family,
String key,
String value)
Adds or updates an entry in the Asterisk database for a given family,
key, and value.
|
void |
dial(String target,
int timeout,
String options) |
int |
exec(String application)
Executes the given command.
|
int |
exec(String application,
String... options)
Executes the given command.
|
int |
getChannelStatus()
Returns the status of the channel.
|
String |
getData(String file)
Plays the given file and waits for the user to enter DTMF digits until he
presses '#'.
|
String |
getData(String file,
long timeout)
Plays the given file and waits for the user to enter DTMF digits until he
presses '#' or the timeout occurs.
|
String |
getData(String file,
long timeout,
int maxDigits)
Plays the given file and waits for the user to enter DTMF digits until he
presses '#' or the timeout occurs or the maximum number of digits has
been entered.
|
String |
getFullVariable(String expr)
Evaluates a channel expression for the current channel.
|
String |
getFullVariable(String expr,
String channel)
Evaluates a channel expression for the given channel.To extract the
caller id of channel use
getFullVariable("${CALLERID(name)}", "SIP/john-0085d860");. |
AgiReply |
getLastReply()
Returns the reply received in response to the last command sent to
Asterisk.
|
String |
getName()
Returns the name of the channel.
|
char |
getOption(String file,
String escapeDigits)
Plays the given file, and waits for the user to press one of the given
digits.
|
char |
getOption(String file,
String escapeDigits,
long timeout)
Plays the given file, and waits for the user to press one of the given
digits.
|
String |
getUniqueId()
Returns the unqiue id of the channel.
|
String |
getVariable(String name)
Returns the value of the current channel or global variable.
|
void |
gosub(String context,
String extension,
String priority)
Calls a subroutine in the dialplan
This method is available since Asterisk 1.6. |
void |
gosub(String context,
String extension,
String priority,
String... arguments)
Calls a subroutine in the dialplan
|
void |
hangup()
Hangs the channel up.
|
void |
meetme(String room,
String options) |
void |
playMusicOnHold()
Plays music on hold from the default music on hold class.
|
void |
playMusicOnHold(String musicOnHoldClass)
Plays music on hold from the given music on hold class.
|
void |
queue(String queue) |
char |
recordFile(String file,
String format,
String escapeDigits,
int timeout)
Record to a file until a given dtmf digit in the sequence is received.
|
char |
recordFile(String file,
String format,
String escapeDigits,
int timeout,
int offset,
boolean beep,
int maxSilence)
Record to a file until a given dtmf digit in the sequence is received.
|
void |
sayAlpha(String text)
Says the given character string.
|
char |
sayAlpha(String text,
String escapeDigits)
Says the given character string, returning early if any of the given DTMF
number are received on the channel.
|
void |
sayDateTime(long time)
Says the given time.
|
char |
sayDateTime(long time,
String escapeDigits)
Says the given time and allows interruption by one of the given escape
digits.
|
char |
sayDateTime(long time,
String escapeDigits,
String format)
Says the given time in the given format and allows interruption by one of
the given escape digits.
|
char |
sayDateTime(long time,
String escapeDigits,
String format,
String timezone)
Says the given time in the given format and timezone and allows
interruption by one of the given escape digits.
|
void |
sayDigits(String digits)
Says the given digit string.
|
char |
sayDigits(String digits,
String escapeDigits)
Says the given number, returning early if any of the given DTMF number
are received on the channel.
|
void |
sayNumber(String number)
Says the given number.
|
char |
sayNumber(String number,
String escapeDigits)
Says the given number, returning early if any of the given DTMF number
are received on the channel.
|
void |
sayPhonetic(String text)
Says the given character string with phonetics.
|
char |
sayPhonetic(String text,
String escapeDigits)
Says the given character string with phonetics, returning early if any of
the given DTMF number are received on the channel.
|
void |
sayTime(long time)
Says the given time.
|
char |
sayTime(long time,
String escapeDigits)
Says the given time, returning early if any of the given DTMF number are
received on the channel.
|
AgiReply |
sendCommand(AgiCommand command)
Sends a command to asterisk and returns the corresponding reply.
|
void |
setAutoHangup(int time)
Cause the channel to automatically hangup at the given number of seconds
in the future.
|
void |
setCallerId(String callerId)
Sets the caller id on the current channel.
|
void |
setContext(String context)
Sets the context for continuation upon exiting the application.
|
void |
setExtension(String extension)
Sets the extension for continuation upon exiting the application.
|
void |
setPriority(String priority)
Sets the priority or label for continuation upon exiting the application.
|
void |
setVariable(String name,
String value)
Sets the value of the current channel or global variable to a new value.
|
void |
speechActivateGrammar(String label)
Activates the specified grammar.
|
void |
speechCreate()
Creates a speech object that uses the default speech engine.
|
void |
speechCreate(String engine)
Creates a speech object that uses the given speech engine.
|
void |
speechDeactivateGrammar(String label)
Deactivates the specified grammar.
|
void |
speechDestroy()
Destroys the current speech object.
|
void |
speechLoadGrammar(String label,
String path)
Loads the specified grammar.
|
SpeechRecognitionResult |
speechRecognize(String prompt,
int timeout)
Plays the given prompt while listening for speech and DTMF.
|
SpeechRecognitionResult |
speechRecognize(String prompt,
int timeout,
int offset)
Plays the given prompt while listening for speech and DTMF.
|
void |
speechSet(String name,
String value)
Sets the speech engine setting indicated by name to the given value.
|
void |
speechUnloadGrammar(String label)
Unloads the specified grammar.
|
void |
stopMusicOnHold()
Stops playing music on hold.
|
void |
streamFile(String file)
Plays the given file.
|
char |
streamFile(String file,
String escapeDigits)
Plays the given file and allows the user to escape by pressing one of the
given digit.
|
char |
streamFile(String file,
String escapeDigits,
int offset)
Plays the given file starting at the specified offset and allows the user
to escape by pressing one of the given digit.
|
void |
verbose(String message,
int level)
Sends a message to the Asterisk console via the verbose message system.
|
char |
waitForDigit(int timeout)
Waits up to 'timeout' milliseconds to receive a DTMF digit.
|
String getName()
String getUniqueId()
AgiReply getLastReply()
null if none has yet been received.AgiReply sendCommand(AgiCommand command) throws AgiException
getLastReply().command - the command to send.AgiException - if the command can't be sent to Asterisk (for
example because the channel has been hung up)void answer()
throws AgiException
AgiException - agi exceptionvoid hangup()
throws AgiException
AgiException - agi exceptionvoid setAutoHangup(int time)
throws AgiException
time - the number of seconds before this channel is automatically
hung up.
0 disables the autohangup feature.
AgiException - agi exceptionvoid setCallerId(String callerId) throws AgiException
callerId - the raw caller id to set, for example
"John Doe<1234>".AgiException - agi exceptionvoid playMusicOnHold()
throws AgiException
AgiException - agi exceptionvoid playMusicOnHold(String musicOnHoldClass) throws AgiException
musicOnHoldClass - the music on hold class to play music from as
configures in Asterisk's musiconhold.conf.AgiException - agi exceptionvoid stopMusicOnHold()
throws AgiException
AgiException - agi exceptionint getChannelStatus()
throws AgiException
Return values:
AgiException - agi exceptionString getData(String file) throws AgiException
file - the name of the file to playAgiException - agi exceptionString getData(String file, long timeout) throws AgiException
file - the name of the file to playtimeout - the timeout in milliseconds to wait for user input.
0 means standard timeout value, -1 means "ludicrous time" (essentially never times out).
AgiException - agi exceptionString getData(String file, long timeout, int maxDigits) throws AgiException
file - the name of the file to playtimeout - the timeout in milliseconds to wait for user input.
0 means standard timeout value, -1 means "ludicrous time" (essentially never times out).
maxDigits - the maximum number of digits the user is allowed to
enterAgiException - agi exceptionchar getOption(String file, String escapeDigits) throws AgiException
file - the name of the file to stream, must not include extension.escapeDigits - contains the digits that the user is expected to
press.AgiException - agi exceptionchar getOption(String file, String escapeDigits, long timeout) throws AgiException
file - the name of the file to stream, must not include extension.escapeDigits - contains the digits that the user is expected to
press.timeout - the timeout in milliseconds to wait if none of the defined
esacpe digits was presses while streaming.AgiException - agi exceptionvoid confbridge(String room, String profile) throws AgiException
AgiExceptionvoid meetme(String room, String options) throws AgiException
AgiExceptionint exec(String application) throws AgiException
application - the name of the application to execute, for example
"Dial".AgiException - agi exceptionint exec(String application, String... options) throws AgiException
application - the name of the application to execute, for example
"Dial".options - the parameters to pass to the application, for example
"SIP/123".AgiException - agi exceptionvoid setContext(String context) throws AgiException
context - the context for continuation upon exiting the application.AgiException - agi exceptionvoid setExtension(String extension) throws AgiException
extension - the extension for continuation upon exiting the
application.AgiException - agi exceptionvoid setPriority(String priority) throws AgiException
priority - the priority or label for continuation upon exiting the
application.AgiException - agi exceptionvoid streamFile(String file) throws AgiException
file - name of the file to play.AgiException - agi exceptionchar streamFile(String file, String escapeDigits) throws AgiException
file - name of the file to play.escapeDigits - a String containing the DTMF digits that allow the
user to escape.AgiException - agi exceptionchar streamFile(String file, String escapeDigits, int offset) throws AgiException
file - name of the file to play.escapeDigits - a String containing the DTMF digits that allow the
user to escape.offset - the offset samples to skip before streaming.AgiException - agi exceptionvoid sayDigits(String digits) throws AgiException
digits - the digit string to say.AgiException - agi exceptionchar sayDigits(String digits, String escapeDigits) throws AgiException
digits - the digit string to say.escapeDigits - a String containing the DTMF digits that allow the
user to escape.AgiException - agi exceptionvoid sayNumber(String number) throws AgiException
number - the number to say.AgiException - agi exceptionchar sayNumber(String number, String escapeDigits) throws AgiException
number - the number to say.escapeDigits - a String containing the DTMF digits that allow the
user to escape.AgiException - agi exceptionvoid sayPhonetic(String text) throws AgiException
text - the text to say.AgiException - agi exceptionchar sayPhonetic(String text, String escapeDigits) throws AgiException
text - the text to say.escapeDigits - a String containing the DTMF digits that allow the
user to escape.AgiException - agi exceptionvoid sayAlpha(String text) throws AgiException
text - the text to say.AgiException - agi exceptionchar sayAlpha(String text, String escapeDigits) throws AgiException
text - the text to say.escapeDigits - a String containing the DTMF digits that allow the
user to escape.AgiException - agi exceptionvoid sayTime(long time)
throws AgiException
time - the time to say in seconds since 00:00:00 on January 1, 1970.AgiException - agi exceptionchar sayTime(long time,
String escapeDigits)
throws AgiException
time - the time to say in seconds since 00:00:00 on January 1, 1970.escapeDigits - a String containing the DTMF digits that allow the
user to escape.AgiException - agi exceptionString getVariable(String name) throws AgiException
getVariable("CALLERID(name)"); getFullVariable(String)
in those cases.name - the name of the variable (or function call) to retrieve.null if not set.AgiException - agi exceptionvoid setVariable(String name, String value) throws AgiException
setVariable("CALLERID(name)", "John Doe");name - the name of the variable (or function call) to set.value - the new value to set.AgiException - agi exceptionchar waitForDigit(int timeout)
throws AgiException
timeout - timeout the milliseconds to wait for the channel to
receive a DTMF digit, -1 will wait forever.AgiException - agi exceptionString getFullVariable(String expr) throws AgiException
getFullVariable("${CALLERID(name)}");.
Available since Asterisk 1.2.
expr - the expression to evaluate.null if not
set.AgiException - agi exceptiongetVariable(String)String getFullVariable(String expr, String channel) throws AgiException
getFullVariable("${CALLERID(name)}", "SIP/john-0085d860");.
Available since Asterisk 1.2.
expr - the the expression to evaluate.channel - the name of the channel.null if not
set.AgiException - agi exceptionvoid sayDateTime(long time)
throws AgiException
Available since Asterisk 1.2.
time - the time to say in seconds elapsed since 00:00:00 on January
1, 1970, Coordinated Universal Time (UTC)AgiException - agi exceptionchar sayDateTime(long time,
String escapeDigits)
throws AgiException
Available since Asterisk 1.2.
time - the time to say in seconds elapsed since 00:00:00 on January
1, 1970, Coordinated Universal Time (UTC)escapeDigits - the digits that allow the user to interrupt this
command or null for none.AgiException - agi exceptionchar sayDateTime(long time,
String escapeDigits,
String format)
throws AgiException
Available since Asterisk 1.2.
time - the time to say in seconds elapsed since 00:00:00 on January
1, 1970, Coordinated Universal Time (UTC)escapeDigits - the digits that allow the user to interrupt this
command or null for none.format - the format the time should be said inAgiException - agi exceptionchar sayDateTime(long time,
String escapeDigits,
String format,
String timezone)
throws AgiException
Available since Asterisk 1.2.
time - the time to say in seconds elapsed since 00:00:00 on January
1, 1970, Coordinated Universal Time (UTC)escapeDigits - the digits that allow the user to interrupt this
command or null for none.format - the format the time should be said intimezone - the timezone to use when saying the time, for example
"UTC" or "Europe/Berlin".AgiException - agi exceptionString databaseGet(String family, String key) throws AgiException
family - the family of the entry to retrieve.key - the key of the entry to retrieve.null if
there is no such value.AgiException - agi exceptionvoid databasePut(String family, String key, String value) throws AgiException
family - the family of the entry to add or update.key - the key of the entry to add or update.value - the new value of the entry.AgiException - agi exceptionvoid databaseDel(String family, String key) throws AgiException
family - the family of the entry to delete.key - the key of the entry to delete.AgiException - agi exceptionvoid databaseDelTree(String family) throws AgiException
family - the family to delete.AgiException - agi exceptionvoid databaseDelTree(String family, String keytree) throws AgiException
family - the family of the entries to delete.keytree - the prefix of the keys of the entries to delete.AgiException - agi exceptionvoid verbose(String message, int level) throws AgiException
message - the message to send.level - the verbosity level to use. Must be in [1..4].AgiException - agi exceptionchar recordFile(String file, String format, String escapeDigits, int timeout) throws AgiException
file - the name of the file to stream, must not include extension.format - the format of the file to be recorded, for example "wav".escapeDigits - contains the digits that allow the user to end
recording.timeout - the maximum record time in milliseconds, or -1 for no
timeout.AgiException - agi exceptionchar recordFile(String file, String format, String escapeDigits, int timeout, int offset, boolean beep, int maxSilence) throws AgiException
file - the name of the file to stream, must not include extension.format - the format of the file to be recorded, for example "wav".escapeDigits - contains the digits that allow the user to end
recording.timeout - the maximum record time in milliseconds, or -1 for no
timeout.offset - the offset samples to skip.beep - true if a beep should be played before
recording.maxSilence - The amount of silence (in seconds) to allow before
returning despite the lack of dtmf digits or reaching timeout.AgiException - agi exceptionvoid controlStreamFile(String file) throws AgiException
file - the name of the file to stream, must not include extension.AgiException - agi exceptionchar controlStreamFile(String file, String escapeDigits) throws AgiException
file - the name of the file to stream, must not include extension.escapeDigits - contains the digits that allow the user to interrupt
this command.AgiException - agi exceptionchar controlStreamFile(String file, String escapeDigits, int offset) throws AgiException
file - the name of the file to stream, must not include extension.escapeDigits - contains the digits that allow the user to interrupt
this command. May be null if you don't want the
user to interrupt.offset - the offset samples to skip before streaming.AgiException - agi exceptionchar controlStreamFile(String file, String escapeDigits, int offset, String forwardDigit, String rewindDigit, String pauseDigit) throws AgiException
file - the name of the file to stream, must not include extension.escapeDigits - contains the digits that allow the user to interrupt
this command. May be null if you don't want the
user to interrupt.offset - the offset samples to skip before streaming, use 0 to start
at the beginning.forwardDigit - the digit for fast forward.rewindDigit - the digit for rewind.pauseDigit - the digit for pause and unpause.AgiException - agi exceptionvoid speechCreate()
throws AgiException
AgiSpeechException - if the speech object cannot be created.AgiException - agi exceptionvoid speechCreate(String engine) throws AgiException
engine - the name of the speech engine. For example "lumenvox".AgiException - agi exceptionvoid speechSet(String name, String value) throws AgiException
name - the name of the setting to set.value - the value to set.AgiException - agi exceptionvoid speechDestroy()
throws AgiException
AgiException - agi exceptionvoid speechLoadGrammar(String label, String path) throws AgiException
speechActivateGrammar(String) under the given name. Eplicitly
loading a grammer is only required if the grammer has not been defined in
the speech engine configuration, e.g. the [grammars] section
of lumenvox.conf.label - the name of the grammar, used for subsequent calls to
speechActivateGrammar(String),
speechDeactivateGrammar(String) and
speechUnloadGrammar(String).path - the path to the grammar to load.AgiException - agi exceptionvoid speechUnloadGrammar(String label) throws AgiException
label - the name of the grammar to unload.AgiException - agi exceptionvoid speechActivateGrammar(String label) throws AgiException
label - the name of the grammar to activate.AgiException - agi exceptionvoid speechDeactivateGrammar(String label) throws AgiException
label - the name to the grammar to deactivate.AgiException - agi exceptionSpeechRecognitionResult speechRecognize(String prompt, int timeout) throws AgiException
prompt - the name of the file to stream, must not include extension.timeout - the timeout in milliseconds to wait for user input.
0 means standard timeout value, -1 means "ludicrous time" (essentially never times out).
AgiException - agi exceptionSpeechRecognitionResult speechRecognize(String prompt, int timeout, int offset) throws AgiException, AgiSpeechException
prompt - the name of the file to stream, must not include extension.timeout - the timeout in milliseconds to wait for user input.
0 means standard timeout value, -1 means "ludicrous time" (essentially never times out).
offset - the offset samples to skip before streaming, use 0 to start
at the beginning.AgiException - agi exceptionAgiSpeechException - speech exceptionvoid continueAt(String context, String extension, String priority) throws AgiException
This is a shortcut for calling setContext(String),
setExtension(String) and setPriority(String) in series.
context - the context for continuation upon exiting the application.extension - the extension for continuation upon exiting the
application.priority - the priority or label for continuation upon exiting the
application.AgiException - agi exceptionvoid gosub(String context, String extension, String priority) throws AgiException
context - the context of the called subroutine.extension - the extension in the called context.priority - the priority of the called extension.AgiException - agi exceptionvoid gosub(String context, String extension, String priority, String... arguments) throws AgiException
This method is available since Asterisk 1.6.
context - the context of the called subroutine.extension - the extension in the called context.priority - the priority of the called extension.arguments - optional arguments to be passed to the subroutine. They
should be separated by comma. They will accessible in the form
of ${ARG1}, ${ARG2}, etc in the subroutine body.AgiException - agi exceptionvoid dial(String target, int timeout, String options) throws AgiException
AgiExceptionvoid bridge(String channelName, String options) throws AgiException
AgiExceptionvoid queue(String queue) throws AgiException
AgiExceptionCopyright © 2018. All rights reserved.