FreenetIS
 All Classes Namespaces Functions Variables Pages
Public Member Functions | Public Attributes | List of all members
AsteriskManager Class Reference

Public Member Functions

 AsteriskManager ($config=NULL, $optconfig=array())
 Constructor.
 send_request ($action, $parameters=array())
 Send a request.
 wait_response ($allow_timeout=false)
 Wait for a response.
 connect ($server=NULL, $username=NULL, $secret=NULL)
 disconnect ()
 AbsoluteTimeout ($channel, $timeout)
 Set Absolute Timeout.
 ChangeMonitor ($channel, $file)
 Change monitoring filename of a channel.
 Command ($command, $actionid=NULL)
 Events ($eventmask)
 Enable/Disable sending of events to this manager.
 ExtensionState ($exten, $context, $actionid=NULL)
 Check Extension Status.
 GetVar ($channel, $variable, $actionid=NULL)
 Gets a Channel Variable.
 Hangup ($channel)
 Hangup Channel.
 IAXPeers ()
 List IAX Peers.
 ListCommands ($actionid=NULL)
 List available manager commands.
 Logoff ()
 Logoff Manager.
 MailboxCount ($mailbox, $actionid=NULL)
 Check Mailbox Message Count.
 MailboxStatus ($mailbox, $actionid=NULL)
 Check Mailbox.
 Monitor ($channel, $file=NULL, $format=NULL, $mix=NULL)
 Monitor a channel.
 Originate ($channel, $exten=NULL, $context=NULL, $priority=NULL, $application=NULL, $data=NULL, $timeout=NULL, $callerid=NULL, $variable=NULL, $account=NULL, $async=NULL, $actionid=NULL)
 Originate Call.
 ParkedCalls ($actionid=NULL)
 List parked calls.
 Ping ()
 Ping.
 QueueAdd ($queue, $interface, $penalty=0)
 Queue Add.
 QueueRemove ($queue, $interface)
 Queue Remove.
 Queues ()
 Queues.
 QueueStatus ($actionid=NULL)
 Queue Status.
 Redirect ($channel, $extrachannel, $exten, $context, $priority)
 Redirect.
 SetCDRUserField ($userfield, $channel, $append=NULL)
 Set the CDR UserField.
 SetVar ($channel, $variable, $value)
 Set Channel Variable.
 Status ($channel, $actionid=NULL)
 Channel Status.
 StopMontor ($channel)
 Stop monitoring a channel.
 ZapDialOffhook ($zapchannel, $number)
 Dial over Zap channel while offhook.
 ZapDNDoff ($zapchannel)
 Toggle Zap channel Do Not Disturb status OFF.
 ZapDNDon ($zapchannel)
 Toggle Zap channel Do Not Disturb status ON.
 ZapHangup ($zapchannel)
 Hangup Zap Channel.
 ZapTransfer ($zapchannel)
 Transfer Zap Channel.
 ZapShowChannels ($actionid=NULL)
 Zap Show Channels.
 log ($message, $level=1)
 add_event_handler ($event, $callback)
 Add event handler.
 process_event ($parameters)
 Process event.

Public Attributes

 $config
 $socket = NULL
 Socket.
 $server
 $port
 $pagi
 $event_handlers

Member Function Documentation

AsteriskManager::AbsoluteTimeout (   $channel,
  $timeout 
)

Set Absolute Timeout.

Hangup a channel after a certain time.

string $channel Channel name to hangup integer $timeout Maximum duration of the call (sec)

AsteriskManager::add_event_handler (   $event,
  $callback 
)

Add event handler.

Known Events include ( http://www.voip-info.org/wiki-asterisk+manager+events ) Link - Fired when two voice channels are linked together and voice data exchange commences. Unlink - Fired when a link between two voice channels is discontinued, for example, just before call completion. Newexten - Hangup - Newchannel - Newstate - Reload - Fired when the "RELOAD" console command is executed. Shutdown - ExtensionStatus - Rename - Newcallerid - Alarm - AlarmClear - Agentcallbacklogoff - Agentcallbacklogin - Agentlogoff - MeetmeJoin - MessageWaiting - join - leave - AgentCalled - ParkedCall - Fired after ParkedCalls Cdr - ParkedCallsComplete - QueueParams - QueueMember - QueueStatusEnd - Status - StatusComplete - ZapShowChannels - Fired after ZapShowChannels ZapShowChannelsComplete -

Parameters
string$eventtype or * for default handler
string$callbackfunction
Returns
boolean sucess
AsteriskManager::AsteriskManager (   $config = NULL,
  $optconfig = array() 
)

Constructor.

Parameters
string$configis the name of the config file to parse or a parent agi from which to read the config
array$optconfigis an array of configuration vars and vals, stuffed into $this->config['asmanager']
AsteriskManager::ChangeMonitor (   $channel,
  $file 
)
AsteriskManager::Events (   $eventmask)

Enable/Disable sending of events to this manager.

string $eventmask is either 'on', 'off', or 'system,call,log'

AsteriskManager::ExtensionState (   $exten,
  $context,
  $actionid = NULL 
)
AsteriskManager::GetVar (   $channel,
  $variable,
  $actionid = NULL 
)

Gets a Channel Variable.

http://www.voip-info.org/wiki-Asterisk+variables string $channel Channel to read variable from string $variable string $actionid message matching variable

AsteriskManager::Hangup (   $channel)
AsteriskManager::IAXPeers ( )
AsteriskManager::ListCommands (   $actionid = NULL)

List available manager commands.

string $actionid message matching variable

AsteriskManager::Logoff ( )
AsteriskManager::MailboxCount (   $mailbox,
  $actionid = NULL 
)

Check Mailbox Message Count.

Returns number of new and old messages. Message: Mailbox Message Count Mailbox: <mailboxid> NewMessages: <count> OldMessages: <count>

string $mailbox Full mailbox ID <vm-context>

Parameters
string$actionidmessage matching variable
AsteriskManager::MailboxStatus (   $mailbox,
  $actionid = NULL 
)

Check Mailbox.

Returns number of messages. Message: Mailbox Status Mailbox: <mailboxid> Waiting: <count>

string $mailbox Full mailbox ID <vm-context>

Parameters
string$actionidmessage matching variable
AsteriskManager::Monitor (   $channel,
  $file = NULL,
  $format = NULL,
  $mix = NULL 
)
AsteriskManager::Originate (   $channel,
  $exten = NULL,
  $context = NULL,
  $priority = NULL,
  $application = NULL,
  $data = NULL,
  $timeout = NULL,
  $callerid = NULL,
  $variable = NULL,
  $account = NULL,
  $async = NULL,
  $actionid = NULL 
)
AsteriskManager::ParkedCalls (   $actionid = NULL)
AsteriskManager::Ping ( )
AsteriskManager::process_event (   $parameters)

Process event.

private

Parameters
array$parameters
Returns
mixed result of event handler or false if no handler was found
AsteriskManager::QueueAdd (   $queue,
  $interface,
  $penalty = 0 
)
AsteriskManager::QueueRemove (   $queue,
  $interface 
)
AsteriskManager::Queues ( )
AsteriskManager::QueueStatus (   $actionid = NULL)
AsteriskManager::Redirect (   $channel,
  $extrachannel,
  $exten,
  $context,
  $priority 
)
AsteriskManager::send_request (   $action,
  $parameters = array() 
)

Send a request.

Parameters
string$action
array$parameters
Returns
array of parameters
AsteriskManager::SetCDRUserField (   $userfield,
  $channel,
  $append = NULL 
)
AsteriskManager::SetVar (   $channel,
  $variable,
  $value 
)
AsteriskManager::Status (   $channel,
  $actionid = NULL 
)
AsteriskManager::StopMontor (   $channel)

Stop monitoring a channel.

string $channel

AsteriskManager::wait_response (   $allow_timeout = false)

Wait for a response.

If a request was just sent, this will return the response. Otherwise, it will loop forever, handling events.

Parameters
boolean$allow_timeoutif the socket times out, return an empty array
Returns
array of parameters, empty on timeout
AsteriskManager::ZapDialOffhook (   $zapchannel,
  $number 
)

Dial over Zap channel while offhook.

string $zapchannel string $number

AsteriskManager::ZapDNDoff (   $zapchannel)

Toggle Zap channel Do Not Disturb status OFF.

string $zapchannel

AsteriskManager::ZapDNDon (   $zapchannel)

Toggle Zap channel Do Not Disturb status ON.

string $zapchannel

AsteriskManager::ZapHangup (   $zapchannel)

Hangup Zap Channel.

string $zapchannel

AsteriskManager::ZapShowChannels (   $actionid = NULL)
AsteriskManager::ZapTransfer (   $zapchannel)

Transfer Zap Channel.

string $zapchannel

Member Data Documentation

AsteriskManager::$socket = NULL

Socket.

public


The documentation for this class was generated from the following file: