пятница, 9 августа 2024 г.

Debian 12 sources.list редактирование и уход от cdrom

 

 


 Если после установки постоянно просит диск и ничего с этим не сделать, то идем в сорс-листы и комментим вот такую строчку

 cat /etc/apt/sources.list
#deb cdrom:[Debian GNU/Linux 12.5.0 _Bookworm_ - Official amd64 NETINST with firmware 20240210-11:27]/ bookworm contrib main non-free-firmware

deb http://deb.debian.org/debian/ bookworm main
#non-free-firmware
deb-src http://deb.debian.org/debian/ bookworm main
#non-free-firmware

deb http://security.debian.org/debian-security bookworm-security main
#non-free-firmware
deb-src http://security.debian.org/debian-security bookworm-security main
#non-free-firmware

# bookworm-updates, to get updates before a point release is made;
# see https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_updates_and_backports
deb http://deb.debian.org/debian/ bookworm-updates main
#non-free-firmware
deb-src http://deb.debian.org/debian/ bookworm-updates main
#non-free-firmware


 Пример из последнего Дебиан 12, но по сути так и в предыдущих версиях...по крайней мере где-то с 8ой

 

 

 

 

 

 

 

четверг, 25 июля 2024 г.

Asterisk 20.8 Unable to load module res_pjsip.so - pjsip_tls_transport_restart

 


 

 

Удивительная проблема в личный опыт

 

 Во-первых зачем оно все нам

Последняя версия научилась делать такое:

;================================TEL URIs=================================
;
; Asterisk has TEL URI support, but with limited scope. Support is only for
; TEL URIs present in traffic from a remote party. Asterisk does not generate
; any TEL URIs of its own.
;
; Currently, the allowed request types are INVITE, ACK, BYE, and CANCEL. Any
; other request type that contains a TEL URI will behave as it did before.
; TEL URIs are allowed in the request, From, and To headers.
;
; You can match a TEL URI From header by IP, header, or auth_username.

 

 Что это вы спросите?

Вот такое Астериск отродясь не мог понять:

INVITE tel:123456789 SIP/2.0


Тип транспорта принципиален и ранее был без выбора фактически(Н.323 уже можно не брать в расчет)

Отбой шел хоть и четырехсотой ошибкой, но интересной:

416 Unsupported URI scheme

Сообщение как бы и намекает что что-то не так в самой схеме URI


Узнал что с 20 версии как раз работает такое! Астериск, ты можешь уже почти все!!!!

С радостью пошел собирать + на последнем Дебиане 12, но в финале было вот такое еще, чего не ожидал


Проблема при сборке астера 20ой версии:

 [asterisk-bugs] [JIRA] (ASTERISK-30296) Undefined symbol on naive RockyLinux 8 system

> Optimizations remove the symbol pjsip_tls_transport_restart with a naive install of Asterisk 20.0.0 on RockyLinux 8.  Turning on DONT_OPTIMIZE resolves the problem.
> ERROR[166734]: loader.c:2513 load_modules: Error loading module 'res_pjsip.so': /usr/lib64/asterisk/modules/res_pjsip.so: undefined symbol: pjsip_tls_transport_restart
> # strings main/libasteriskpj.so.2 |grep transport_restart
> pjsip_tcp_transport_restart

Как оказалось проблема не нова, хотя сам не мог долго понять почему такой отказ идет.

Пробовал потом сам грузить руками уже из собранного, что ранее было помогало:


CLI> module load res_pjsip.so
Unable to load module res_pjsip.so
Command 'module load res_pjsip.so ' failed.
[2024-06-21 14:24:14] ERROR[1358]: loader.c:283 module_load_error: Error loading module 'res_pjsip.so': /usr/lib/asterisk/modules/res_pjsip.so: undefined symbol: pjsip_tls_transport_restart


В итоге, изучая матчасть и опыт предыдущих коллег из интернета, пришел к выправлению вот таким параметром при установке:


Вывод лога не форматированный, обращаем внимание

жалоба на сам драйвер, не работает не какой-либо один из суб модулей, а все, что говорит об неисправности самого pjsip-драйвера:

ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'chan_pjsip.so': /usr/lib/asterisk/modules/chan_pjsip.so: undefined symbol:>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'func_pjsip_endpoint.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_acl.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_authenticator_digest.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_caller_id.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_dialog_info_body_generator.so', missing dependencies: res_pjsip,>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_diversion.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_dtmf_info.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_endpoint_identifier_anonymous.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_endpoint_identifier_ip.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_endpoint_identifier_user.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_exten_state.so', missing dependencies: res_pjsip, res_pjsip_pubs>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_header_funcs.so', missing dependencies: res_pjsip, res_pjsip_ses>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_logger.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_messaging.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_mwi_body_generator.so', missing dependencies: res_pjsip, res_pjs>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_mwi.so', missing dependencies: res_pjsip, res_pjsip_pubsub
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_nat.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_notify.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_one_touch_record_info.so', missing dependencies: res_pjsip, res_>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_outbound_authenticator_digest.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_outbound_publish.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_outbound_registration.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_path.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_pidf_body_generator.so', missing dependencies: res_pjsip, res_pj>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_pidf_digium_body_supplement.so', missing dependencies: res_pjsip>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_pidf_eyebeam_body_supplement.so', missing dependencies: res_pjsi>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_publish_asterisk.so', missing dependencies: res_pjsip, res_pjsip>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_pubsub.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_refer.so', missing dependencies: res_pjsip, res_pjsip_session, r>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_registrar.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_rfc3326.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_sdp_rtp.so': /usr/lib/asterisk/modules/res_pjsip_sdp_rtp.so: und>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_send_to_voicemail.so', missing dependencies: res_pjsip, res_pjsi>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_session.so': /usr/lib/asterisk/modules/res_pjsip_session.so: und>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip.so': /usr/lib/asterisk/modules/res_pjsip.so: undefined symbol: p>
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_t38.so', missing dependencies: res_pjsip, res_pjsip_session
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_transport_websocket.so', missing dependency: res_pjsip
 ERROR[1934850]: loader.c:2678 load_modules: Error loading module 'res_pjsip_xpidf_body_generator.so', missing dependencies: res_pjsip, res_p>
 Asterisk Ready.


Первый опыт изменения таких настроек

Обычно собирал не самые последние версии тк вопрос был не принципиален, а сейчас все приходится быть на острие не только прогресса, но и версионности ПО

Шикарный кейс

На памятку поисковый запрос удобнее по 

undefined symbol: pjsip_tls_transport_restart site:lists.digium.com




четверг, 5 октября 2023 г.

Linux/UNIX: unixtimestamp - что заперевод, где играет и какая его роль?

 

     Сейчас, когда пишу, время у меня 1659086347 или

 Fri Jul 29 2022 12:19:07 GMT+0300 (Москва, стандартное время)

 Забегая вперед, спойлер, мы живем в 165ую эпоху))



Перевод и проверку времени делаем, к примеру на: https://www.unixtimestamp.com/

как бы первоисточник.

Что это вообще такое?

Сама ВИКИ определяет это понятие как: 

"Unix-время (англ. Unix time, также POSIX-время) — система описания моментов во времени, принятая в Unix и других POSIX-совместимых операционных системах. 

Определяется как количество секунд, прошедших с полуночи (00:00:00 UTC) 1 января 1970 года (четверг); этот момент называют «эпохой Unix». "

 Такую целочисленную системутрадиционно и удобно использовать для сравнения и хранения дат

Выравнивание отсчета, логирования журналов и т п.

Одно из возможно для некоторых менее явное применение - оптимизация кода.

 

 if($conn){
//$i=0;
//$utimestamp = microtime(true);

foreach ($ArData as $ArVars) {
    //echo "$ArVars\n";

    //echo $i++."\n";
    //var_dump($ArData);
    $src=$ArVars['src'];
    $attempts=$ArVars['attempts'];
    //print('src='.$src.' attempts='.$attempts."\n");
    //$ArData[] = $vars;
    $sql_spam = "INSERT INTO spam (src, attempts) VALUES ($src, $attempts)";
    $result = mysqli_query($conn, $sql_spam);
    //$result = mysqli_query($conn, "INSERT INTO spam (src, attempts) VALUES ($src, $attempts)");
    //print("INSERT INTO spam (src, attempts) VALUES ($src, $attempts)\n");
    //echo "Данные успешно добавлены\n";
    //print($result."\n");
    //var_dump((string)$result);
            }
        }
else{
    echo "Ошибка: " . $conn->error;
    }


//$milliseconds = round((microtime(true)- $utimestamp ), 9);
//print($milliseconds."\n");

 Красным выделил самый простой счетчик по измерению времени выполнения кода.

Подобные конструкции мы используем постоянно, и главное удобно для операций с/над временем.

 

 

 

 

воскресенье, 16 апреля 2023 г.

Asterisk Function SIP_HEADERS & SIP_HEADER Разница 16 и 20

 

 


 Функция SIP_HEADER() была Asterisk 16

Используется для получения или установки значения заданного заголовка SIP сообщения.

А вот в 20ом появилась новая, но очень похожая, на столько похожая что по запросу в поисковике, яндекс подменяет на выше названную. Что интересно, Гугл такого не делает.

Давайте взглянем на синаксис

SIP_HEADER(name[,number])


 В принципе мог и не напоминать, все можно посмотреть по

CLI> core show function {ИМЯФУНКЦИИ}

 Смотрите на новинку:

 Function_SIP_HEADERS

Возвращает разделенный запятыми список имен заголовков (без значений) из
сообщения INVITE, отправившего текущий канал.

Идея логировать названия всех пользовательских заголовков которые пришли о вышестоящей АТС

SIP_HEADERS(prefix)
 

На пальцах, встраиваем в диалплан и когда приходит инвайт, получаем список всех заголовков которые может обрабатывать присоединенная станция.

Функция специфическая, кто-то может сказать, что не нужная, но нет,  это крайне тонуий инструмент, нужный для специфических задач.

Каких?

Расскажу далее

четверг, 14 апреля 2022 г.

Поддерживает ли мой браузер нужный формат?

 

 


 Столкнулся с необходимостью проверки на предмет поддержки потокового видео в мой браузер и походу узнал вот про такой сайт

https://caniuse.com/?search=mp4 

По факту у меня во всех поддерживается, но было интересно посмотреть и другие форматы

среда, 29 сентября 2021 г.

AVAYA: попытка скачивания файлов приветствия

 

    Появилась задача достать аудио сообщения с АТС Авайя на одной из станций.

    Avaya TN750C - Печатная плата сообщения записывает и сохраняет сообщения, которые могут быть воспроизведены по требованию в качестве части функции обслуживания вызовов. При оснащении системы 10-ю печатными платами общая обслуживающая способность составит 42,6 мин (при 32 кбит/с) и 160 портов. Иными словами, одновременно могут воспроизводиться 160 сообщений. Скорость уплотнения 16 кбит/с (достаточная для извещения абонента с векторным добавочным номером о месте исходящего вызова) обеспечивает общую обслуживающую способность 85,3 мин.

   Для начала запустил FTP через WEB-интерфейс станции

    Вкл еще в самом СМ, надо указать на/с какой платы юудем заливать/качать файлы:


Вот тут-то  я и встрял на долго

 

Все есть, и C-Lan, Med-Pro, IPSI, даже платы голосовой почты и как раз анонсмент тоже есть, но что-то все равно ей не нравися.

Начал думать что уже не работает, но нет:


Тесты успешны, да и на вх связь никто не жалуется, а спустя некоторое время обнаруживается это:


    Стара оказалась плата, а все главное в работе и активно ведь пашет на узле, завидное качество, недоступное многим сейчас)






 

 

 

 

 

воскресенье, 15 августа 2021 г.

Система записи телефонных разговоров iMemo

 


www.astarta-m.ru

Описание

Система iMEMO записывает разговоры в “родном” цифровом телефонном формате и в стерео режиме, что гарантирует полную идентичность на цифровом уровне записанного и оригинального сигналов. Стерео режим означает раздельную запись голоса вызывающего абонента (на одном конце линии) и голоса вызываемого абонента (на другом конце линии), что исключает возможные затруднения распознавания речи, которые бывают в случае сложения двух каналов или при записи с аналоговой (не цифровой) линии.

Система iMEMO позволяет записывать и сохранять до 15.000 часов переговоров в автономном режиме. Что примерно соответствует месяцу переговоров команды диспетчеров из 200 человек.
Автономный режим - это работа системы без обслуживания, т.е. без изъятия и архивирования накопленных записей.

Система iMEMO позволяет одновременно записывать максимум до 240 разговоров или 8-ми потоков Е1. Что примерно соответствует предприятию из 2.500 человек.

 

Устройство присоединяется к потоку E1 или Ethernet (SIP) вашей АТС и включается в локальную сеть предприятия (Ethernet 100 Base-T). Это позволяет устанавливать сервер сбора данных на неограниченном удалении от телефонной станции.

Комлектации системы

Опция

Комплектация
Лайт

Комплектация
Стандарт

Комплектация
Про

Оборудование съема информации с потоков Е1

+

+

+

Серверное и клиентское ПО

+

+

+

Сервер хранения записей, с установленным ПО

-

+

+

Подача сигнала предупреждения о записи

+

+

+

Шифрование записей на сервере

+

+

+

Дублирование записей на внешний файл-сервер

-

-

+

Выдача CDR строк для внешнего биллинга

+

+

+

SMDR модуль

+

+

+

Поддержка IP телефонии (SIP)

+

+

+

Поддержка сигнализации EDSS1 PRI (ISDN)

+

+

+

Поддержка сигнализации CCS7 (ОКС7, ОКС-7)

-

-

+

Поддержка сигнализации V5.2

-

-

+

Поддержка сигнализации CAS2 (2ВСК, челнок, пакет)

-

-

+

Распознавание факсов

-

+

+

Питание AC 220 Вольт

+

+

+

Питание DC 48..72 Вольт

+

-

-

Стоимость системы записи iMEMO в рублях

Модель

Кол-во каналов записи

Комплектация
Лайт

Комплектация
Стандарт

Комплектация
Про

iMEMO на 1 поток Е1

30

38 т.р.

83 т.р.

89 т.р.

iMEMO на 2 потока Е1

60

57 т.р.

102 т.р.

108 т.р.

iMEMO на 4 потока Е1

120

114 т.р.

159 т.р.

165 т.р.

iMEMO на 6 потоков Е1

180

171 т.р.

216 т.р.

222 т.р.

iMEMO на 8 потоков Е1

240

228 т.р.

273 т.р.

279 т.р.

iMEMO на 12 потоков Е1

240

---

387 т.р.

393 т.р.

iMEMO на 16 потоков Е1

240

---

501 т.р.

507 т.р.

iMEMO на 20 потоков Е1

240

---

615 т.р.

621 т.р.

iMEMO для SIP связи

30

27 т.р.

---

---

iMEMO для SIP связи

60

51 т.р.

---

---

iMEMO для SIP связи

90

71 т.р.

---

---

iMEMO для SIP связи

120

87 т.р.

---

---

iMEMO аналоговая x4

4

28 т.р.

---

---

iMEMO аналоговая x8

8

48 т.р.

---

---

iMEMO аналоговая x16

16

76 т.р.

---

---

 
 
 
 

 

 

 

 

 

Debian 12 sources.list редактирование и уход от cdrom

     Если после установки постоянно просит диск и ничего с этим не сделать, то идем в сорс-листы и комментим вот такую строчку  cat /etc/apt...