Филиалы

Начиная с релиза Ubilling 0.8.3 стала доступной механика филиалов. Она предназначена для делегирования некоторых полномочий по администрированию определенной части пользовательской базы конкретным администраторам. Данная механика предполагает контроль доступа к пользователям, изменению их параметров (номера телефонов, MAC-адреса, Тарифы итд..) и разделению статистической информации по группам этих пользователей - такой как «отчет по подключениям» или «финансовый отчет». Практическим примером использования данной механики, можно считать, например, ситуацию когда вы отдаете обслуживание части своей сети на аутсорсинг, либо когда вы построили сеть для кого-то и не хотите начинать закупать оборудование, устанавливать новый биллинг, подписывать договора с платежными системами итд. Вам просто нужно, чтобы человек взял и начал обслуживать каких-то «своих» пользователей. Либо вы действительно являетесь региональным оператором с точками присутствия в разных населенных пунктах и вы хотите, делегировать базовый менеджмент пользователей в этих населенных пунктах персоналу на местах. В общем конкретные кейсы применения, ограничиваются вашей фантазией а в общих чертах механика филиалов призвана просто упростить централизованное управление вашим франчайзом/филиалами/дочерними операторами.

Отвечая на вопросы, которые вам первыми приходят в голову:

  • Нет, пользователи привязываются не к городам. Это было бы не гибко и в целом глупо.
  • Да, каждый пользователь прикреплен к своему филиалу напрямую.
  • Нет, влияние данной механики на быстродействие всей системы в целом - сведено к минимуму.
  • Да, пользователю в любой момент времени можно сменить филиал в несколько кликов.
  • Да, пользователя можно сделать не принадлежащим ни к какому филиалу.
  • Да, для остальной части абонбазы ничего не меняется.
  • Да, пользователь «филиала» физиологически ничем не отличается от «нормального».
  • Да, можно сделать для филиала сколько угодно администраторов, либо передать администратору под управление сколько угодно филиалов.
  • Нет, адаптированными для использования администраторами филиалов являются на данный момент только конкретные модуля.
  • Да, для каждого филиала предусмотрены свои тарифы, услуги(читаем подсети→NAS) и возможность заселения только в определенных населенных пунктах.
  • Да, осьминог, это первое что пришло в голову.

Начальная конфигурация

Включается все это одной опцией alter.ini

BRANCHES_ENABLED=1

И очень фигурным разделением прав по администраторам. Базовым правом для использования «Филиалов» является право BRANCHES. Следует заметить, что наличие этого права автоматически переводит администратора в свою, особенную реальность, и должно вами рассматриваться как «клеймо филиальности», то есть администратор после этого должен быть администрирующим конкретные филиалы с максимально урезанными правами и все. В это же время, вы можете сохранить контроль за всеми пользователями, для своих основных кадров, таких как техподдержка, администраторы, мальчики по вызову, бухгалтера, инженеры. Для этого, вы не поверите, - у них просто не должно быть этого самого «клейма филиальности».

Использование

После включения опции BRANCHES_ENABLED, следует создать начального администратора. Если вы не понимаете глубоко какое право для чего требуется, вы можете положить себе в директорию content/users/ данного семплового администратора branchmin и склонировать с него права на нужных вам администраторов.
Далее следует настроить сами филиалы. Допустим у нас их будет два, с разными доступными населенными пунктами, разными доступными тарифами и услугами.

Надеемся, что связи всех этих вещей вполне себе самоочевидны и понятны

Далее можно пробовать это использовать под уже филиальным администратором. Вот все что он видит в базовом варианте, и чего должно хватать для базовой работы с «его» абонентами.

Как видим, доступ он имеет только к пользователям принадлежащим к филиалам, которые ассоциированы с его логином администратора.

При включенной механике филиалов, у всех пользователей в профиле появляется соответствующее поле указывающее на филиал, к которому пренадлежит пользователь.

При регистрации пользователя, адрес пользователя будет формироваться по цепочке «город→улица→дом→квартира» из населенных пунктов доступных конкретному филиалу и собственно администратору. На заключительном этапе регистрации, любой администратор может выбрать филиал к которому будет принадлежать новый пользователь, из списка доступных для администратора филиалов. Администраторы без «клейма филиальности» тоесть права BRANCHES, могут регистрировать пользователей в любом из доступных филиалов, либо устанавливать чекбокс «Зарегистрировать пользователя без филиала».

Также вы можете в любой момент времени изменить филиал пользователя на какой угодно из существующих и доступных администратору, либо удалить его вообще, сделав пользователя «нормальным». Функция удаления пользователя из филиала доступна только пользователям с правами ROOT.

Также для филиалов существуют свои отчеты финансовый и по подключениям, интегрированные в основной модуль. Для них также есть отдельные права (ну вдруг вы не хотите финансовую статистику филиальному администратору светить, и вообще подпускать его близко к денежным операциям). Да, в нормальные отчеты им нельзя.

Следует также заметить, что право BRANCHESCONF является «типа рутовым» в рамках филиалов и не должно быть установлено филиальным администраторам в принципе.

branches.txt · Последние изменения: 2017/06/20 04:02 — nightfly
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki