Категория: Разработка

Консольный SIP-клиент PJSUA для Win64

Для одного из проектов возникла потребность в софтфоне, управляемом из командной строки, сам проект, разумеется, для MS Windows. Почти с десяток разных линуксоидов-телефонистов говорили, что для MS Windows такого нет, но это не совсем так. Опенсорсный SIP-клиент PJSUA собирался в т.ч. для MS Windows, но ссылки на бинарные сборки давным-давно стухли, поэтому я попросил своего хорошего друга скомпилировать исходники заново — держите бинарник PJSUA для Win64, собран с помощью VC14 (и может потребовать соответствующих распространяемых наборов библиотек).


Псевдоперехват нажатия PrtScr в Windows

В Windows 7 есть такая утилита для работы с областью скриншота — «Ножницы» (Snipping Tool). И хоть лично я этой утилитой толком не пользовался, но многим из моих знакомых она приходилась по нраву. Со временем в Windows 10 этот инструмент претерпел некоторые изменения, появились всплывающие сообщения (на закрытие которых каждый раз приходилось терять время, фактически — лишний клик мышкой) призывающие перейти на другой фирменный инструмент взамен удаляемых из состава Windows «Ножниц». Обычно все ставят сторонние приложения которые и нажатие клавиши PrtScr перехватят, и полученный скриншот в какую-нибудь помойку зальют, но в коммерческой среде применимость подобного ПО под большим вопросом. По просьбе одного человека я сделал простое альтернативное решение, оно срабатывает по нажатию на клавишу Print Screen.

ЧИТАТЬ ДАЛЕЕ


Вывод в Memo вместо командной строки

Иной раз в процессе разработки ПО или же автоматизации каких-либо процессов сталкиваюсь с необходимостью использовать консольные (без графического интерфейса) версии программ и утилит в качестве вспомогательных по отношению к «главному» приложению (которое вполне себе имеет GUI). Ниже я напишу шпаргалку (больше для самого себя) по редиректу вывода из командной строки в текстовое поле Memo.

ЧИТАТЬ ДАЛЕЕ


Принудительная смена DUID на Mikrotik

Один из заказчиков с инфраструктурой на базе Mikrotik обратился за помощью в решении одной проблемы. На его центральном роутере был переназначен вручную MAC-адрес (так было нужно), казалось бы, дело совсем нехитрое. Но когда заказчик начал смотреть в сторону IPv6, то оказалось, что DUID содержит его прежний MAC, а не вновь заданный. Более того, согласно спецификациям, пользователь не может задавать DUID самостоятельно. Но все решаемо, ведь дальше действовать будем мы.

ЧИТАТЬ ДАЛЕЕ


Завершение работы процесса в Windows по занятому порту

Штатная утилита taskkill в Windows умеет завершать процессы по всяким разным критериям — и по PID, и по имени образа, даже на удалённых машинах. Но чего там точно нет (наверное, не без причин) — это завершение работы процесса по занятому TCP порту. На коленке я набросал утилиту для которой можно в качестве аргумента запуска указать порт, после чего она завершит процесс который этот порт занял. Утилита называется KillByPort, забрать бинарник можно здесь.

KillByPort.exe 8080


Сам себе SMS шлюз

Будучи независимым подрядчиком столкнулся в одной организации с охранной системой. В её основе лежала достаточно несложная железка с GSM-контроллером, это позволяло использовать её там, где нельзя или нецелесообразно тянуть витую пару. Но была и своя ложка дегтя — управление контроллером происходило исключительно посредством SMS-сообщений, что, конечно, не самый удобный вариант. И если объект один и железка одна, то худо-бедно такой формат работы годится, но если таких объектов (и, соответственно, контроллеров) десятки, то управление нужно уже как-то автоматизировать. Собственно, меня попросили заняться этим вопросом.

ЧИТАТЬ ДАЛЕЕ


Winamp в браузере

Пришла как-то раз в голову одна идея — если дома стоит сервак с выделенным адресом и к нему можно подключить винчестер со всей музыкой что накоплена за много лет, то почему бы не послушать музыку онлайн прямо со своего же винта? С этой сумбурной мыслью я отправился изучать HTML5 плееры на предмет возможности осуществления задумки. Посмотрев несколько небезыинтересных вариантов и почти уже остановившись на одном из них, глаз зацепился за странную ссылку. Кажется, я нашел годный вариант в духе старой школы — браузерную версию Winamp. Собственно, любой желающий может посмотреть все в действии по этой ссылке. Ну а если кто-то хочет поставить себе, то я сделал небольшой демо-пак.