Mumble+MySQL >> управление группами доступа
Добавлено: 11 фев 2013, 08:12
Всем привет!
Предыстория: ситуация обычная - альянс кланов для стандартизации голосовой связи переехал на Mumble. В силу сложности настройки и работы с Ice было решено отказаться от его использования в сторону ручного управления БД, для чего она была перенесена на MySQL. Соответственно, всякие MAP'ы, MumPI и прочие без айса шлют это дело лесом. Было решено использовать для этого Apache+PHP+MySQL. Поскольку 800+ юзерам нереально объяснить нюансы использования сертификата, то с регистрацией пользователей без этой дурацкой привязки с сертификатам и использованию стандартных логина/пароля задача была решена успешно, как и управление юзерами (редактирование/удаление). Но дело застопорилось на добавлении пользователей в группы доступа.
Текущее положение дел:
Схема каналов проста: Root: a) Гостиная с подканалами; б) Канал А с подканалами; в) Канал Б с подканалами. С наследованием групп доступа от Root.
В Root есть три группы доступа: модераторы, офицеры и игроки альянса. Только представители этих групп имеют доступ в каналы А и Б со всеми их подканалами. Гостиная для всех открыта. Вручную не проблема добавить юзера в группу, но во-первых, нет группового добавления, во-вторых реализовано это адски неудобно. Соответственно, задача состоит в том, чтобы реализовать групповое добавление нескольких пользователей в группу "игроки альянса". Казалось бы, все просто - id группы известен, добавляй и добавляй INSERT'ами юзеров в таблицу group_members, но этот group_id ПЛАВАЮЩИЙ! Какого полового органа??? После каждого нажатия кнопки "ОК" в настройках ердактирования канала group_id группы доступа меняется! Фигня война - главное маневры, подумал я, переписал скрипт так, чтобы он перед каждым запросом на INSERT получал текущий действующий идентификатор группы доступа. Всё, все запросы выполнены, юзеры добавлены в группу доступа. Захожу в мамбл под суперюзером, иду в редактирование канала, смотрю состав группы доступа - никаких изменений.
Есть такие, кто уже решал эту задачу? Как это можно обойти?
Предыстория: ситуация обычная - альянс кланов для стандартизации голосовой связи переехал на Mumble. В силу сложности настройки и работы с Ice было решено отказаться от его использования в сторону ручного управления БД, для чего она была перенесена на MySQL. Соответственно, всякие MAP'ы, MumPI и прочие без айса шлют это дело лесом. Было решено использовать для этого Apache+PHP+MySQL. Поскольку 800+ юзерам нереально объяснить нюансы использования сертификата, то с регистрацией пользователей без этой дурацкой привязки с сертификатам и использованию стандартных логина/пароля задача была решена успешно, как и управление юзерами (редактирование/удаление). Но дело застопорилось на добавлении пользователей в группы доступа.
Текущее положение дел:
Схема каналов проста: Root: a) Гостиная с подканалами; б) Канал А с подканалами; в) Канал Б с подканалами. С наследованием групп доступа от Root.
В Root есть три группы доступа: модераторы, офицеры и игроки альянса. Только представители этих групп имеют доступ в каналы А и Б со всеми их подканалами. Гостиная для всех открыта. Вручную не проблема добавить юзера в группу, но во-первых, нет группового добавления, во-вторых реализовано это адски неудобно. Соответственно, задача состоит в том, чтобы реализовать групповое добавление нескольких пользователей в группу "игроки альянса". Казалось бы, все просто - id группы известен, добавляй и добавляй INSERT'ами юзеров в таблицу group_members, но этот group_id ПЛАВАЮЩИЙ! Какого полового органа??? После каждого нажатия кнопки "ОК" в настройках ердактирования канала group_id группы доступа меняется! Фигня война - главное маневры, подумал я, переписал скрипт так, чтобы он перед каждым запросом на INSERT получал текущий действующий идентификатор группы доступа. Всё, все запросы выполнены, юзеры добавлены в группу доступа. Захожу в мамбл под суперюзером, иду в редактирование канала, смотрю состав группы доступа - никаких изменений.
Есть такие, кто уже решал эту задачу? Как это можно обойти?