libamc

Материал из Циклопедии
Перейти к навигации Перейти к поиску

программное обеспечение
Asterisk Client
Разработчик

kod

Написана на

C++

Операционная система

кроссплатформенная

Аппаратная платформа

кроссплатформенная

Последняя версия

2.1.5-074 (12 февраля 2015)

Состояние

Актуальный

Лицензия

BSD

Сайт

sourceforge.net

libamc — реализует производительный класс для удаленного управления множеством АТС на базе Asterisk. Позволяет осуществлять мониторинг в реальном времени функцией Events().

Ключевые особенности[править]

  1. управление логическими каналами, очередями и модулями;
  2. телеконференции (meetme, confbridge);
  3. функции администрирования ядра Asterisk;
  4. правка конфгураций;
  5. контроль над DAHDI Архивная копия от 6 октября 2014 на Wayback Machine;
  6. редактор плана набора;

Пример использования[править]

Получение информации о состоянии сервера:

<source lang="cpp">

  1. include <iostream>
  2. include <amc.h>

//---AMC-declaration--- amc ami; //

int main(int argc, char *argv[]) {

 string host = "10.1.1.1";
 unsigned 
 short int port = 5038;
 string
   usr  = "vve",
   ps   = "evv";
 if(
 ! ami.connect(host, port)
   )
 { cout << ami.err << endl;
   return -1; 
 }
 cout
 << "Connected to "
 << host
 << endl;
 if(
 ! ami.login(host, port,
             usr, ps)
   )
 { cout << ami.err << endl;
   ami.disconnect(host, port);
   return -1;
 }
 cout << "Logged in " << host << endl;
 cout << endl;
 sys_status st;
 if(
 ! ami.core_status(host, port, st)
   )
 { cout << ami.err << endl;
 } else {
   cout << "1-StD: " 
        << st.startup_date << endl;
   cout << "1-StT: " 
        << st.startup_time << endl;
   cout << "1-RlD: " 
        << st.reload_date << endl;
   cout << "1-Rlt: "
        << st.reload_time << endl;
   cout << "1-Cur: "
        << st.current_calls << endl;
 }
 if(ami.logoff(host, port))
   cout << "Logged off " 
        << host << endl;
 if(ami.disconnect(host, port))
   cout << "Disconnected from " 
        << host << endl;
 return 1;

} </source> Компиляция:

 $ gcc -c main.C
 $ gcc -lamc main.o -o voipstat
 $ ./voipstat

Вывод:

 Connected to 10.1.1.1
 Logged in 10.1.1.1
 
 1-StD: 2012-11-29
 1-StT: 08:47:45
 1-RlD: 2014-02-01
 1-RlT: 09:51:28
 1-Cur: 7
 
 Logged off 10.1.1.1
 Disconnected from 10.1.1.1

Дополнительные примеры находятся в сопроводительной документации программы.

Ссылки[править]