1 | изначальная версия редактировать | |
[macro-CHECKDEVICESTATE]
exten => s,1,Set(ext=${CUT(CHANNEL(name),/,2)})
exten => s,2,Gosub(check_permissions,${CUT(ext,-,1)},1); будет только номер сип-канала..
; тут дальше макро
[check_permissions]
include => permissions_deny
include => permissions_allow
include => permissions_other
[permissions_other]
exten => _.,1,Return; default action - allow
;exten => _.,1,Hangup; default action - deny
[permissions_allow]
exten => 1000,1,Return
[permissions_deny]
exten => 1001,1,Hangup
2 | No.2 Revision редактировать |
[macro-CHECKDEVICESTATE]
exten => s,1,Set(ext=${CUT(CHANNEL(name),/,2)})
exten => s,2,Gosub(check_permissions,${CUT(ext,-,1)},1); будет только номер сип-канала..
; тут дальше макро
[check_permissions]
include => permissions_deny
include => permissions_allow
include => permissions_other
[permissions_other]
exten => _.,1,Return; default action - allow
;exten => _.,1,Hangup; default action - deny
[permissions_allow]
exten => 1000,1,Return
[permissions_deny]
exten => 1001,1,Hangup
Пробовал вместо s указывать хотя бы какие то ограничения, например [2-3]XX, что бы хотя бы этот макрос выполнялся только для трёх значных номеров начинающихся с 2 и с 3. В таком случае он вообще перестаёт выполняться вот так делаетя
exten => _s/[2-3XX],1,Noop
3 | No.3 Revision редактировать |
[macro-CHECKDEVICESTATE]
exten => s,1,Set(ext=${CUT(CHANNEL(name),/,2)})
exten => s,2,Gosub(check_permissions,${CUT(ext,-,1)},1); будет только номер сип-канала..
; тут дальше макро
[check_permissions]
include => permissions_deny
include => permissions_allow
include => permissions_other
[permissions_other]
exten => _.,1,Return; default action - allow
;exten => _.,1,Hangup; default action - deny
[permissions_allow]
exten => 1000,1,Return
[permissions_deny]
exten => 1001,1,Hangup
Пробовал вместо s указывать хотя бы какие то ограничения, например [2-3]XX, что бы хотя бы этот макрос выполнялся только для трёх значных номеров начинающихся с 2 и с 3. В таком случае он вообще перестаёт
выполняться вот так делаетявыполняться
вот так делаетcя
exten => _s/[2-3XX],1,Noop
_s/_[2-3XX],1,Noop
4 | No.4 Revision редактировать |
[macro-CHECKDEVICESTATE]
exten => s,1,Set(ext=${CUT(CHANNEL(name),/,2)})
exten => s,2,Gosub(check_permissions,${CUT(ext,-,1)},1); будет только номер сип-канала..
; тут дальше макро
[check_permissions]
include => permissions_deny
include => permissions_allow
include => permissions_other
[permissions_other]
exten => _.,1,Return; default action - allow
;exten => _.,1,Hangup; default action - deny
[permissions_allow]
exten => 1000,1,Return
[permissions_deny]
exten => 1001,1,Hangup
Пробовал вместо s указывать хотя бы какие то ограничения, например [2-3]XX, что бы хотя бы этот макрос выполнялся только для трёх значных номеров начинающихся с 2 и с 3. В таком случае он вообще перестаёт выполняться
вот так делаетcя
exten => _s/_[2-3XX],1,Noop
s/_[23]XX,1,Noop
https://wiki.asterisk.org/wiki/display/AST/Pattern+Matching (пример возле фразы unexpected-jump-test)
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.