Задать вопрос
  • Возможно ли увеличить время сессии на Госуслугах?

    @Everything_is_bad
    Проблема проявляется на всех браузерах (Huawei Browser, Google Chrome Android, Waterfox, Chromium Linux).
    это не проблема.

    Время сессии определяет сервер, а не браузеры.
    Ответ написан
    Комментировать
  • Может ли IP-телефония работать без АТС?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Теоретически - может, но это будет очень неудачное решение, потому что на каждом телефоне придется держать адресную книгу или набирать полные адреса вида "номер@IP"

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

    Не все прошивки телефонов способны на такое - многие без возможности регистрации будут зависать при запуске.
    Ответ написан
    1 комментарий
  • Для чего фрейм потока Е3 в технологии PDH был разделён ровно пополам на два цикла?

    @HJK490
    В технологии PDH (Plesiochronous Digital Hierarchy) фрейм потока E3, который имеет скорость 34,368 Мбит/с, был разделён ровно пополам на два цикла (каждый по 1536 бит) для упрощения мультиплексирования и синхронизации. Основные причины такого деления:

    1. **Упрощение мультиплексирования**: Поток E3 формируется путём мультиплексирования четырёх потоков E2 (каждый по 8,448 Мбит/с). Деление фрейма E3 на два цикла позволяет более эффективно распределять данные от этих потоков, обеспечивая чёткое чередование и упрощая процесс синхронизации.

    2. **Синхронизация и выравнивание**: Разделение на два цикла помогает в управлении синхронизацией между различными потоками E2, которые могут иметь небольшие расхождения по частоте (поскольку PDH — плезиохронная система). Это упрощает выравнивание данных и минимизирует необходимость в дополнительных буферах.

    3. **Структурирование данных**: Каждый цикл (или подфрейм) содержит определённое количество служебной информации (например, биты синхронизации и управления), что позволяет равномерно распределять служебные данные по фрейму и упрощает их обработку на приёмной стороне.

    Таким образом, деление фрейма E3 на два равных цикла было сделано для оптимизации мультиплексирования, упрощения синхронизации и повышения надёжности передачи данных в плезиохронной иерархии.
    Ответ написан
    Комментировать
  • Как подключить windows к ATS(ip телефония)?

    @dronmaxman
    VoIP Administrator
    поставить microSIP на ПК
    Ответ написан
    8 комментариев
  • Как открыть страницу WEB-интерфейса телефона, по его IP-аресу?

    @zer0Hexen
    через Хром не стоит туда идти. телефоны относительно старые, пробуем через Лису а лучше через Ie.
    Ответ написан
    Комментировать
  • Как заставить браузер доверять сертификату web-сервера с SIP-телефона?

    Daemon23RUS
    @Daemon23RUS
    Решение есть, но чисто потешить свое ЧСВ.
    Что надо иметь: Домен (пусть будет mydomen.tld) и консоль линукс (не заворачивался в винде, но думаю что и там тоже можно)
    Дано 50 Yealink. у каждого ИП во внутренней сети с 192.168.1.100 по 150.
    Решение: WILD letsencrypt
    Заводим 50 записей A по типу abonent-01.phones.mydomen.tld со внутренним IP 192.168.1.1хх для каждого телефона.
    получаем WILD letsencrypt dns challenge сертификат (через DNS challenge) для phones.mydomen.tld (в консоли linux тем же certboot)
    Полученный сертификат, раскидываем на 50 аппаратов.
    Подключаемся по https://abonent-01.phones.mydomen.tld - БИНГО ! получилось "закрыть замочек" для всех 50ти.
    Раз в 3 месяца повторяем процедуру DNS челенджа с заменой сертификата на 50 аппаратах.
    Вот только зачем все это, при том что настроив единожды Yealink "забываеш" про него на несколько лет (или до момента когда его надо из кабинета в кабинет перенести как подменный.
    P.S. Это не единственный метод.
    Ответ написан
    3 комментария
  • Как в выборке sql обратиться к предыдущей записи?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    ORDER BY date DESC 
    LIMIT 2

    Получите последнюю и предпоследнюю записи.
    Ответ написан
    Комментировать
  • Как заставить браузер доверять сертификату web-сервера с SIP-телефона?

    @AlexVWill
    Все равно браузер не доверяет. Опыт небольшой имеется - с веб-сайтом управления АТС получилось "закрыть замочек" https, тут что-то ни в какую...

    По идее и не должен. Потому что браузер должен доверять корневому ЦС. А они ограниченны разработчиками браузера, если браузер например на Chromium, то он использует централизованное хранилище корневых сертификатов, Chrome root storage, откуда как раз берет для доверия корневой сертификат,, а через него всей цепочке доверенных сертификатов.
    Читать. У тебя же сертификат самописный, не подписанный никаким доверенным ЦС, поэтому браузер и не будет ему доверять по умолчанию. Можно в настройках браузера сделать так, что он не будет каждый раз выводить страницу-предупреждение, но зеленого замочка не будет. А то, что ты сделаал как то доверие какому то Web сайту, так наверное это внешний сайт, и на него ставил что-то вроде Let's encrypt через certbot, который как раз подписан корневым сертификатом ISRG Root X1, которому браузер доверяет.
    spoiler
    Selection_193.png
    Ответ написан
  • Можно ли для одной учетной записи установить два разных пароля?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Можно, если хэши обоих паролей совпадают.
    Ответ написан
    2 комментария
  • Почему могут различаться файлы shadow и shadow-?

    @vitaly_il1
    DevOps Consulting
    shadow- хранит предыдущую версию, так что все в порядке, не надо его трогать.
    Ответ написан
    Комментировать
  • Почему скрипт запуска виртуальной машины перестал работать?

    @rPman
    какое красивое садамаза, скрипт запускает сам себя на javascript являясь bat, да еще и внутри powershell, как это читать и отлаживать, известно только его разработчику :)

    И самое главное, вам точно нужно GUI для смены даты? И уж точно для этого не требуется ни powershell ни повышение прав доступа (хотя может у вас там так настроено)

    У virtualbox есть соответствующие команды VBoxManage, которые можно было просто прописать в текстовом файлике, назвать blablabla.bat и запускать
    upd. нужно считать разницу в миллисекундах между текущим временим и целевым, на bat это сложно, поэтому лучше сразу писать на чем то типа javascript, не изобретая паровоза (и от туда же запускать vboxmanage)

    p.s. кайфую с современного ИИ, который это сумел разобрать и по полочкам разложить этот кошмар
    anthropic:claude sonnet 3.5
    ...
    проанализируй этот скрипт для windows, почему тут сместь cmd и javascript, и начни описание, что именно делают первые строчки
    Давайте разберем этот интересный гибридный скрипт:

    Первые строки скрипта представляют собой "полиглот" - код, который может быть интерпретирован несколькими языками программирования:

    ```
    set @x=0; /*
    @echo off
    ver |>NUL find /v "5." && if "%~1"=="" cscript.exe //nologo //e:jscript "%~f0"& exit /b
    ```

    Это хитрая конструкция, которая:
    1. Начинается как cmd-скрипт (`@set @x=0;`)
    2. Открывает многострочный комментарий в JavaScript (`/*`)
    3. Выключает вывод команд в cmd (`@echo off`)
    4. Проверяет версию Windows и если скрипт запущен без параметров, перезапускает сам себя через cscript.exe в режиме JavaScript

    Последняя строка скрипта:
    ```javascript
    */new ActiveXObject('Shell.Application').ShellExecute (WScript.ScriptFullName,'Admin','','runas',1);
    ```
    закрывает JavaScript-комментарий и содержит код для повышения привилегий - перезапуска скрипта с правами администратора.

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

    Основная часть скрипта написана на PowerShell и использует Windows Forms для создания графического интерфейса. Согласно документации [learn.microsoft.com](https://learn.microsoft.com/en-us/dotnet/api/syste...), скрипт создает форму для ввода даты, которая будет использоваться для настройки BIOS времени виртуальной машины VirtualBox.

    Такая сложная структура используется для:
    1. Обеспечения запуска с правами администратора
    2. Совместимости с разными версиями Windows
    3. Комбинирования возможностей разных языков скриптования Windows

    продолжай дальше анализ, почему там еще и powershell?
    PowerShell используется в этом скрипте для основной функциональности, и его часть начинается после строк:

    ```
    ;@echo off
    ;@Findstr -bv ;@ "%~f0" | powershell -noprofile -command - & goto:eof
    ```

    Эта конструкция особенно интересна, потому что:
    1. Использует Findstr для фильтрации содержимого файла, пропуская строки, начинающиеся с `;@`
    2. Передает отфильтрованное содержимое в PowerShell через пайп (`|`)
    3. Запускает PowerShell без профиля (`-noprofile`) для ускорения загрузки

    PowerShell был выбран для основной части скрипта по нескольким причинам:

    1. **Объектная модель**: Как отмечается в [thenewandshiny.com](https://thenewandshiny.com/powershell-everywhere/), PowerShell работает с объектами, а не с текстом, что делает его более надежным для работы с системными компонентами.

    2. **Удобство работы с GUI**: PowerShell позволяет легко создавать Windows Forms для пользовательского интерфейса, что используется в функции `CustomInputBox`

    3. **Управление VirtualBox**: PowerShell предоставляет удобные средства для запуска процессов и управления VirtualBox через `VBoxManage`

    4. **Работа с датами**: PowerShell имеет мощные средства для работы с датами и временем, что критично для этого скрипта

    Важно отметить, что в скрипте используется разделение на Windows PowerShell и PowerShell Core. Как упоминается в [get-powershellblog.blogspot.com](https://get-powershellblog.blogspot.com/2017/10/wh...), это важно учитывать при работе с разными версиями PowerShell.

    Скрипт использует стандартный формат командлетов PowerShell `Verb-Noun`, хотя, как отмечается в [scoop-docs.vercel.app](https://scoop-docs.vercel.app/docs/misc/Why-PowerS...), такой формат может казаться излишне многословным, но он обеспечивает четкую структуру и понятность команд.

    Основная функциональность скрипта:
    1. Создает GUI для ввода даты
    2. Проверяет корректность введенной даты
    3. Настраивает время BIOS для виртуальной машины VirtualBox
    4. Запускает виртуальную машину с модифицированными настройками времени

    какими строчками настраивается время
    В скрипте время настраивается несколькими ключевыми командами:

    1. Сначала отключается синхронизация времени с хостом:
    ```powershell
    start-process $VB_MANAGE 'setextradata', $vmname, 'VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled 1' -NoNewWindow
    ```

    2. Затем вычисляется смещение времени в миллисекундах:
    ```powershell
    $timeoffset_milliseconds='{0:0}' -f ([datetime]$date - [datetime]::Now).TotalMilliseconds
    ```

    3. И наконец, применяется смещение времени BIOS:
    ```powershell
    start-process $VB_MANAGE 'modifyvm', $vmname, '--biossystemtimeoffset', $timeoffset_milliseconds -NoNewWindow
    ```

    Здесь важно отметить несколько моментов:
    - Используется VBoxManage - утилита командной строки VirtualBox (путь хранится в переменной `$VB_MANAGE`)
    - Смещение вычисляется как разница между желаемым временем (`$date`) и текущим системным временем
    - Параметр `--biossystemtimeoffset` устанавливает смещение времени BIOS в миллисекундах

    После установки времени виртуальная машина запускается командой:
    ```powershell
    start-process $VB_MANAGE startvm, $vmname
    ```

    Похожий подход используется в проекте [github.com/bitbank2/rtc_setter](https://github.com..., где также реализована настройка времени, но для реального RTC (часов реального времени), а не виртуальной машины.

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

    Ответ написан
    5 комментариев
  • Возвращает ли Asterisk какие-либо переменные с номером парковочного места?

    Похоже что нет, не возвращает.
    Лучшим вариантом вижу задать парковочное место через (например) параметр parking_lot_name для Park(), таким образом оно будет известно заблаговременно.
    Так же можно получить событие парковки через ami
    https://docs.asterisk.org/Latest_API/API_Documenta...
    Ответ написан
  • Asterisk. Организация конференц связи. Готовые решения?

    gbg
    @gbg
    Любые ответы на любые вопросы
    openmcu-ru - свободная реализация MCU. При наличии прямых рук и видеокарты с аппаратным кодером, может работать очень шустро.
    Ответ написан
    Комментировать
  • Кто как конвертирует аудио для автоинформатора в Asterisk?

    для АА попробуй так в консоли линукса:
    sox in.wav -r 8000 -c 1 out.wav
    и не используй ulaw, у нас стандарт alaw...
    Ответ написан
    1 комментарий
  • Как добавить SIPAddHeader для АОНа провайдера?

    @dronmaxman
    VoIP Administrator
    В настройках маршрута указать в поле Route CID номер линии и добавить в /etc/asterisk/extensions_custom.conf
    [macro-dialout-trunk-predial-hook]
    exten => s,1,SIPAddHeader(P-Asserted-Identity:${CALLERID(num)}@111.222.333.444:1234)
    exten => s,n,MacroExit()
    Ответ написан
  • Как добавить префикс в экстеншен?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    - exten => _7[77]XXXXXXXXX,n,Dial(SIP/trunk_zebra/${EXTEN:0},60)
    + exten => _7[77]XXXXXXXXX,n,Dial(SIP/trunk_zebra/810${EXTEN},60)
    Ответ написан
    Комментировать
  • Как централизовано управлять запуском скриптов на виртуальных машинах?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Ansible
    Ответ написан
    Комментировать
  • Как в ubuntu с двумя ip, указать для приложения ip с которым оно должно выходит в сеть?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    Обычно у приложений, слушающих адрес, есть опция, какой именно адрес слушать. Либо в конфиге, либо ключом к команде.
    Ответ написан
    1 комментарий
  • Копирование одного диска на несколько, как ускорить?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Лучшее решение, к которому мы пришли - размечать диски parted, форматировать нужные разделы, заливать tar.gz-архив, ставить загрузчик EFI. Ускорение в 10-20 раз.
    Еще, как вариант - ужать файловую систему до размера данных и делать resizefs на весь раздел.
    Рещается простым скриптом со всеми нужными командами.
    Копируем за раз по 10-12 дисков.
    Кстати, через resizefs обычно делаются флешки для всяких rasberry/orange
    Ответ написан
    5 комментариев
  • Почему не работает вирт. машина?

    @Drno
    в ошибке же написано. VTx включите в BIOS
    Ответ написан
    Комментировать