Easy control via asterisk manager interface (AMI).
To install as a composer package to be used with Laravel 5, simply run:
composer require "enniel/ami"
Once it's installed, you can register the service provider in config/app.php
in the providers
array:
'providers' => [
\Enniel\Ami\Providers\AmiServiceProvider::class,
]
Then publish assets with php artisan vendor:publish
. This will add the file config/ami.php
.
Connection options
You are can specify connection parameters for each command.
Option | Description |
---|---|
--host | Asterisk AMI server host |
--port | Asterisk AMI server port |
--username | Asterisk AMI server username |
--secret | Asterisk AMI server secret |
Listen ami events
php artisan ami:listen
Artisan::call('ami:listen');
If would you like to see event log in the console use monitor option
php artisan ami:listen --monitor
Send ami action
php artisan ami:action <action> --arguments=<key>:<value> --arguments=<key>:<value> ...
Artisan::call('ami:action', [
'action' => <action>,
'--arguments' => [
<key> => <value>
...
]
]);
Send ami commands
This command started cli interface for ami. Command attribute is optional.
php artisan ami:cli [command]
Close cli interface after sending command.
php artisan ami:cli [command] --autoclose
Artisan::call('ami:cli', [
'command' => [command],
'--autoclose' => true,
]);
Without Laravel
php ./vendor/bin/ami ami:listen --host=127.0.0.1 --port=5038 --username=username --secret=secret --monitor