CDR(uniqueid) и queue_log callid - проблемка...
Откуда: Уфа
Сообщений: 5856
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
468 | 1250600971 | 1250600724.4034 | queue113 | SIP/101 | CONNECT | 0|1250600732.4037|0
скорее всего первый номер - это id входящего звонка, а второй 0 исходящего.
После очереди у вызова новый номер по идее, отдельно писать надо
|
Откуда: Нижний Новгород
Сообщений: 277
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
uniqueid это уникальный идентификатор канала - он присваивается каналу когда тот создается и не меняется до смерти канала. У установленного звонка между двумя телефонами как минимум два UNIQUEID так как используется два канала
|
Сообщений: 276
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
switch: 468 | 1250600971 | 1250600724.4034 | queue113 | SIP/101 | CONNECT | 0|1250600732.4037|0
скорее всего первый номер - это id входящего звонка, а второй 0 исходящего.
После очереди у вызова новый номер по идее, отдельно писать надо
да, первый номер генерится когда звонящий попадает на очередь.
второй номер это уже uniqueid когда оператор отвечает.
видимо так и должно быть....
|
Сообщений: 276
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
хорошо, а этот callid который создаётся при попадании звонка в очередь, можно как-нибудь вычленить в переменные?
пока что пробовал select callid from queue_log where data like '%%1250592427.2777%%'; напрямую с консоли постгреса, работает.
но что то func_odbc не очень дружит с символом %.
|
Сообщений: 276
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
вот тут пишут что uniqueid должен возвращаться
http://www.asteriskguru.com/archives/asterisk-dev-question-about-uniqueid-vt94038.html
The sipcallid not solve my problem. I show you the problem with an scenario
(example):
1. SIP/1005 calls to 102 queue. That generate a call with uniqueid:
1165492430.2
2. In app_queue.so a second call is delivered to agent/5004. That call
has uniqueid 1165492431.0 (in that step a new channel is generated without
relation with channel in step 1)
3. In app_queue.so a third call is delivered to local/1004. That call
has uniqueid 1165492430.3 (in that step a new channel is generated without
relation with channel in step 1).
4. When SIP/1006 answers the call a link is produced with uniqueid
1165492430.2
You can see that the uniqueid in 1. and 5. is the same uniqueid, but from
2. to 3. the uniqueids are diferents and the channels for that steps
havenÂ’t got any field to relation the current call with the call in step 1.
I need obtain the uniqueid 1165492430.2 in steps 2 and 3.
|
Сообщений: 276
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
вот тут тоже подобная проблема... http://www.trixbox.org/forums/trixbox-forums/help/uniqueid-too-unique-call-queue-gets-multiple-uniqueid
uniqueid входящего вызова не совпадает с uniqueid установившегося вызова звонящий-оператор.
|
Откуда: Уфа
Сообщений: 5856
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
ты можешь до попадания в очередь заполнить переменную так:
exten => s,n,set(__uniquetd-old=${UNIQUEID})
и использовать это значение в канале после очереди.
|
Сообщений: 276
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
я тоже так подумал :)
если задать некую переменную равную ${UNIQUEID} до входа в queue, то она совпадает с тем uniqueid что пишется в queuelog.
проверил.
|
Сообщений: 276
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
не хочет задаваться переменная. диалплан примерно такой:
в extensions.ael
t => {
QID = ${UNIQUEID}; // в консоли переменная пишется, т.е. вызов фунции корректный
Queue(queue113);
Return();
};
затем при установлении соедиения с оператором queue, вызывается макро (оно задаётся в queues.conf), прописанное в extensions.conf.
вот там переменная QID возвращается пустой.
|
Откуда: Уфа
Сообщений: 5856
|
Re: CDR(uniqueid) и queue_log callid - проблемка...
хз как там в ael, но в обычном диалплане можно просто добавить два символа подчеркивания для наследования переменной. Читай ссылку, я выше давал.
|
|