npm 包 @revall/asterisk-ami-connector 使用教程

阅读时长 4 分钟读完

背景

在通讯领域,Asterisk 是一款常用的电话交换机软件。为了便于对接 Asterisk 服务,我们需要使用一个 AMI 连接器。本文将介绍 npm 包 @revall/asterisk-ami-connector,它是一个封装了 Socket 连接 Asterisk 的 AMI 的包,使用简便。

安装

安装 @revall/asterisk-ami-connector 很简单,只需要在终端执行以下命令即可:

使用方法

初始化

首先,我们需要初始化连接器。这里,我们需要传入连接 Asterisk 所需的配置项,如 AMI 的用户名、密码、Host 地址以及监听的端口号。

监听事件

接下来,我们需要监听连接器的事件。AMi 连接器的事件分为两大类:系统事件和自定义事件。系统事件比如连接成功,连接断开等,而自定义事件即在管理端添加的事件。

-- -------------------- ---- -------
----------------------- -- -- -
  ---------------- ------------
---

-------------------------- -- -- -
  ---------------- ---------------
---

--------------------- ------- -- -
  --------------------- -------- -------
---

------------------------ ---------- -- -
  --------------------- ----------- ----------
---

其中,connect 和 disconnect 是系统事件,而 event 和 response 则是自定义事件。在监听到自定义事件之后,我们可以进行一些特定的操作,比如根据事件类型进行分类处理,或者把事件信息发送到其他客户端。

发送命令

最后,我们需要发送命令到 Asterisk 服务器上。这里,我们可以通过调用 send方法来发送命令,其参数为 AMI 命令的 Action 和可选的关联数据。在发送命令之后,我们会收到对应的响应或事件。

示例代码

完整的示例代码如下:

-- -------------------- ---- -------
----- - ------------ - - ------------------------------------------

----- --------- - --- --------------
  --------- --------
  --------- -----------
  ----- ---------------
  ----- -----
---

----------------------- -- -- -
  ---------------- ------------
---

-------------------------- -- -- -
  ---------------- ---------------
---

--------------------- ------- -- -
  --------------------- -------- -------
---

------------------------ ---------- -- -
  --------------------- ----------- ----------
---

----------------
  ------- ----------
  -------- --------- ---- --------
------------------ -- -
  -------------------- ----------- ----------
-------------- -- -
  ---------------------- -------- -----
---

结论

npm 包 @revall/asterisk-ami-connector 可以极大地简化连接 Asterisk 服务的工作。通过初始化连接器、监听事件和发送命令,我们可以在 Node.js 环境中轻松地与 Asterisk 进行交互。希望本文能对你们的工作有一定的指导意义。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005668a81e8991b448e2c81

纠错
反馈