Jump to content

Recommended Posts

Posted

Собственно и весь вопрос в названии.

К базе подключиться могу, и запрос в консоли выполняется.

SELECT TOP 1 famil+' '+imja+' '+otch AS fio FROM dbo.F2 WHERE ntel='тут номер телефона' OR cellular='тут номер телефона'

Выбираем клиента по номеру. это работает если руками. Куда прописать чтобы само пока не понятно.

У меня Elastix 4 . Пока решил это выгрузкой из виндовой базы и последующей загрузкой в базу Elastix.

Posted (edited)

Да, похоже на мысли вслух. Мне лично частенько помогает, можно посмотреть на свои мысли со стороны.

В общем докопался сам.

После того что получилось у меня в первом сообщении делаем следующее:

 

1. Создаём функцию в func_odbc.conf

[F_I_O]
dsn=MS_SQL
read=SELECT famil+' '+imja+' '+otch AS fio FROM dbo.F2 WHERE ntel='${ARG1}' OR cellular='${ARG1}'

2. В res_odbc_custom.conf

[MS_SQL]
enabled => yes
dsn => MS_SQL
share_connections => no
limit => 5
username => sa2
password => 1234
pre-connect => yes
max_connections => 30

3. В extensions_custom.conf создаём custom destination и марширутизируем вызов на него.

[from-trunk-sip-EDK-custom]
exten => _X.,1,Noop(Fixing DID using information from SIP TO header)
exten => _X.,n,Set(CALLID=${CALLERID(num):-10})
exten => _X.,n,Set(ret_func=${ODBC_F_I_O(${CALLID})})
exten => _X.,n,set(CALLERID(name)=${ret_func})
exten => _X.,n,Set(GROUP()=OUT_13)
exten => _X.,n,Goto(ext-group,600,1)

Если кто заинтересуется, могу написать как к MSSQL подключился.

Edited by danila77
добавил сообщение
Posted

У меня заработал следующий способ.

1. подключаем репозиторий майкрософт (msprod.repo)

2. устанавливаем пакеты как на скриншоте. (может нужны и не все, но я поставил так)

2018-11-11_21-29-58.thumb.png.7d33fecb517a5ec5a46dec3aaea5cae2.png

3. в /etc/odbcinst.ini:

[ODBC_Driver_17_for_SQL_Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.2.so.0.1
UsageCount=1

В названии драйвера поменял пробелы на подчёркивания, с пробелами почему-то не работало.

4. В odbc.ini:

[MS_SQL]
Driver=ODBC_Driver_17_for_SQL_Server
Server=адрес сервера
Port=1433
Database=имя базы
UID=пользователь для запроса
PWD=пароль 

Тут в реквизиты для подключения.

5. проверяем настройки:

osql -S MS_SQL -U пользователь -P пароль

Если видим такое:

Configuration looks OK.  Connection details:

                   DSN: MS_SQL
              odbc.ini: /etc/odbc.ini
                Driver: /opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.2.so.0.1
       Server hostname: у меня тут IP сервера
               Address: у меня тут IP сервера

Attempting connection as sa2 ...
+ isql MS_SQL пользователь пароль -v
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>

То значит подключение проходит, и можно делать запрос.

Если выходят ошибки, то смотрим что не так и исправляем.

У меня просто выкидывало пробелы в названии драйвера, после выше приведённого исправления заработало.

 

msprod.repo

Posted
14 часов назад, danila77 сказал:

В названии драйвера поменял пробелы на подчёркивания, с пробелами почему-то не работало.

Возможно надо было закавычить название

Posted
20 часов назад, EugeneTV сказал:

Возможно надо было закавычить название

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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.