Example #1
0
<?php

date_default_timezone_set('America/Buenos_Aires');
define('ROOT_PATH', realpath(__DIR__ . '/../../..'));
ini_set('include_path', implode(PATH_SEPARATOR, array(ROOT_PATH . '/src/mg', ROOT_PATH . '/vendor/php/log4php', ini_get('include_path'))));
require_once ROOT_PATH . '/src/mg/PAGI/Autoloader/Autoloader.php';
PAGI\Autoloader\Autoloader::register();
require_once __DIR__ . '/example.php';
use PAGI\Client\Impl\ClientImpl as PagiClient;
use PAGI\Node\Node;
// Go, go, gooo!
$pagiClientOptions = array('log4php.properties' => ROOT_PATH . '/resources/log4php.properties');
$pagiClient = new \PAGI\Client\Impl\MockedClientImpl($pagiClientOptions);
$pagiAppOptions = array('pagiClient' => $pagiClient);
$pagiApp = new MyPagiApplication($pagiAppOptions);
pcntl_signal(SIGHUP, array($pagiApp, 'signalHandler'));
$pagiClient->onAnswer(true)->onCreateNode('mainMenu')->runWithInput('1')->assertSaySound('pp/30', 1)->assertSayDigits(123, 1)->assertSayNumber(321, 1)->assertSayDateTime(1, 'dmY', 1)->doBeforeValidInput(function (Node $node) {
    $client = $node->getClient();
    $client->onStreamFile('hi')->assert('streamFile', array('hi'))->assert('playBusyTone');
})->doBeforeFailedInput(function (Node $node) {
});
$pagiApp->init();
$pagiApp->run();
Example #2
0
 /**
  * @test
  */
 public function can_mock_asterisk_logger()
 {
     $client = new \PAGI\Client\Impl\MockedClientImpl($this->_properties);
     $logger = $client->getAsteriskLogger();
     $logger->dtmf('test');
     $logger->error('test');
     $logger->warn('test');
     $logger->notice('test');
     $logger->debug('test');
     $logger->verbose('test');
 }
Example #3
0
 /**
  * @test
  */
 public function can_get_knownmocked_node()
 {
     $mock = new PAGI\Client\Impl\MockedClientImpl($this->_properties);
     $mock->onCreateNode('test')->runWithInput('*');
     $this->assertTrue($mock->createNode('test') instanceof MockedNode);
 }
Example #4
0
<?php

require_once 'PAGI/Autoloader/Autoloader.php';
PAGI\Autoloader\Autoloader::register();
require_once __DIR__ . '/../quickstart/MyPAGIApplication.php';
$variables = array('request' => 'request.php', 'channel' => 'SIP/blah-00803890', 'language' => 'ar', 'type' => 'SIP', 'uniqueid' => '1330012581.77', 'version' => '1.6.0.9', 'callerid' => '40', 'calleridname' => 'Admin', 'callingpres' => '1', 'callingani2' => '0', 'callington' => '0', 'callingtns' => '0', 'dnid' => '55555555', 'rdnis' => 'unknown', 'context' => 'default', 'extension' => '55555555', 'priority' => '1', 'enhanced' => '0.0', 'accountcode' => '', 'threadid' => '1095317840');
$mock = new PAGI\Client\Impl\MockedClientImpl(array('log4php.properties' => __DIR__ . '/../quickstart/log4php.properties', 'variables' => $variables));
$mock->assert('sayDigits', array('12345', '12#'))->assert('sayNumber', array('12345', '12#'))->onSayDigits(true, '1')->onSayNumber(true, '2')->onGetData(false)->onGetOption(true, '4')->onStreamFile(true, '#')->onChannelStatus(PAGI\Client\ChannelStatus::LINE_UP)->onChannelStatus(PAGI\Client\ChannelStatus::LINE_BUSY)->onGetVariable(true, 123)->onGetFullVariable(true, 456)->onGetFullVariable(true, 789)->onGetFullVariable(true, 'asd')->onGetFullVariable(true, '1')->onGetFullVariable(true, '2')->onGetFullVariable(true, '3')->onGetFullVariable(true, '4')->onGetFullVariable(true, '5')->onGetFullVariable(true, '6')->onGetFullVariable(true, '1')->onGetFullVariable(true, '2')->onGetFullVariable(true, '3')->onGetFullVariable(true, '4')->onGetFullVariable(true, '5')->onGetFullVariable(true, '6')->onGetFullVariable(true, '1')->onGetFullVariable(true, '2')->onGetFullVariable(true, '3')->onGetFullVariable(true, '4')->onGetFullVariable(true, '5')->onDial(true, 'name', 'number', '20', 'ANSWER', '#asd')->onSayPhonetic(true, '2')->onSayAlpha(true, '3')->onSayTime(true, '4')->onSayDateTime(true, '5')->onSayDate(true, '6')->onWaitDigit(true, '7')->onWaitDigit(true, '7')->onRecord(true, false, '#', 1000);
$app = new MyPAGIApplication(array('pagiClient' => $mock));
$app->init();
$app->run();
$app->shutdown();
Example #5
0
<?php

require __DIR__ . implode(DIRECTORY_SEPARATOR, array('', '..', '..', '..', 'vendor', 'autoload.php'));
$variables = array('request' => 'request.php', 'channel' => 'SIP/blah-00803890', 'language' => 'ar', 'type' => 'SIP', 'uniqueid' => '1330012581.77', 'version' => '1.6.0.9', 'callerid' => '40', 'calleridname' => 'Admin', 'callingpres' => '1', 'callingani2' => '0', 'callington' => '0', 'callingtns' => '0', 'dnid' => '55555555', 'rdnis' => 'unknown', 'context' => 'default', 'extension' => '55555555', 'priority' => '1', 'enhanced' => '0.0', 'accountcode' => '', 'threadid' => '1095317840');
$mock = new PAGI\Client\Impl\MockedClientImpl();
$mock->assert('waitDigit', array(1000))->assert('streamFile', array('blah', '01234567890*#'))->assert('dial', array('SIP/blah', array(60, 'tH')))->assert('getData', array('blah', 123, '#'))->assert('sayDateTime', array('asd', 123))->assert('setVariable', array('asd', 'asd'))->onAnswer(true)->onWaitDigit(false)->onWaitDigit(true, '*')->onStreamFile(false)->onStreamFile(true, '#')->onGetData(false)->onGetData(true, '44449*#')->onSayDate(true, '#')->onSayTime(true, '#')->onSayDateTime(true, '#')->onSayAlpha(true, '#')->onSayPhonetic(true, '#')->onSayNumber(true, '#')->onSayDigits(true, '#')->onDial(true, 'name', '01151992266', 20, 'ANSWER', '#blah')->onHangup(true);
var_dump($mock->answer());
var_dump($mock->setVariable('asd', 'asd'));
var_dump($mock->waitDigit(1000));
var_dump($mock->waitDigit(1000));
var_dump($mock->streamFile('blah', '01234567890*#'));
var_dump($mock->streamFile('blah', '01234567890*#'));
var_dump($mock->getData('blah', 123, '#'));
var_dump($mock->getData('blah', 123, '#'));
var_dump($mock->sayDate('asd', time()));
var_dump($mock->sayTime('asd', time()));
var_dump($mock->sayDateTime('asd', 123));
var_dump($mock->sayAlpha('asd'));
var_dump($mock->sayPhonetic('asd'));
var_dump($mock->sayNumber(123));
var_dump($mock->sayDigits(123));
var_dump($mock->dial('SIP/blah', array(60, 'tH')));
var_dump($mock->hangup());