VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Модификация номера

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Huawei05
Сообщения: 10
Зарегистрирован: 06 июн 2017, 11:16

Re: Модификация номера

Сообщение Huawei05 »

shamil писал(а):Привет 05 регион

я бы сделал так

exten => _11X.,1,Goto(manage-prefix,${CALLERID(num)},1)

[manage-prefix]
exten => _XXXXXX,1,Goto(78722${EXTEN},1)) ; Для коротких номеров

exten => _[78]XXXXXXXXXX,1,Dial(SIP/mtt/7${EXTEN:1}) ; Для национальных номеров
same => n,Hangup
shamil писал(а):С коротким номером 7465044 не сработало потому что там 7 знаков, а не 6. Почему?
7 символов потому что номер приходит от станции с 7кой спереди (7460000).Я добавил в это еще один Х для коротких номеров, но все равно не получилось, вот лог:

-- Executing [119288780430@from-trunk:1] Goto("SIP/softx-00005a28", "manage-prefix,7456777,1") in new stack
-- Goto (manage-prefix,7456777,1)
-- Executing [7456777@manage-prefix:1] Goto("SIP/softx-00005a28", "787227456777,1)") in new stack
-- Goto (manage-prefix,787227456777,1)
В чем может быть проблема, почему синтаксис не подходит?Спасибо за помощь!
Huawei05
Сообщения: 10
Зарегистрирован: 06 июн 2017, 11:16

Re: Модификация номера

Сообщение Huawei05 »

Что то вроде, если CALLERID(num):0:1=9?def:fix, в ветке def меняете callerid как хотите, в fix, что то типа callerid=78722${exten}:5.

Подскажите пожалуйста как правильно написать это правило?
shamil
Сообщения: 14
Зарегистрирован: 18 дек 2016, 04:58

Re: Модификация номера

Сообщение shamil »

> Goto (manage-prefix,787227456777,1)
Здесь получается одна цифра лишняя, 7 скорее всего надо отбрасывать, так? Тогда попробуй след. вариант


exten => _11X.,1,Goto(manage-prefix,${CALLERID(num)},1)

[manage-prefix]
exten => _XXXXXXX,1,Goto(78722${EXTEN:1},1)) ; Для коротких номеров
exten => _[78]XXXXXXXXXX,1,Dial(SIP/mtt/7${EXTEN:1}) ; Для национальных номеров
same => n,Hangup
Huawei05
Сообщения: 10
Зарегистрирован: 06 июн 2017, 11:16

Re: Модификация номера

Сообщение Huawei05 »

Не сработало.Вот что выходит. То что выходит в логах "manage-prefix" означает что не понимает переменную?

-- Executing [119280546375@from-trunk:1] Goto("SIP/softx-00000072", "manage-prefix,7466777,1") in new stack
-- Goto (manage-prefix,7466777,1)
-- Executing [7466777@manage-prefix:1] Goto("SIP/softx-00000072", "78722466777,1)") in new stack
-- Goto (manage-prefix,78722466777,1)
-- Executing [78722466777@manage-prefix:1] Dial("SIP/softx-00000072", "SIP/mtt/78722466777") in new stack


А если вообще убрать все правила то выходит следующее:

-- Executing [119280546375@from-trunk:1] Set("SIP/softx-00000078", "__FROM_DID=119280546375") in new stack
-- Executing [119280546375@from-trunk:2] NoOp("SIP/softx-00000078", "Received an unknown call with DID set to 119280546375") in new stack
-- Executing [119280546375@from-trunk:3] Goto("SIP/softx-00000078", "s,a2") in new stack
Huawei05
Сообщения: 10
Зарегистрирован: 06 июн 2017, 11:16

Re: Модификация номера

Сообщение Huawei05 »

Почему то не видно в логах номера Б. Звонок идет ко мне же
shamil
Сообщения: 14
Зарегистрирован: 18 дек 2016, 04:58

Re: Модификация номера

Сообщение shamil »

Huawei05 писал(а):Не сработало.Вот что выходит. То что выходит в логах "manage-prefix" означает что не понимает переменную?

-- Executing [119280546375@from-trunk:1] Goto("SIP/softx-00000072", "manage-prefix,7466777,1") in new stack
-- Goto (manage-prefix,7466777,1)
-- Executing [7466777@manage-prefix:1] Goto("SIP/softx-00000072", "78722466777,1)") in new stack
-- Goto (manage-prefix,78722466777,1)
-- Executing [78722466777@manage-prefix:1] Dial("SIP/softx-00000072", "SIP/mtt/78722466777") in new stack


А если вообще убрать все правила то выходит следующее:

-- Executing [119280546375@from-trunk:1] Set("SIP/softx-00000078", "__FROM_DID=119280546375") in new stack
-- Executing [119280546375@from-trunk:2] NoOp("SIP/softx-00000078", "Received an unknown call with DID set to 119280546375") in new stack
-- Executing [119280546375@from-trunk:3] Goto("SIP/softx-00000078", "s,a2") in new stack
Что значит не сработало? В логах нет сообщений об ошибке
Huawei05
Сообщения: 10
Зарегистрирован: 06 июн 2017, 11:16

Re: Модификация номера

Сообщение Huawei05 »

Звонок не совершается, а когда я звоню с сип звонилки , то вижу что вызов осуществляется сам к себе, тоесть я слышу сам свое же голосовое приветствие
Huawei05
Сообщения: 10
Зарегистрирован: 06 июн 2017, 11:16

Re: Модификация номера

Сообщение Huawei05 »

exten => _11X.,1,Goto(manage-prefix,${CALLERID(num)},1)

[manage-prefix]
exten => _XXXXXXX,1,Goto(78722${EXTEN:1},1)) ; Для коротких номеров
exten => _[78]XXXXXXXXXX,1,Dial(SIP/mtt/7${EXTEN:1}) ; Для национальных номеров
same => n,Hangup
Не может ли быть что правило которое вы написали работает только для национальных номеров?
Ранее в правилах для набора вот что стояло:

exten => _11X.,1,Set(CALLERID(num)=78722${CALLERID(num):1})
exten => _11X.,n,Noop(callerid is '${CALLERID(num)}')
exten => _11X.,n,Dial(SIP/mtt/7${EXTEN:2})
exten => _11X.,n,Hangup
fecyt
Сообщения: 148
Зарегистрирован: 17 янв 2017, 17:51

Re: Модификация номера

Сообщение fecyt »

Человек Вас не понял и предложил правило, где звонок зацикливается. Я привел ссылки, почитайте, разберитесь и составьте свое правило, иначе будете долго и мучительно тестировать чужой код, который Вам не подходит.
fecyt
Сообщения: 148
Зарегистрирован: 17 янв 2017, 17:51

Re: Модификация номера

Сообщение fecyt »

Но вот такой код должен подойти.

exten => _11X.,1,Set(CALLERID(num)=${IF($[LEN(${CALLERID(num)})=7]?77822${CALLERID(num)})})
same => n,Noop(callerid is '${CALLERID(num)}')
same => n,Dial(SIP/mtt/7${EXTEN:2})
same => n,Hangup()

В этом случае, если 7 значный CID, произойдет подстановка. Дальше думайте сами о возможных последствиях при несовпадении 7 знаков.
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH