Skip to content

A package to connect Laravel servers with VOIP servers on the Issabel platform by AMI

License

Notifications You must be signed in to change notification settings

shahkochaki/ami

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ami

Easy control via asterisk manager interface (AMI).

Installation and configuration

You must create your own Ami User before installation

Also check that port 5038 (default-changeable) is available.

Make sure that the extension socket is active.

To install as a composer package to be used with Laravel 5 and above, simply run:

composer require "shahkochaki/ami" or composer require "shahkochaki/ami:dev-master"

Once it's installed, you can register the service provider in config/app.php in the providers array:

'providers' => [
  \shahkochaki\Ami\Providers\AmiServiceProvider::class,
]

Then publish assets with php artisan vendor:publish. This will add the file config/ami.php.

Usage

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
--range Default number range, for example 100,300

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 sms messages using chan dongle

php artisan ami:dongle:sms <phone> <message> <device?>
Artisan::call('ami:dongle:sms', [
    'phone'   => <phone>,
    'message' => <message>,
    'device'  => <device?>,
]);

For sending long messages use pdu mode.

php artisan ami:dongle:sms <phone> <message> <device?> --pdu
Artisan::call('ami:dongle:sms', [
    'phone'   => <phone>,
    'message' => <message>,
    'device'  => <device?>,
    '--pdu'   => true,
]);

Argument device is not required.

Send ussd commands using chan dongle

php artisan ami:dongle:ussd <device> <ussd>
Artisan::call('ami:dongle:ussd', [
    'device' => <device>,
    'ussd'   => <ussd>,
]);

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

About

A package to connect Laravel servers with VOIP servers on the Issabel platform by AMI

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages