plinker/asterisk

一个Asterisk组件,它可以在远程系统上挂钩到Asterisk管理系统(AMI)。

v0.3.6 2018-05-10 03:54 UTC

README

!!! 此组件不再积极开发,尽管会修复报告的bug。

一个Asterisk组件,它可以在远程系统上挂钩到Asterisk管理系统(AMI)。使用它可以增加额外的安全层,因为您现在可以将AMI锁定在只监听localhost。

安装

使用以下命令通过composer安装此包:

$ composer require plinker/asterisk

客户端

创建客户端实例的步骤如下

<?php
require 'vendor/autoload.php';

/**
 * Initialize plinker client.
 *
 * @param string $server - URL to server listener.
 * @param string $config - server secret, and/or a additional component data
 */
$client = new \Plinker\Core\Client(
    'http://example.com/server.php',
    [
        'secret' => 'a secret password',
        'database' => [
            'dsn' => 'mysql:host=127.0.0.1;dbname=asterisk',
            'username' => '',
            'password' => '',
            'database' => '',
            'freeze' => false,
            'debug' => false
        ],
        'ami' => [
            'server' => '127.0.0.1',
            'port' => '5038',
            'username' => '',
            'password' => ''
        ]
    ]
);

// or using global function
$client = plinker_client('http://example.com/server.php', 'a secret password', [
    'database' => [
        'dsn' => 'mysql:host=127.0.0.1;dbname=asterisk',
        'username' => '',
        'password' => '',
        'database' => '',
        'freeze' => false,
        'debug' => false
    ],
    'ami' => [
        'server' => '127.0.0.1',
        'port' => '5038',
        'username' => '',
        'password' => ''
    ]
]);

方法

一旦设置,您可以通过其命名空间调用类及其方法。

命令

执行ASM命令。

调用

$result = $client->asterisk->command('sip show peers');

响应


获取队列

连接到AMI并发出asterisk命令 [queue show *]。

调用

$result = $client->asterisk->getQueue('foo');

响应


显示通道

连接到AMI并发出asterisk命令 [core show channels]。

调用

$result = $client->asterisk->coreShowChannels();

响应

Array
(
    'active_channels' => 0,
    'active_calls' => 0,
    'calls_processed' => 0
}

和其他方法请参阅:vendor/asterisk/src/Asterisk.php

测试

此组件没有设置测试。

贡献

有关详细信息,请参阅CONTRIBUTING

安全性

如果您发现任何与安全性相关的问题,请通过https://cherone.co.uk与我联系,而不是使用问题跟踪器。

致谢

开发鼓励

如果您使用此项目并从中获利或希望表达您的感激之情,请随时通过https://www.paypal.me/lcherone进行捐赠,谢谢。

赞助商

让您的公司或名字在文档和每个GitHub仓库中列出,有关详细信息,请联系我https://cherone.co.uk

许可

MIT许可(MIT)。有关更多信息,请参阅许可文件

有关其他组件,请参阅组织页面