ODBC SELECT ARRAY
Ищу ошибку
Сообщений: 84
|
ODBC SELECT ARRAY
[GET_PHONE_REDIRECT]
dsn=asteriskfunctins
read=SELECT active,time,destnumber FROM redirect where usernumber='${ARG1}' - так не хочет выдавать значения
;read=SELECT destnumber FROM redirect where usernumber='${ARG1}' - так выдаёт одно значение, что и задумывалось
Вот так пытаюсь запихать переменные
exten => 999028,n,Set(ARRAY(active,time,destnumber)=${ODBC_GET_PHONE_REDIRECT(${EXTEN})})
Вот так вот в консоли
-- Executing [999028@test-redirect:2] Set("SIP/128-b7720728", "ARRAY(active|time|destnumber)=") in new stack
-- Executing [999028@test-redirect:3] NoOp("SIP/128-b7720728", "ACTIVE = ") in new stack
-- Executing [999028@test-redirect:4] NoOp("SIP/128-b7720728", "TIME = ") in new stack
-- Executing [999028@test-redirect:5] NoOp("SIP/128-b7720728", "destnumber = ") in new stack
Вот не могу извлечь несколько данных разом. У меня Asterisk 1.4.21.
|
Откуда: Уфа
Сообщений: 5856
|
Re: ODBC SELECT ARRAY
1) включи логирование запросов в БД, чтобы было видно что уходит в нее
2) покажи то, что проиходило ДО приведенных строк CLI
3) попробуй поставить пробелы после запятой
4) запрос должен быть в одну строку.
|
Сообщений: 84
|
Re: ODBC SELECT ARRAY
Пробовал пробелы ставить и не ставить в ARRAY и в SELECT
В консоли ни чаго и нет больше, специально для теста всего этого пару строчек.
-- Executing [999028@test-redirect:1] NoOp("SIP/128-b6b5e918", "999028") in new stack
-- Executing [999028@test-redirect:2] Set("SIP/128-b6b5e918", "ARRAY(active| time| destnumber)=") in new stack
-- Executing [999028@test-redirect:3] NoOp("SIP/128-b6b5e918", "ACTIVE = ") in new stack
-- Executing [999028@test-redirect:4] NoOp("SIP/128-b6b5e918", "TIME = ") in new stack
-- Executing [999028@test-redirect:5] NoOp("SIP/128-b6b5e918", "destnumber = ") in new stack
-- Executing [999028@test-redirect:6] Busy("SIP/128-b6b5e918", "") in new stack
== Spawn extension (test-redirect, 999028, 6) exited non-zero on 'SIP/128-b6b5e918'
Логи пока не могу, боюсь FrePBX отвалиться или CDR перестанут собираться, дёргнуть не могу клиенты разговоры говорят.
|
Откуда: Уфа
Сообщений: 5856
|
Re: ODBC SELECT ARRAY
тогда в logger.conf
добавь/раскоментируй строчку
console => notice,warning,error,debug,verbose
messages => notice,warning,error,debug,verbos
и перезагрузи логгер
module reload logger
тогда будут валиться ошибки в консоль, а не только в лог
|
Сообщений: 84
|
Re: ODBC SELECT ARRAY
Я тут по покопался, вместо яиц вставил новые глаза, и правильно запрос спрашивал в БД time -> timer
Буду дальше по книжке эксперименты ставить. Спасибо, что не бросили.
|
Сообщений: 84
|
Re: ODBC SELECT ARRAY
console => notice,warning,error,debug,verbose
messages => notice,warning,error,debug,verbos
Спасибо, полезная штука.
|
Сообщений: 135
|
Re: ODBC SELECT ARRAY
Страшная штука, на самом деле. Особенно на отличной от нуля нагрузке
Лучше включить logging в самом odbc (odbcinst.ini):
man:
[xxx]
Trace = Yes
TraceFile = /tmp/sql.log
Или банально воспольнозоваться tcpdump с -As0, в mysql/postgresql квери и ответы летят в практически нормально читаемом plain text
|
|