Страница 2 из 3
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 09:12
				 Zver
				to Vlad1983
Т.е. я не смогу прервать входящий звонок? Насколько я понимаю это не правильно. Так как мне это исправить? В чем проблема?
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 09:35
				 Vlad1983
				измерить напряжения вызова, в отвеченном состоянии и сразу после размыкания шлейфа и сверить со стандартными для РФ.
вручную мультиметром проблемно (он инерцию большую имеет), но возможно.
осциллограф или регистратор напряжения приобрести, конечно, финансы не позволят.
где-то видел статьи по перепаиванию мезонов на платах столкнувшимися с подобной проблемой.
может ещё есть способы изменить пороги реагирования.
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 11:24
				 ded
				Zver писал(а): у меня есть вопрос, который я здесь и задал в надежде, что профессионалы или хотя бы специалисты помогут в изучении этого ПО. Кстати упоминание о "Spawn extension" в книге нет! Прошу Вас больше не играть в кошки-мышки и рассказать где я ошибся..
Знать и понимать!
Код: Выделить всё
== Spawn extension (incoming, s, 5) exited non-zero on 'DAHDI/13-1'
означает  перейти на команду с приоритетом n+101, если все из вызываемых каналов заняты
http://asterisk.ru/knowledgebase/Asterisk+cmd+Dial
Но вижу там другая проблема?
 
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 11:33
				 Zver
				Изменил несколько контекст:
Код: Выделить всё
[incoming]
exten=>other,1,Wait(20)
exten=>other,n,Dial(DAHDI/3&DAHDI/4&SIP/150)
exten=>s,1,NoOp(Incoming number:-${CALLERID(num)}-)
exten=>s,n,GotoIf($[$["${CALLERID(num)}"="9<number>4"] | $["${CALLERID(num)}"=""]]?:next)
;exten=>s,n,Answer()
;exten=>s,n,Wait(1)
;exten=>s,n,Congestion()
exten=>s,n,Hangup()
exten=>s,n(next),Dial(DAHDI/2&LOCAL/other@incoming,,tm)
exten=>s,n,Hangup
Лог:
Код: Выделить всё
    -- Starting simple switch on 'DAHDI/13-1'
    -- Executing [s@incoming:1] NoOp("DAHDI/13-1", "Incoming number:-9<number>4-") in new stack
    -- Executing [s@incoming:2] GotoIf("DAHDI/13-1", "1?:next") in new stack
    -- Executing [s@incoming:3] Hangup("DAHDI/13-1", "") in new stack
  == Spawn extension (incoming, s, 3) exited non-zero on 'DAHDI/13-1'
    -- Hanging up on 'DAHDI/13-1'
    -- Hungup 'DAHDI/13-1'
    -- Starting simple switch on 'DAHDI/13-1'
[Jul 17 17:27:38] ERROR[25104]: callerid.c:562 callerid_feed: No start bit found in fsk data.
[Jul 17 17:27:38] WARNING[25104]: chan_dahdi.c:1725 my_get_callerid: Failed to decode CallerID
[Jul 17 17:27:38] ERROR[25104]: callerid.c:562 callerid_feed: No start bit found in fsk data.
[Jul 17 17:27:38] WARNING[25104]: chan_dahdi.c:1725 my_get_callerid: Failed to decode CallerID
    -- Executing [s@incoming:1] NoOp("DAHDI/13-1", "Incoming number:--") in new stack
    -- Executing [s@incoming:2] GotoIf("DAHDI/13-1", "1?:next") in new stack
    -- Executing [s@incoming:3] Hangup("DAHDI/13-1", "") in new stack
  == Spawn extension (incoming, s, 3) exited non-zero on 'DAHDI/13-1'
    -- Hanging up on 'DAHDI/13-1'
    -- Hungup 'DAHDI/13-1'
       > doing dnsmgr_lookup for 'sip.zadarma.com'
       > ast_get_srv: SRV lookup for '_sip._udp.sip.zadarma.com' mapped to host sip0.zadarma.com, port 5060
    -- Starting simple switch on 'DAHDI/13-1'
    -- Executing [s@incoming:1] NoOp("DAHDI/13-1", "Incoming number:--") in new stack
    -- Executing [s@incoming:2] GotoIf("DAHDI/13-1", "1?:next") in new stack
    -- Executing [s@incoming:3] Hangup("DAHDI/13-1", "") in new stack
  == Spawn extension (incoming, s, 3) exited non-zero on 'DAHDI/13-1'
    -- Hanging up on 'DAHDI/13-1'
    -- Hungup 'DAHDI/13-1'
    -- Starting simple switch on 'DAHDI/13-1'
    -- Executing [s@incoming:1] NoOp("DAHDI/13-1", "Incoming number:--") in new stack
    -- Executing [s@incoming:2] GotoIf("DAHDI/13-1", "1?:next") in new stack
    -- Executing [s@incoming:3] Hangup("DAHDI/13-1", "") in new stack
  == Spawn extension (incoming, s, 3) exited non-zero on 'DAHDI/13-1'
    -- Hanging up on 'DAHDI/13-1'
    -- Hungup 'DAHDI/13-1'
И так он ходит по кругу... Кстати если перед Hangup поставить Answer(1), то * отвечает на звонок а после прерывает. Собственно почти то что надо. Еще немного поищу решение и если не найду остановлюсь на этом.
 
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 12:27
				 ded
				1) exten => s используется в макросах, а использовать это в [incoming] несколько странно.
2) Строка 
exten=>s,n,GotoIf($[$["${CALLERID(num)}"="9<number>4"] | $["${CALLERID(num)}"=""]]?:next)
является вычурной и ненужной. Это решается проще:
exten=> 123456/9<number>4,1,Dial(DAHDI/2&LOCAL/other@incoming,,tm)
и это описано в книге про будущуее телефонии.
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 12:36
				 Vlad1983
				сейчас припоминаю 
как-то с GSM-шлюза тоже нужно было сделать сброс.
пока Answer(1) не поставил шел как ещё один вызов.
кстати говоря, не фиксировался как отвеченный на сотовом.
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 12:38
				 Zver
				Т.е. это все таки не нубский вопрос? 

 
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 12:40
				 Wapo
				Кстати, таки просмотрели самое важное:
Код: Выделить всё
exten=>s,n,GotoIf($["${callnum}"="9<Мой номер>4"]?:next)
exten=>s,n,Answer
exten=>s,n,Hangup
exten=>s,n(next),Dial(DAHDI/2&LOCAL/other@incoming,,tm)
exten=>s,n,Hangup
в - если условие выполнилось - тогда кидать в другой контекст, где сначала Answer, потом Hangup и далее обработка в h-эектене.
 
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 12:46
				 Vlad1983
				Zver писал(а):Т.е. это все таки не нубский вопрос?
это частный случай при использовании аналоговых линий.
 
			 
			
					
				Re: Повторная обработка входящего звонка после Hangup
				Добавлено: 17 июл 2013, 12:56
				 Zver
				to Wapo
Не понял ход ваших мыслей... Последовательность этих действий я знаю, но как это поможет решить проблему с зацикливанием в контексте?