четверг, 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 т.р.

---

---

 
 
 
 

 

 

 

 

 

пятница, 25 июня 2021 г.

SSH в Linux при подключении к Cisco(diffie-hellman)

 


Часто при подключении к старым роутерам вы можете наблюдать:

Unable to negotiate with 172.16.19.204 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

На Убунте и дебиане я это лечу добавлением режимов шифрования и алгоритмов:

Правим /etc/ssh/ssh_config

KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr

В зависимости от верии могут быть и более современные алгоритмы, как и некоторые не приниматься, узнаете об этом когда перезапустите сервис:

рестарт

user@VoIP:~$ sudo service ssh restart

Ошибка:

ssh user@172.16.19.204
/etc/ssh/ssh_config line 41: Bad SSH2 cipher spec 'aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc,blowfish-cbc'

В данном случае не принмается blowfish-cbc, нас это конечно огорчит, но не остановит.


понедельник, 26 апреля 2021 г.

Vim Commands Cheat Sheet / памятка по командам

 

Хороший справочник: http://www.fprintf.net/vimCheatSheet.html 

Как выходить:

q[uit] Quit Vim. This fails when changes have been made.
:q[uit]! Quit without writing.
:cq[uit] Quit always, without writing.
:wq Write the current file and exit.
:wq! Write the current file and exit always.
:wq {file} Write to {file}. Exit if not editing the last
:wq! {file} Write to {file} and exit always.
:[range]wq[!] [file] Same as above, but only write the lines in [range].
ZZ Write current file, if modified, and exit.
ZQ Quit current file and exit (same as ":q!").

 

Правка файла:

:e[dit] Edit the current file. This is useful to re-edit the current file, when it has been changed outside of Vim.
:e[dit]! Edit the current file always. Discard any changes to the current buffer. This is useful if you want to start all over again.
:e[dit] {file} Edit {file}.
:e[dit]! {file} Edit {file} always. Discard any changes to the current buffer.
gf Edit the file whose name is under or after the cursor. Mnemonic: "goto file".


Удаление текста:

<Del> or
x
Delete [count] characters under and after the cursor
X Delete [count] characters before the cursor
d{motion} Delete text that {motion} moves over
dd Delete [count] lines
D Delete the characters under the cursor until the end of the line
{Visual}x or
{Visual}d
Delete the highlighted text (for {Visual} see Selecting Text).
{Visual}CTRL-H or
{Visual}
When in Select mode: Delete the highlighted text
{Visual}X or
{Visual}D
Delete the highlighted lines
:[range]d[elete] Delete [range] lines (default: current line)
:[range]d[elete] {count} Delete {count} lines, starting with [range]















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

         Сейчас, когда пишу, время у меня 1659086347 или  Fri Jul 29 2022 12:19:07 GMT+0300 (Москва, стандартное время)  Забегая вперед, спо...