Страница 1 из 1

запись данных об операторах

Добавлено: 31 май 2013, 10:03
april22
Здравствуйте .
подскажите как лучше реализовать задачу с минимальными трудо затратами и максимумом быстродействия :-)
Есть FreePBX-Distro AST 1.8. ( мало что уже осталось в стандарных конфигах )

суть задачи считывать время работы операторов в группах . а для этого надо смотреть когда залогинелист и разлогинелись .
сейчас делается вот так

Код: Выделить всё

exten => s,n,system(echo "${STRFTIME(${EPOCH},,%d%m%Y-%H:%M:%S)} -logoff ${QUEUENO} - ${CALLBACKNUM} -> ${EXTEN}" >> /var/log/asterisk/calls2)
хотелось бы точно так же положить эти данные в базу.
в голову пришли два решения
1.AGI
2.exten => s,n,Set(DB()) ( вот тут с синтаксисом и возможностями плохо конечно )

подскажите как оптимальней сделать .

Re: запись данных об операторах

Добавлено: 31 май 2013, 10:10
Vlad1983
func_odbc почти напрямую в БД
во всем известной книге исчерпывающее описание

Re: запись данных об операторах

Добавлено: 31 май 2013, 12:16
april22
вообщем пошол в этом направлении
http://www.voip-info.org/wiki/view/Asterisk+cmd+MYSQL

Re: запись данных об операторах

Добавлено: 31 май 2013, 12:20
Vlad1983
4 строки против одной и прочие прелести
решать вам, конечно

Re: запись данных об операторах

Добавлено: 31 май 2013, 12:43
april22
я понимаю что будет одна строка - но что то у меня не получилось с синтаксисом

Re: запись данных об операторах

Добавлено: 31 май 2013, 12:49
Vlad1983
книжку читаем "Ощутим могущество func_odbc: система «горячих столов»"
со стр. 325 и до упора
всё элементарно

Re: запись данных об операторах

Добавлено: 31 май 2013, 13:18
april22
ошибки сыпит
гуглю читаю , спасибо за советы

Re: запись данных об операторах

Добавлено: 31 май 2013, 13:32
april22

Код: Выделить всё

...
exten => s,n,MYSQL(Connect connid localhost root123 123 operator)
exten => s,n,GotoIf($["${connid}" = ""]?error,1)
exten => s,n,MYSQL(Query resultid ${connid})
exten => s,n,MYSQL(insert into `AU` (`data`)VALUES('${STRFTIME(${EPOCH},,%d%m%Y}))
exten => s,n,MYSQL(Disconnect ${connid})...
понимаю что где то что то не дописал - если пошлете в гугл :-) придется идти и дальше сидеть и читать

Re: запись данных об операторах

Добавлено: 31 май 2013, 13:42
Vlad1983
одиночная кавычка пропущена

Re: запись данных об операторах

Добавлено: 31 май 2013, 16:01
april22

Код: Выделить всё

......
exten => s,n,MYSQL(Query resultid ${connid} insert into `AU` (`data`)VALUES('${STRFTIME(${EPOCH},,%d%m%Y}'))
......
вот атк заработало как надо , далее полировка