First time here? Check out the FAQ!

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

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

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 и обрабатывают особо важные ошибкиу уже ПОСЛЕ их возникновения в процессе выполнения диалплана. Поделитесь опытом - по какому пути идти в этом случае : чувствую, что "зарываюсь" с головой в код макросов (казалось бы иногда совершенно ненужных)

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

Спасибо

спросил Jul 19 '11

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

обновил Jul 19 '11

2 Ответа

1

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

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

ответил Jul 19 '11

glukinho Gravatar glukinho
661 4 3 12

Comments

Боюсь, что GUI-сборка это не выход. Меня совершенно не пугает самостоятельное написание кода. Гораздо тяжелее править под себя чужой код, каким бы хорошим он не был. Да, и разбираться в хитросплетениях GUI , не вникая в выполняемый код, считаю совершенно не нужным. Я не ограничен ни во времени, ни в фантазии :) Я четко знаю, что мне необходимо реализовать, поэтому чувствую себя абсолютно счастливым :) Хочется просто изучить опыт других астерискеров в этом вопросе ;) sapounov (Jul 19 '11)edit
У вас задача сделать рабочую систему или по#баться? glukinho (Jul 19 '11)edit
В данном топике у меня задача выяснить, как поступают профессионалы в описанных случаях :) А разве сделать рабочую систему "через по#баться" невозможно ? ;) sapounov (Jul 19 '11)edit
Профессионалы решают требуемую задачу с учетом действующих ограничений по цене, времени, трудозатратам и сложности последующего обслуживания. glukinho (Jul 19 '11)edit
0

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

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

ответил Jul 19 '11

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

Comments

Уважаемый, cvieri. Если Вам есть что сказать по делу - говорите. Если Вам жизненно необходимо перейти к обсуждению моей личности - пишите мне на почту. sapounov (Jul 20 '11)edit
прости, был резок. cvieri (Jul 20 '11)edit
нет проблем, старик. sapounov (Jul 20 '11)edit

Ваш ответ

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 ленту новостей

Статистика

Задан: Jul 19 '11

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

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

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