Я думаю.. Вы уже гуглили и видели: http://asterisk-support.ru/question/50885/autodestruct-on-dialog/
Может быть.. это связано с сторока:
same => n,GoTo(scrtest,s,1)
same => n,Hangup()
Пожалуй, Вы думаете что после GoTo управление возвращается? Нет… не возвращается. В результате не делается HangUp.
Следует использовать GoSub и Return в конце вызываемого контекста. Ну или Macro (считается depricated).