Стандартная проблема =) esmdr не Присоединяется к MySQL по ODBC.

147 views
Skip to first unread message

Рахман Саидов

unread,
May 19, 2015, 1:43:40 AM5/19/15
to pbxga...@googlegroups.com
Доброго времени суток!
Прочитал почти все посты про присоединение eSMDR к MySQL. 
Не передается в базу.
поэтапно.
1. Версия eSMDR 1.1.
2. Windows Server 2008 R2 Enterprise. (в домене/ работаю из под учетки с правами локального админа)
3. SQL Server 2008 R2 x64
4. ODBC настраивалась через x32 SQL Server Native Client 10.0 (тест на коннект к базе успешный)

настройки eSMDR

[PBX]

model="TDE"
method="TCP"
countrycode="998"
areacode="71"
international="00"
longdistance="0"
minlocal=7
maxlocal=7
addchar="2"

[TCP]
ip="10.10.*.**"
port=2300
login="SMDR"
password="PCCSMDR"
[LOG]
enabled=1
filename="log\smdr-%y-%m.log"
[SMDR]
date="DD/MM/YY"
format="DDDDDDDD TTTTTTT EEEEE CC NNNNNNNNNNNNNNNNNNNNNNNNN RRRR dddddddd AAAAAAAAAA ccc"
incoming="<I>"
timesrc="PBX"
[ODBC]
enabled=1
dsn="esmdr"
login="sa" соединяюсь НЕ через W.A.
password="***" указан правильно =)
table="dbo_calls" пробовал и просто "calls"
fields="pbxid, timeofcall, cd, ext, co, ring, dialnum, dialname, duration, accode, incoming, cost"
values="1, '%Y%M%D %h:%m:%s', '%c', '%E', '%C', %r, '%n', '%N', %d, '%a', %i, %F.%f"
sql="mysq2008"
[SERVICE]
servicename="EsmdrService"
servicedisplayname="eSMDR LOGING" 
 Настройки таблицы SQL во вложении (пробовал с галочками "Allow Nulls").
ODBC перешивал неоднократно.
Не могу понять почему не хочет работать.
Ошибка стандартная, файлик скидывается в safeengine, база не заполняется. С SQL работаю недавно.
Помогите пожалуйста. 
SQL.jpg

Wowa

unread,
May 19, 2015, 6:13:16 AM5/19/15
to pbxga...@googlegroups.com
Не совсем понятно, зачем вы создали таблицу Calls в системных таблицах. Рекомендую создать отдельную базу для esmdr.
Создавайте источник данных на той машине, где работает eSMDR. Проверьте, что по умолчанию выбрана нужная база. Доступ к таблице: Calls или dbo.Calls (через точку).
Внимательно проверьте структуру и тип данных.
pbxid, ring, duration, incoming - суть int
timeofcall -  datetime
cd, ext, co, dialnum, dialname, accode - char.
У вас сразу видны ошибки, incoming сделали varchar, а в строке values оно без кавычек. Поля cost вообще нет в таблице, следовательно нужно убрать его из fields. И %F.%f убрать из values.

Рахман Саидов

unread,
May 21, 2015, 2:00:48 AM5/21/15
to pbxga...@googlegroups.com
Сделал как Вы сказали:
Подкорректировал ini-файл, пересоздал базу в SQL с полями согласно Вашему описанию, пересоздал ODBC (тест соединения к базе - "успешно") перезагрузил ПК и запустил eSMDR - та же ошибка (запуск safeengine).
Переустановил Windows, поднял заново SQL, скачал исходники eSMDR v1.1 - все делал под Администратором. соединение с SQL через "sa" и в eSMDR и в ODBC. Так же все не работает =(.
     
[PBX]
model="TDE"
method="TCP"
countrycode="998"
areacode="71"
international="00"
longdistance="0"
minlocal=7
maxlocal=7
addchar="2"

[TCP]
ip="10.10.1.46"
port=2300
login="SMDR"
password="PCCSMDR"
[LOG]
enabled=1
filename="log\smdr-%y-%m.log"
[SMDR]
date="DD/MM/YY"
format="DDDDDDDD TTTTTTT EEEEE CC NNNNNNNNNNNNNNNNNNNNNNNNN RRRR dddddddd AAAAAAAAAA ccc"
incoming="<I>"
timesrc="PBX"

[ODBC]
enabled=1
dsn="esmdr"
login="sa"
password="*****"
table="dbo.calls" (так же пробовал "calls")
fields="pbxid, timeofcall, cd, ext, co, ring, dialnum, dialname, duration, accode, incoming"
values="1, '%Y%M%D %h:%m:%s', '%c', '%E', '%C', %r, '%n', '%N', %d, '%a', %i"
sql="mysq2008"

[SERVICE]
servicename="EsmdrService"
servicedisplayname="eSMDR LOGING" 

Может ли не работать из за мини-атски?
 
SQL.jpg

Wowa

unread,
May 21, 2015, 3:09:48 AM5/21/15
to pbxga...@googlegroups.com
Если программа сбрасывает данные в safeengine, настройки АТС не при чем. Дополнительно можно проверить, включив запись лога в CSV.

Ошибка, скорее всего, где-то в настройках DSN или SQL.
Из того, что я заметил - неправильно указан тип сервера: sql="mysq2008"
Допустимые настройки "mssql2008" или "mysql4". Должно, правда, и так работать, если этот параметр указан с ошибкой, программа применяет режим максимальной совместимости. Но, что еще смутило - тема у вас  "не Присоединяется к MySQL по ODBC", а на скриншотах настройки Microsoft SQL.

Если не найдете ошибку, могу подключиться удаленно и все настроить. Но, это уже платная поддержка.
Reply all
Reply to author
Forward
0 new messages