Mumble+MySQL >> управление группами доступа
Правила форума
СНАЧАЛА ПОЛЬЗУЙТЕСЬ ПОИСКОМ!!!
При обращении просим Вас сразу указывать:
Вашу ОСь? Видео? Звук? DirectX? Логи Мамбл, Мурмур?
Это поможет быстрей и более точно ответить на Ваши вопросы.
СНАЧАЛА ПОЛЬЗУЙТЕСЬ ПОИСКОМ!!!
При обращении просим Вас сразу указывать:
Вашу ОСь? Видео? Звук? DirectX? Логи Мамбл, Мурмур?
Это поможет быстрей и более точно ответить на Ваши вопросы.
-
- Сообщения: 5
- Зарегистрирован: 11 фев 2013, 07:35
- Откуда: Россия, Алтайский край, г.Барнаул
- Благодарил (а): 1 раз
Mumble+MySQL >> управление группами доступа
Всем привет!
Предыстория: ситуация обычная - альянс кланов для стандартизации голосовой связи переехал на 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 получал текущий действующий идентификатор группы доступа. Всё, все запросы выполнены, юзеры добавлены в группу доступа. Захожу в мамбл под суперюзером, иду в редактирование канала, смотрю состав группы доступа - никаких изменений.
Есть такие, кто уже решал эту задачу? Как это можно обойти?
В Раю, конечно, климат приятный, но в Аду общество интереснее!
Прежде, чем сказать что-то другому, скажи это себе.
Прежде, чем сказать что-то другому, скажи это себе.
Re: Mumble+MySQL >> управление группами доступа
Если мне не изменяет память, то мамбл не перечитывает ничего из базы, пока не видит в этом необходимости. Поэтому при внесении изменений напрямую в базу верный способ применить изменения только один - перезапустить мамбл.StealeR писал(а):Фигня война - главное маневры, подумал я, переписал скрипт так, чтобы он перед каждым запросом на INSERT получал текущий действующий идентификатор группы доступа. Всё, все запросы выполнены, юзеры добавлены в группу доступа. Захожу в мамбл под суперюзером, иду в редактирование канала, смотрю состав группы доступа - никаких изменений.
Есть такие, кто уже решал эту задачу? Как это можно обойти?
-
- Сообщения: 5
- Зарегистрирован: 11 фев 2013, 07:35
- Откуда: Россия, Алтайский край, г.Барнаул
- Благодарил (а): 1 раз
Re: Mumble+MySQL >> управление группами доступа
XuTPuK, возможно есть способ уболтать мамбл перечитать изменения в базе без перезапуска? Меня не поймут, если я рестартану мамбл, когда на сервере по ротам, взводам, да звеньям сидят 300+ человек...
ЗЫ: в идеале бы разрабы что-нить подобное: "/usr/local/etc/rc.d/murmur reload" сделали...
ЗЫ: в идеале бы разрабы что-нить подобное: "/usr/local/etc/rc.d/murmur reload" сделали...
В Раю, конечно, климат приятный, но в Аду общество интереснее!
Прежде, чем сказать что-то другому, скажи это себе.
Прежде, чем сказать что-то другому, скажи это себе.
-
- Site Admin
- Сообщения: 1593
- Зарегистрирован: 27 июл 2009, 08:58
- Благодарил (а): 41 раз
- Поблагодарили: 363 раза
- Контактная информация:
Re: Mumble+MySQL >> управление группами доступа
В идеале, есть связка Murmur + PHP + php-ice
Мы в Telegramm https://t.me/mumbleru
Пожалуйста, при персональном обращении сразу формулируйте его цель. Спасибо.
Подпишитесь на Новости форума feed/news
<--- Хочешь себе такой? Читай тут
Пожалуйста, при персональном обращении сразу формулируйте его цель. Спасибо.
Подпишитесь на Новости форума feed/news


-
- Сообщения: 5
- Зарегистрирован: 11 фев 2013, 07:35
- Откуда: Россия, Алтайский край, г.Барнаул
- Благодарил (а): 1 раз
Re: Mumble+MySQL >> управление группами доступа
это не в идеале, это через *опуB0nuse писал(а):В идеале, есть связка Murmur + PHP + php-ice

В Раю, конечно, климат приятный, но в Аду общество интереснее!
Прежде, чем сказать что-то другому, скажи это себе.
Прежде, чем сказать что-то другому, скажи это себе.
-
- Site Admin
- Сообщения: 1593
- Зарегистрирован: 27 июл 2009, 08:58
- Благодарил (а): 41 раз
- Поблагодарили: 363 раза
- Контактная информация:
Re: Mumble+MySQL >> управление группами доступа
Значит, заставлять сервер перечитывать весь многомегабайтный конфиг из-за маленькой смены настроек ACL какого-то канала одного из серверов - это нормально?
Уж извините...
Уж извините...
Мы в Telegramm https://t.me/mumbleru
Пожалуйста, при персональном обращении сразу формулируйте его цель. Спасибо.
Подпишитесь на Новости форума feed/news
<--- Хочешь себе такой? Читай тут
Пожалуйста, при персональном обращении сразу формулируйте его цель. Спасибо.
Подпишитесь на Новости форума feed/news


-
- Сообщения: 5
- Зарегистрирован: 11 фев 2013, 07:35
- Откуда: Россия, Алтайский край, г.Барнаул
- Благодарил (а): 1 раз
Re: Mumble+MySQL >> управление группами доступа
многомегабайтный конфиг? его ж никто не заставляет таблицу slog в память загружать...а вся таблица ACL'ей для среднестатистического сервера - это килобайты информации, если каналов не тысячи/миллионы, конечно же. У меня при кол-ве каналов 145 штук таблицы пользователей занимают ровно столько же места, сколько все остальные таблицы вместе взятые, за исключение логов, а это 510КБ+. Для MySQL - это тьфу, ничего и ниочем. И замечу, таблицы пользователей перечитываются при КАЖДОМ коннекте. Не пойму, что помешало разработчикам прикрутить аналогичный функционал и к таблицам каналов/ACL...Имхо, для серверов по-проще Вашего, не уровня страны, возможность выполнить что-то из "/usr/local/etc/rc.d/murmur reload" или "murmurctl -k reload/reconfigure/graceful" стала бы полезным и часто-используемым вариантом, чем городить огород из всяких ICE'ов, php-ice, ice-slice'ов и прочего, переваривать кучу новой инфы по связыванию и использованию всего этого велосипеда...B0nuse писал(а):Значит, заставлять сервер перечитывать весь многомегабайтный конфиг из-за маленькой смены настроек ACL какого-то канала одного из серверов - это нормально?
Уж извините...
ладно, завязываю...главное, я получил ответ на свой вопрос :) отрицательный ответ - тоже ответ...
В Раю, конечно, климат приятный, но в Аду общество интереснее!
Прежде, чем сказать что-то другому, скажи это себе.
Прежде, чем сказать что-то другому, скажи это себе.