Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Разграничение прав. Проверка ошибок. Опыт

0

Добрый день, друзья! Постараюсь уложить свои мысли в минимальное количество слов, т.к. вопрос больше концептуальный чем практический. Хотелось бы услышать мнения бывалых написателей диалплана вот по какомим вопросам. Вопрос первый: Понадобилось разграничить права доступа для внутренних абонентов (все как у всех, межгород, мобильные заграница и.т.д.). Казалось бы - чего проще ? Весь интернет пестрит рекомендациями по типу :

[manager]
include => dial-local

[vip]
include => dial-local
include => dial-mobile
include => dial-zagranitso

[dial-local]
exten => _[12]XX, Dial(SIP/${EXTEN})
[dial-zagranitso]
exten => _810XXXXXX., Dial(SIP/${EXTEN})

И так далее... Вроде бы красиво, стройно, но не слишком гибко. Когда понадобилось сделать более развернутое разграничение прав, появилось больше контекстов, больше шаблонов и.т.д. Как только количество направлений (и раздачи этих направлений пользователям) перевалило за десяток, плюнул на все, засунул всех пиров в SQL , создал дополнительную таблицу с правами доступа для каждого пира и макросом проверяю права доступа к направлениям. На верном ли я пути ? Наворачивание излишних макросов зло или благо ?

Вопрос второй. Даже не вопрос, а больше - размышление. Хорошей практикой у многих программистов считается устраивать проверки на каждый чих ПЕРЕД выполнением чего-либо . Например, перед набором внутреннего экстеншена я проверяю его макросом на предмет DEVICE_STATE, все ненормальные состояния обрабатываю в отдельном макросе error-handler. Стараюсь вычищать каждый WARNING в консоли, проверяя кучу всего ПЕРЕД выполнением действия. С другой стороны, вижу как многие не отягощают код лишними телодвижениями, плюют на WARNING и обрабатывают особо важные ошибкиу уже ПОСЛЕ их возникновения в процессе выполнения диалплана. Поделитесь опытом - по какому пути идти в этом случае : чувствую, что "зарываюсь" с головой в код макросов (казалось бы иногда совершенно ненужных)

Как-то так . Прошу прощения, если получился слишком длинный неформатный топик.

Спасибо

удалить закрыть спам изменить тег редактировать

спросил 2011-07-19 12:29:39 +0400

sapounov Gravatar sapounov
31 1 3
http://www.synergy-compan...

обновил 2011-07-19 12:30:27 +0400

2 Ответа

1

Поставить GUI-сборочку, где уже помучались до вас? Вы, кстати, видели, сколько там макросов? )

ссылка удалить спам редактировать

ответил 2011-07-19 12:32:23 +0400

glukinho Gravatar glukinho
661 4 3 12

Comments

Боюсь, что GUI-сборка это не выход. Меня совершенно не пугает самостоятельное написание кода. Гораздо тяжелее править под себя чужой код, каким бы хорошим он не был. Да, и разбираться в хитросплетениях GUI , не вникая в выполняемый код, считаю совершенно не нужным. Я не ограничен ни во времени, ни в фантазии :) Я четко знаю, что мне необходимо реализовать, поэтому чувствую себя абсолютно счастливым :) Хочется просто изучить опыт других астерискеров в этом вопросе ;) sapounov ( 2011-07-19 12:45:23 +0400 )редактировать
У вас задача сделать рабочую систему или по#баться? glukinho ( 2011-07-19 12:50:32 +0400 )редактировать
В данном топике у меня задача выяснить, как поступают профессионалы в описанных случаях :) А разве сделать рабочую систему "через по#баться" невозможно ? ;) sapounov ( 2011-07-19 13:07:11 +0400 )редактировать
Профессионалы решают требуемую задачу с учетом действующих ограничений по цене, времени, трудозатратам и сложности последующего обслуживания. glukinho ( 2011-07-19 15:05:04 +0400 )редактировать
0

Постараюсь уложить мысли ТС в ещё более минимальное количество слов: Нет девушки, люблю по*баться с компом, есть ли ещё такие гики?

ссылка удалить спам редактировать

ответил 2011-07-19 13:27:14 +0400

cvieri Gravatar cvieri
673 12 5 21
http://www.qcall.com.ua/

Comments

Уважаемый, cvieri. Если Вам есть что сказать по делу - говорите. Если Вам жизненно необходимо перейти к обсуждению моей личности - пишите мне на почту. sapounov ( 2011-07-20 11:45:28 +0400 )редактировать
прости, был резок. cvieri ( 2011-07-20 12:21:07 +0400 )редактировать
нет проблем, старик. sapounov ( 2011-07-20 12:41:08 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку
1 закладка

подписаться на rss ленту новостей

Статистика

Задан: 2011-07-19 12:29:39 +0400

Просмотрен: 353 раз

Обновлен: Jul 19 '11

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.