Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Как я обновлял Asterisk

Как я обновлял Asterisk

Проблемы переход с 1.2 на 1.4
Откуда: SPB
Сообщений: 61

Re: Как я обновлял Asterisk

так я этот АГИ и запускаю после полного завершения вызова:
exten => h,1,DeadAGI(aline_bill.agi)

"start time" и "end time" читаются.
понятно, что можно считать billsec вручную их вычитанием, но это, по моему, костыль.
2009-04-14 10:13

Сообщений: 866

Re: Как я обновлял Asterisk

ПОЛНОЕ завершение это когда диалплан полностью завершен.
у вас он еще выполняется значит не полное...
2009-04-14 11:27

Сообщений: 1573

Re: Как я обновлял Asterisk

banalno:

так я этот АГИ и запускаю после полного завершения вызова:
exten => h,1,DeadAGI(aline_bill.agi)
полное завершение это - Hangup

banalno:

"start time" и "end time" читаются.
понятно, что можно считать billsec вручную их вычитанием, но это, по моему, костыль.

Зачем считать. В переменной ${DIALEDTIME} содержится полное время вызова (${CDR(duration)}). В переменной ${ANSWEREDTIME} содержится время разговора (${CDR(billsec)}).
Эти переменные в момент выполнения екстена h равны переменным из CDR (т.е. уже не изменятся, и как уже говорил, в CDR отсюда данные и берутся), только последние (CDR()) запишутся после Hangup ...
2009-04-14 13:11

Откуда: SPB
Сообщений: 61

Re: Как я обновлял Asterisk

может я чего-то не понимаю, но DeadAGI выполняется после того как абонент завершил вызов, т.е. после Hangup. или я не прав?
Команда DeadAGI - это вариант команды AGI, которая позволяет запускать приложения на разъединенных каналах.


за совет спасибо.
попробую.
2009-04-14 13:13

Сообщений: 1573

Re: Как я обновлял Asterisk

banalno:

Команда DeadAGI - это вариант команды AGI, которая позволяет запускать приложения на разъединенных каналах.
разьединенные каналы и Hangup - это, в общем, не одно и то-же ... )

banalno:

за совет спасибо.
попробую.

вот это правильное решение ... ))
2009-04-14 13:27

Сообщений: 866

Re: Как я обновлял Asterisk

полное завершение это - Hangup
Ну это ваше мнение. После выполнения Hangup() диалплан продолжает выполнятся (h) и поля CDR еще не все проставлены.


Вообще что вы до AGI докопались все? У него и так AGI выполняется нормально, проблема только в том что поля CDR не все проставлены. Потому что _полного_ завершения звонка с т.з. Астериска еще не наступило.

Надо использовать те переменные которые выше насоветовали и которые уже проставлены....
2009-04-14 13:52

Сообщений: 1573

Re: Как я обновлял Asterisk

dimas:

Ну это ваше мнение. После выполнения Hangup() диалплан продолжает выполнятся (h) и поля CDR еще не все проставлены.
Это новость. Расскажите поподробнее ...

P.S. А "мнение" это - не мое. Это - данность ...
2009-04-14 14:03

Сообщений: 866

Re: Как я обновлял Asterisk

Это новость. Расскажите поподробнее ...
Пожалуйста:

[testcontext]
exten => s,1,Answer
exten => s,n,Playback(silence/5)
exten => s,n,Noop(bs before hanfup ${CDR(billsec)})
exten => s,n,Hangup

exten => h,1,Noop(in h ext)
exten => h,n,Noop(bs in h ext ${CDR(billsec)})


spb-voip2*CLI>
-- Executing [113@default:1] Goto("SIP/1011-095f9878", "testcontext|s|1") in new stack
-- Goto (testcontext,s,1)
-- Executing [s@testcontext:1] Answer("SIP/1011-095f9878", "") in new stack
-- Executing [s@testcontext:2] Playback("SIP/1011-095f9878", "silence/5") in new stack
-- <SIP/1011-095f9878> Playing 'silence/5' (language 'en')
-- Executing [s@testcontext:3] NoOp("SIP/1011-095f9878", "bs before hanfup 0") in new stack
-- Executing [s@testcontext:4] Hangup("SIP/1011-095f9878", "") in new stack
== Spawn extension (testcontext, s, 4) exited non-zero on 'SIP/1011-095f9878'
-- Executing [h@testcontext:1] NoOp("SIP/1011-095f9878", "in h ext") in new stack
-- Executing [h@testcontext:2] NoOp("SIP/1011-095f9878", "bs in h ext 0") in new stack



P.S. А "мнение" это - не мое. Это - данность ...


Ну значит это ваша данность. А у других - другая...
2009-04-14 14:15

Сообщений: 1573

Re: Как я обновлял Asterisk

По завершению вызова выполняю: exten => h,1,DeadAGI(aline_bill.agi)
Уважаемый "вундеркинд" димас, будьте добры, пляшите вот от этого ... )))

P.S. Ес-но имелось ввиду выполнение - "h"
2009-04-14 14:26

Сообщений: 866

Re: Как я обновлял Asterisk

Хм. Я вам сказал достаточно простой факт:

После выполнения Hangup() диалплан продолжает выполнятся (h) и поля CDR еще не все проставлены.


Покажите пальцем в каком месте мое утверждение неверное? Что вы имели в виду каку-то другую ситуацию (а именно выполнение hangup УЖЕ в экстеншене h) - это ваше личное дело. Я говорил про Hangup вообще. Что его запуск продолжает выполнение диалплана (выполняется экстеншене h).

И я же вас просил держаться в рамках - тон свой приберегите для друзей если им это нравится. Я пока не опускался до характеристик вашего интеллектуального развития хотя, можете не сомневаться, имею о нем свое мнение.
2009-04-14 14:48

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru