LINUX.ORG.RU
ФорумAdmin

DID не пишется в CDR

 


0

1

Помогите разобраться! Астериск 13 , FREEPBX 13 , модемы настроены, звонит все нормально, но поле DID в упор не заполняется в CDR , а это поле мне нужно обязательно! extension_custom.conf [incoming-datacard] exten => +79НОМЕР,n,Set(CDR(accountcode)=${DID}) exten => +79НОМЕР,1,Dial(SIP/790&SIP/791) exten => h,1,Hangup()

dongle.conf [D79НОМЕР] imei=355НОМЕР imsi=250НОМЕР context=incoming-datacard

Подозреваю что не так настроен екстеншен..



Последнее исправление: skynetyar (всего исправлений: 2)

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

Ссылка по теме http://tech.iprock.com/?p=4269

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

upcFrost ★★★★★
()
Последнее исправление: upcFrost (всего исправлений: 1)

1. Проверь, что у тебя в ${DID} вообще что-то есть, а то может и заполняется, но пустотой.

2. Проверь в cdr.conf что у тебя разрешено писать accountcode

3. Проверь, что у тебя звонок приходит на этот экстеншн, а не на другой, в который ты на самом деле не прописал Set(CDR()...)

zgen ★★★★★
()
Ответ на: комментарий от skynetyar

Set(CDR(DID)=${EXTEN}) Так не канает =(

И не должно.

All of the CDR field names are read-only, except for accountcode, userfield, and amaflags

zgen ★★★★★
()
Ответ на: комментарий от zgen

Поле DID пустое ,запросом к базе смотрел,вычитал что freepbx может и не показать..

Пробую и так exten => +79НОМЕР,n,Set(CDR(accountcode)=${EXTEN}) exten => +79НОМЕР,1,Dial(SIP/790&SIP/791)

Так тоже не пишет.. cdr.conf пустой. cdr_adaptive_odbc.conf [asteriskcdrdb] connection=asteriskcdrdb loguniqueid=yes table=cdr alias start => calldate

Приходит на тот ,забыл написать что я использую dongle свисток может это влияет ?

skynetyar
() автор топика
Ответ на: комментарий от skynetyar

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

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

Юзаю тоже другой гуй для просмотра таблиц.. У меня была запись в DID но при этом не работала связь после того как я использовал Goto в exten ..

skynetyar
() автор топика
Ответ на: комментарий от upcFrost

Хотел еще спросить,должен ли dongle транк как то показываться в командах астериска ? он показывается только в команде dongle show а в sip show registry не показывается.

extensions_custom.conf в строке exten => +79номер,n,goto(тут откуда и где указан контекст?,${IMEI},1)

skynetyar
() автор топика
Ответ на: комментарий от skynetyar

вроде он только в dongle show и должен быть. плохо помню, работал со свистками раза 2-3 всего. но основная проблема про запись DID в базу с донглом не связана, в плане что там нет особой специфической конфигурации.

upcFrost ★★★★★
()
Ответ на: комментарий от skynetyar

ну давай тогда пройдем по всему диалплану. во-первых проверь включена ли отладка, вернее отображение шагов диалплана в консоли. потом сделай вызов и проверь, проходит ли система по нужному тебе плану (грубо говоря есть ли там нужная строка). дальше возьми список внутренних переменных астера и посмотри через NoOp куда может скидываться то что тебе нужно. Потом как ты уже сам написал через Set должно заработать.

идея с exten => +79НОМЕР,n,Set(CDR(accountcode)=${EXTEN}) правильная, но возможно либо dongle не хочет что-то куда-то писать, либо вызывается не тот контекст или строка перепрыгивает через Goto, либо accountcode где-то переписывается дальше по этапу

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

Вот так пишет в поле DID то что мне нужно exten => +79номер,1,Set(CDR(DID)=${EXTEN}) exten => +79номер,n,Goto(from-trunk,SIP/790&SIP/791,1) Но включается запись абонент не доступен,что с from-trunk так думаю? Это в extensions.conf ?

skynetyar
() автор топика
Ответ на: комментарий от upcFrost

В extensions.conf [from-trunk] include => from-pstn ;-------------------------------------------------------------------------------

;------------------------------------------------------------------------------- ; from-pstn: ; ; Entry context for calls from the outside world to hit FreePBX [from-pstn] include => from-pstn-custom ; create this context in extensions_custom.conf to include customizations include => ext-did include => ext-did-post-custom include => from-did-direct include => ext-did-catchall ; THIS MUST COME AFTER ext-did

skynetyar
() автор топика
Ответ на: комментарий от upcFrost

Все победил! Так как и думал напортачил в диалплане.. Контексты разделил на 2 , нужно было явно указывать командой Goto на нужный контекст в котором и делал Dial на внутренние номера

exten => +79номер,1,Set(CDR(DID)=${EXTEN}) exten => +79номер,n,Goto(dongle-92номер,,1)

[dongle-92номер] exten => +79номер,1,Dial(SIP/790&SIP/791)

skynetyar
() автор топика
Ответ на: комментарий от skynetyar

эм... ну круто, рад что получилось. А что, from-trunk не пересылал? О_о я помню там freepbx ставил какие-то ограничения

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

Ну это тоже самое было бы внутри from-trunk можно custom подключать ну в общем на тоже грабли не стал наступать, решил все в одном custome сделать да и все.

Спасибо за помощь!

skynetyar
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.