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

Время в CDR и в записи

Добавлено: 17 сен 2014, 11:01
seeker
Коллеги, сталкнулся со странным моментом - различается время в CDR и у файлов записи:
Как пример - время в CDR (первая колонка) время в имени файла (вторая колонка)
16:08:33 16:08:39.wav
16:17:30 16:17:37.wav
16:17:51 16:17:57.wav
16:42:39 16:42:46.wav
16:46:54 16:47:00.wav
Файлы пишутся вот так:
exten => ####,n,Set(D=${STRFTIME(${EPOCH},,%H:%M:%S)})
exten => ####,n,Set(FILENAME=${PATH}/${D})
exten => ####,n,MixMonitor(${FILENAME}.wav,b)

Куда бы копануть что бы время совпадало?

Re: Время в CDR и в записи

Добавлено: 17 сен 2014, 11:23
Wapo
Не используйте ВРЕМЯ - используйте ${UNIQUEID} - это и ВРЕМЯ и уникальный идентификатор звонка.

Re: Время в CDR и в записи

Добавлено: 17 сен 2014, 13:50
seeker
Честно говоря хотелось бы этого избежать потому что простого и наглядного способа перевода uniqid в человекопонятную форму я не нашел.

Re: Время в CDR и в записи

Добавлено: 17 сен 2014, 16:42
virus_net
seeker писал(а):сталкнулся со странным моментом - различается время в CDR и у файлов записи
А что тут странного ? Запись вызова может начинаться гораздо позже, чем пришел сам вызов, т.к. запись вызова зависит от того когда будет вызываться соответствующая команда в dialplan.
seeker писал(а):способа перевода uniqid в человекопонятную форму я не нашел
uniqid это unixtime и способов "перевода" великое множество.
Напримере uniqueid=1410940677.432
1.

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

SELECT `uniqueid`, FROM_UNIXTIME(`uniqueid`) as `uniqueid_AS_time` FROM `cdr` WHERE 1 order by `uniqueid` DESC LIMIT 0,1
uniqueid: 1410940677.432
uniqueid_AS_time: 2014-09-17 11:57:57.432000
2.

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

# date -r 1410940677
Среда, 17 сентября 2014 г. 11:57:57 (MSK)
3.

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

# php -r 'print date("d.m.Y H:i:s","1410940677.432");'
17.09.2014 11:57:57
и т.д.