Симуляция SIP-вызова

Давно не занимался Asterisk и SIP в целом, но на днях возникла задача сразу и по настройке Asterisk и Cisco для совместной работы. После конфигурирования обоих систем я потерпел фиаско на первом же тестировании. Вся проблема оказалась в диалплане Asterisk (но что можно там настроить не так?). Так как тестирование

Posted on

Скачивание определенной директории из git-репозитория

Нашёл решение для скачивания определенной директории из git-репозитория. Это перевод ответа на StackOverflow, который в свою очередь является хорошим примером к документации по Sparse Checkout в Git.

Начиная с версии 1.7.0 в Git появилась возможность указания какие пути в локальной копии репозитория должны синхронизироваться - sparse checkout. Для

Posted on
Tagged in note , git

Получение codepoint символа

В процессе работы с LDAP столкнулся с неверной интерпретацией некоторых символов. Особую проблему доставляла запятая и знак равенства. Для них быстро были найдены коды ,\2C и =\3D. Тут, казалось бы, можно забыть о проблеме, но на деле оказалось не совсем так.

Этот скрипт используется в том числе для проверки валидности

Posted on
Tagged in perl , note , ldap

Решение проблемы с "якорем" прячущимся за "шапкой"

Я порой удивляюсь тому, чем я занимаюсь, о чем пишу. Это не профильная для меня тематика, но решил поделиться, т.к. проблема возникла уже не в первый раз, но в первый раз нашел для нее красивое решение.

Проблема: При оформлении веб-страницы с фиксированной "шапкой", которая всегда(!) отображается в самом верху

Posted on
Tagged in note , css

Просмотр SIEVE-правил пользователя в Cyrus

Продолжаю серию заметок по работе с Kolab GroupWare. Очень интересный продукт, плотно занимаюсь его изучением и настройкой уже в течении нескольких месяцев. Некоторые моменты работы с ним решил записывать, так как нужно не часто, но в целом пригодится. И чтобы потом не вспоминать что там и как - конспектировать. Все

Изменение правил resolvconf на лету

Случилась ситуация, когда надо было заменить содержимое /etc/resolv.conf стандартными средствами resolvconf, используемого в Ubuntu.

Обычное вписывание дополнительных nameserver в /etc/resolvconf/resolv.conf.d/base и последующий перезапуск resolvconf не дают нужного эффекта, так как данные из этого файла идут с самым низким приоритетом. И в любом случае

Ejabberd и LDAP

На тему как сделать авторизацию в ejabberd через LDAP написано очень много материала. Эта небольшая заметка возникла из-за необходимости подключить ejabberd к сервису групповой работы Kolab, а также подробнее разобраться во всем написанном и чуть подробнее чем обычно об этом пишут. А ещё пойдет в качестве хорошего способа запомнить всё

Переезд блога на движок Ghost

Больше года мой блог работал на самописаном движке Mojo::Twist, который был форкнут из движка Twist (он ранее обслуживал мой блог). Свой движок я как-то бурно начал, но вскоре кончилось время и переписать админку до вменяемого состояния не осталось ни времени, ни желания. Пару недель назад задумался перевести блог на

Базовая настройка Ruby Gem в Fedora 22

Эта запись максимум претендует на мини-заметку.

Всё происходит на примере пакета tmuxinator. При попытке его установить получил следующую ошибку.

$ gem install tmuxinator
Ignoring json-1.8.2 because its extensions are not built.  Try: gem pristine json --version 1.8.2  
ERROR:  Loading command: install (LoadError)  
    no such file to load
Posted on
Tagged in note

Создание функций INET_ATON и INET_NTOA для SQLite3 в Perl

В SQLite нет функций, которые были бы аналогичны функциям MySQL INET_ATON и INET_NTOA. Суть этих функций превращать IP-адрес в число и обратно. Такие функции крайне полезны для того, чтобы хранить адреса в колонках с типом INT вместо VARCHAR.

Для этого можно добавить необходимые функции в SQLite. Так как