19 марта 2015 г.

LDK Speed Editor

Чтобы не забыть.
Есть такая программа - LDK Speed Editor, для программирования ячеек быстрого набора на АТС LG LDK.
При подключении через эту программу к станции возможно получить сообщение о том, что невозможно подключится. Это может быть связано с приоритетом сетевых подключений в системе. Необходимо установить актуальный приоритет.

17 октября 2014 г.

Настройка виртуального номера, получаемого по sip от Webplus на LG IPECS-LIC

Возникла необходимость настроить виртуальный номер по SIP.
Раньше он реализовывался посредством ADSL, на обычную аналоговую линию было навешено оборудование, которое делило линию на несколько и был к этому делу прикреплен виртуальный номер. Это WebPlus, если что.
Планируется переезд, и решено наконец то отказаться от аналоговых линий.
Было решено завести этот номер по SIP, благо провайдер дает такую возможность.
В итоге, нам был предоставлен ip-адрес SIP сервера, 2 аккаунта для регистрации с паролям (две линии должны быть).

PGM 126

Здесь мы настроим аккаунты, предоставленные провайдером. Тут возникла небольшая проблема в начале, один аккаунт регистрировался, второй пребывал в состоянии Idle. Соответственно, работала одна только линия. Ну этого я коснусь позже.






















PGM 145








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

PGM 231
Проставляем необходимые параметры. Идентифицируем входящие вызовы по 231 программе, как наиболее для меня привычный способ. Соответственно, назначаем на последние три цифры получаемого номера нужные нам варианты. К примеру:

Тут мы показываем, что назначаем на последние три цифры того числа, которое является у нас идентификатором для доступа в SIP аккаунт, а не на три последние цифры получаемого виртуального номера.






PGM 111-113
Здесь мы можем назначить, кто из абонентов АТС будет иметь возможность выхода с использованием данных аккаунтов.


PGM 133
Здесь мы программируем сами соединительные линии. Была загвоздка именно здесь, что не регистрировался второй аккаунт.
Вот основные настройки:












Т.е. мы указываем на этих двух линиях (23-24) использовать имеющиеся аккаунты (2-3).
Но при этом использовался только один, который был активен. Это какое-то шаманство, но помогла установка следующего параметра 

После этого оба аккаунта стали активны. Одновременно возможны два входящих вызова по виртуальному номеру.
Да, почему то при изменениях в 133 программе приходилось ребутить АТС, т.к. без этого настройки не применялись.

11 октября 2012 г.

Восстановление таблицы в ms sql express из бэкапа со старыми ключевыми полями

Есть ms sql express 2005.
Есть некая программа, которая его использует, и для нее имеется база base1.
Программа довольно кривая, но пока от нее не отказаться. Ну да суть не в этом.
Программа многопользовательская.
Пользователи создаются внутри самой программы, но при увольнении сотрудника из программы его не удалить (так уж написал программист..).
Связь с разработчиком программы утрачена.
Был найден выход - удалить ненужных сотрудников в самой таблице базы данных.
Удалили.
Но есть проблема.

Есть несколько таблиц данных:
1. Таблица обращений
2. Таблица операторов
В таблице обращений есть поле, которое связано с ключевым полем-идентификатором таблицы операторов.
При удалении операторов (когда мы удаляем уволившихся сотрудников), в таблице обращений данные по этим операторам остаются, но только с кодом-идентификатором, который ни на что не ссылается.
Соответственно, возникает проблема при получении выборки по обращениям.

Выход - вернуть в таблицу операторов удаленные записи.
Бэкап с этими записями есть.
Данные восстановлены в новую базу данных base2.
Вопрос в том, как перенести данные из таблицы операторов временной базы в таблицу операторов исходной базы.
Записей не так много, можно было бы и руками вбить. Но необходимо, чтобы добавленные записи имели бы точно такое же значение ключевого поля, как было раньше. И с этим возникает проблема, т.к. оно защищено от изменений, как ключевое.

Решаем проблему следующим образом.
1. Копируем таблицу из временной базы в постоянную.
use [base1]
select * into [base1].[dbo].[operators1] from [base2].[dbo].[operators]
2. Копируем данные из таблицы operators1 в таблицу operators базы base1.
set identity_insert [base1].[dbo].[operators] on;
insert into [base1].[dbo].[operators](id,name,department,password,dogovors,disp,expert,admin)
select id,name,department,password,dogovors,disp,expert,admin
from [base1].[dbo].[operators1]
where [base1].[dbo].[operators1].id in (54)
set identity_insert [base1].[dbo].[operators] off;

Либо можно сделать это одним запросом:
set identity_insert [base1].[dbo].[operators] on;
insert into [base1].[dbo].[operators](id,name,department,password,dogovors,disp,expert,admin)
select id,name,department,password,dogovors,disp,expert,admin
from [base2].[dbo].[operators]
where [base2].[dbo].[operators].id in (54)
set identity_insert [base1].[dbo].[operators] off;

1 марта 2012 г.

Управление размером почтовых ящиков в postfix

Mailbox Size Limit

По умолчанию почтовый ящик ограничен лимитом 50 мегабайт. Это означает, что если размер почтовых сообщений в ящике превысит значение 50 мб, вы увидите сообщение “File too large”.

Данный лимит для любого локального ящика равен 50 MB, но вы можете легко изменить его в файле main.cf. После сделанных изменений перезапустите postfix.
mailbox_size_limit=102400000

Данная команда увеличит размер лимита до 100 MB. Для отмены лимита используйте “0″.
mailbox_size_limit=0

Вы можете посмотреть текущие настройки вашего почтового сервера командой :
postconf -d | grep size
mailbox_size_limit = 51200000 
message_size_limit = 10240000


Message Size Limit
message_size_limit = 20480000

Данная опция указывает допустимый размер отправляемого сообщения, и в этом примере мы увеличили его до 20 MB.

Virtual Mailbox Limit

Обратите внимание, опция virtual_mailbox_limit предназначена для виртуальных аккаунтов, а не для локальных, которые контролируются опцией mailbox_size_limit. Значение по умолчанию у неё выставлено также в 50 MB
virtual_mailbox_limit=0

Мы снимаем ограничения.

Оригинал статьи расположен здесь.

13 января 2012 г.

Excel

Редко пользуюсь Excel.
Запишу, чтобы не забыть, как в 2007 версии поменять диапазон в поле со списком:
Данные - Поверка
Выбрать "Список" в источнике выбрать источник списка.

Также запишу, как снять защиту от изменений с листа и с книги.
Качаем отсюда http://www.straxx.com/excel/password.html соответствующую вашему пакету надстройку. Подключаем ее. Вуаля.

23 ноября 2011 г.

Asterisk, LG ipLDK, OOH323

Итак, у нас есть астериск с базовыми настройками, и у нас есть несколько АТС LG - LDK100, LDK300, LDK60.
У каждой АТС свой план нумерации. Находятся.. Можно сказать, что находятся в одной локальной сети (есть несколько филиалов, объединенных провайдером прозрачно в одну сеть).
АТС объединены по VOIP посредством H323. Настраивал не я, но вижу, как минимум, одну причину, почему именно H323, а не SIP - плата VOIB на LDK100, которая, насколько я знаю, не умеет SIP. Кстати, насчет плат. Вот что говорит bs:
LDK100 - 11 VOIB 4.3A 43 INS
LDK300 - 7 VOIB 2.2A 22 INS (на самом деле, это VOIBE)
LDK60 - 10 VOIB 2.3B 23 INS

Посредством PGM 324 настроена маршрутизация между АТС, в зависимости от набираемого номера. Все работает без проблем.
Сразу скажу, я далеко не специалист в области телефонии в целом, и ip-телефонии в частности.  
Так вот, необходимо объединить абонентов Asterisk с абонентами остальных АТС. Asterisk умеет общаться по H.232. Для этого есть несколько различных H323-драйверов  для Asterisk:
  1. chan_oh323 - исторически первый H323-драйвер для Asterisk. При работе использует RTP-стек библиотеки OpenH323, со всеми вытекающими отсюда последствиями (поддерживаемые кодеки, стабильность, совместимость). Поддерживается компанией inAccess Networks [2].
  2. chan_h323 - отличительной особенностью данного драйвера является более тесная интеграция с Asterisk (используется Asterisk-реализация протокола RTP), что позволяет достичь большей производительности по сравнению с chan_oh323. Платой же за это является несколько меньшая функциональность. Так, например, chan_h323 не имеет собственного буфера дрожания (jitter buffer) [3], а также не поддерживает некоторые кодеки.
  3. chan_ooh323c - драйвер компании Objective Systems Inc [4], основанный на их открытом H323 стеке - Objective Open H.323 for C.
  4. chan_woomera - драйвер, позволяющий связать Asterisk с сервером Woomera. На данный момент через woomera можно совершать только H323-звонки, хотя в будущем разработчики обещают обеспечить поддержку универсального уровня абстракции OPAL.
Вообще, вот здесь хорошо написано про различия этих драйверов.

21 ноября 2011 г.

Настройка связи между АТС LG LDK и подключение ip-телефонов

Давно это валялось в черновиках, доводить до состояния "хауту" лениво, но некоторые моменты освещу, чтобы самому не забыть.
Имеется несколько АТС LG, в данном случае LDK100 и LDK300.
В LDK100 установлена плата VOIB (прошивка 4.3A), с модулем расширения. Итого 6 линий.
В LDK300 установлена плата VOIBE (прошивка 2.2A), 12 линий.
Необходимо обеспечить связь между АТС и подключить 6 ip-телефонов. 

14 ноября 2011 г.

Ubuntu 10.04 & Asterisk 1.8

И все таки, готовые сборки с прикрученными графическими инструментами для управления Asterisk - это не очень хорошо. В том плане, что если ты не понимаешь логику функционирования asterisk, то с помощью ГУИ ты, конечно, настроишь то, что тебе надо. Но как только понадобиться лезть куда-то глубже.. ГУИ будут только мешать.
И опять же, зачастую готовые сборки идут на базе CentOS. Не спорю, возможно весьма хороший дистрибутив линукса. Но к RedHad подобным системам я не привык. Debian (Ubuntu) - как то ближе. Есть, кстати, хороший (наверное) дистрибутив на базе Gentoo - AstPBX (http://asteriskpbx.ru). Без всяких графических инструментов, только конфиги.
Ну так вот, решил я поставить ubuntu-server с длительным сроком поддержки, а на него asterisk, также с длительным сроком поддержки.
Писать очередную хау-тушку об установке и настройке астериска особо не хочется, так, для себя, черкну немного.
Про установку ubuntu server 10.04 рассказывать ничего не буду, ибо нечего =)
Ставим asterisk. Конечно, рекомендуется собирать из исходных кодов, но лениво =)
В стандартных репозиториях убунты есть версия (на ноябрь 2011 года) asterisk 1.6.
Подключаем официальный репозиторий астериска и ставим необходимые пакеты из него.

sudo apt-get install python-software-properties
sudo apt-key adv --keyserver pgp.mit.edu --recv-keys 175E41DF
sudo add-apt-repository "deb http://packages.asterisk.org/deb `lsb_release -cs` main"
sudo add-apt-repository "deb-src http://packages.asterisk.org/deb `lsb_release -cs` main"
sudo apt-get update
sudo apt-get install asterisk-1.8

После этого можно приступить к настройкам астериска. Как минимум, создать несколько sip-аккаунтов, которые могли бы звонить друг другу.
Сделаем бэкап файла sip.conf
mv /etc/asterisk/sip.conf /etc/asterisk/sip.conf_sample
Начнем с редактирования файла /etc/asterisk/sip.conf.

[general]
context=default
allowguest=no
bindport=5060
bindaddr=0.0.0.0

[320]
type=friend
context=phones
host=dynamic
secret=user1_password

[321]
type=friend
context=phones
host=dynamic
secret=user2_password 

Поскольку мы хотим как направлять вызовы в программный телефон, так и обеспечить клиенту возможность размещать вызовы, параметр type (тип) был определен как friend (друг). Существует еще два параметра: user (пользователь) и peer (равноправный участник сети). С точки зрения Asterisk user задается для входящих вызовов, а peer – для исходящих звонков (через приложение Dial()). friend – это просто краткая запись, определяющая и пользователя, и равноправного участника. Если есть сомнения, задавайте тип friend. Опция host (хост) используется для определения местонахождения клиента в сети, когда Asterisk необходимо направить ему вызов. Это значение может быть задано статически, например host=192.168.1.100, или, если клиент имеет динамический IP-адрес, задается host=dynamic. Если для опции host задано значение dynamic и клиент сконфигурирован для автоматической регистрации, Asterisk получит от конечной точки (то есть от телефонного аппарата или программного телефона) пакет REGISTER, из которого Asterisk сможет узнать, какой IP-адрес использует равноправный SIP-участник. Если вы не доверяете своей сети, вероятно, следует задать пароль. Для этого в описание устройства добавляется следующая строка. Это один из тех параметров, которые не являются обязательными, но желательны:
secret=user1_password
Сделаем бэкап файла extensions.conf
mv /etc/asterisk/extensions.conf /etc/asterisk/extensions.conf_sample
После этого можно создать заново данный файл с примерно следующим содержанием:
[globals]

[general]
autofallthrough=yes

[phones]
exten => _3XX,1,Dial(SIP/${EXTEN})
exten => _3XX,n,Hangup()

После внесения изменений в этот файл, необходимо делать dialplan reload.
И почему то все это заработало только после core restart now.
После этого звонить друг другу должно получаться без проблем.
Помогли следующие источники:



1 ноября 2011 г.

Отмена перехода на зимнее время средствами системного реестра и GPO




Уже давно не секрет, что в октябре 2011 года уже никто в России не будет переводить свои часы на зимнее время. Для России уже вышло обновление, благодаря которому из диалогового окна«Выбор часового пояса» убирается флажок«Автоматический переход на летнее время и обратно», а также меняется часовой пояс, на примере с Москвой, с «GMT +3:00» на «GMT +4:00».
Многие пользователи, мягко говоря, не совсем любят обновлять свои операционные системы, и данное обновление может просто не быть установлено на компьютере и в ночь с последней субботы на воскресенье октября часы автоматически переведутся на час вперед. Также, поскольку уже прекращена поддержка операционной системыWindows 2000, а в просторах Рунета можно найти большое количество компаний – владельцев данной операционной системы, для таких пользователей следует ожидать такой же участи.
Перед тем как рассказать о реализации возможности, повторяющей действия указанного выше обновления, мне хотелось бы рассказать, что же делает с операционной системой этот патч. Данное обновление изменяет несколько параметров в системном реестре, которые отвечают за настройки часового пояса. Новые значения для параметров вносятся в следующих разделах реестра:

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones – база данных часовых поясов;
  •  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation– сведения о выбранном часовом поясе.

31 октября 2011 г.

Автоматически прописать путь к базам в 1С 8.2

Начинается переход с 1с 7.7 на 8.2.
Необходимо в автоматическом режиме добавить информационные базы всем пользователям.
В 7.7 это делалось путем добавления необходимого ключа в реестр с помощью логон-скрипта.
В 8.2. нашел следующий способ.
Создаем файл с расширением .v8i и с содержанием, подобным этому:
[Демо]
Connect=File="\\SERVER\Share1c\Base\Demo";
OrderInList=1
Folder=/
OrderInTree=1
App=Auto
DefaultApp=ThickClient
WA=1
Version=8.2.13.219
Еще есть такой вариант:
[Название базы в списке]
Connect=Srvr=SERVER1;Ref=demo
OrderInList=1
Folder=/
OrderInTree=1
App=Auto
DefaultApp=ThickClient
WA=1
Version=8.2.13.219
Где SERVER1 - имя сервера приложений 1С, demo - имя базы данных на сервере.
Далее в файле %ProgramFilesDir%\1cv82\common\1CESCmn.cfg прописываете строку (без кавычек) : "CommonInfoBases=\\SERVER\SHARE\ibcommon.v8i"
Где SERVER - имя сервера с сетевой папкой, SHARE - имя самой шары.
Файл 1CESCmn.cfg можно подкладывать любым доступным способом (скриптом, при установке клиента и пр.).
Добавление новой базы происходит правкой текстового файла на шаре, пользователи увидят новую базу при следующем запуске 1С.
В случае терминального сервера, достаточно просто сразу положить этот файл конфигурации в необходимое расположение.
В случае, если используется название базы на русском языке, файл необходимо сохранить в UTF8.