1

我将 FreePBX 与Asterisk 的 Java API一起使用。目前,我能够显示我所有的 SIP 对等体及其各自的状态:

public void onManagerEvent(ManagerEvent event) 
{
    // Look if the event is a IP phone (Peer entry)
    if(event instanceof PeerEntryEvent)
    {
        PeerEntryEvent ev = (PeerEntryEvent)event;
        // Get the user extension
        peer = ev.getObjectName();
        // Add to the array
        peersName.add(peer);
    }
}

在此处输入图像描述

当频道打开时,我可以显示两个呼叫者的电话号码和姓名:

private String GetExtensionPeer(String extension)
{
    for (AsteriskChannel e : channels)
        if (e.number.equals(extension) && e.bridge != null )
            for (AsteriskChannel channel : channels)
                if (z.channel.equals(e.bridge))
                   return "       with " + channel.number + " - " + channel.name;
    return "";
}

在此处输入图像描述

但是现在,我想在没有通道连接的情况下显示我的扩展名。

在 FreePBX 的面板中,它看起来像:

在此处输入图像描述

4

1 回答 1

2

在 freepbx 中,您可以从星号 db 获取扩展列表。要查看信息,请执行

asterisk -rx "数据库显示"

要获取信息,请使用带有 DBGET 的管理器操作“命令”。

其他选项 - 从 freepbx 的 mysql db 获取该信息。

于 2013-03-20T13:52:48.663 回答