mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-12 14:00:17 +02:00
commit
bc8ec93f2b
@ -304,7 +304,7 @@ IPBOARD_APIMODULE = 'aa'
|
||||
JABBER_URL = os.environ.get('AA_JABBER_URL', "yourdomain.com")
|
||||
JABBER_PORT = int(os.environ.get('AA_JABBER_PORT', '5223'))
|
||||
JABBER_SERVER = os.environ.get('AA_JABBER_SERVER', "yourdomain.com")
|
||||
OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "http://yourdomain.com:9090/")
|
||||
OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "http://yourdomain.com:9090")
|
||||
OPENFIRE_SECRET_KEY = os.environ.get('AA_OPENFIRE_SECRET_KEY', "somekey")
|
||||
BROADCAST_USER = os.environ.get('AA_BROADCAST_USER', "broadcast@") + JABBER_URL
|
||||
BROADCAST_USER_PASSWORD = os.environ.get('AA_BROADCAST_USER_PASSWORD', "somepassword")
|
||||
|
@ -5,7 +5,6 @@ evelink
|
||||
dnspython
|
||||
passlib
|
||||
xmpppy==0.5.0rc1
|
||||
python-openfire==0.2.3-beta
|
||||
requests
|
||||
|
||||
# Django Stuff #
|
||||
@ -15,3 +14,4 @@ django-bootstrap-form
|
||||
django-celery
|
||||
|
||||
git+git://github.com/nikdoof/python-ts3.git
|
||||
git+git://github.com/seamus-45/openfire-restapi.git
|
||||
|
@ -5,12 +5,9 @@ import xmpp
|
||||
from django.contrib.auth.models import User
|
||||
from django.contrib.auth.models import Group
|
||||
from django.conf import settings
|
||||
from openfire import exception
|
||||
from openfire import UserService
|
||||
|
||||
from authentication.managers import AuthServicesInfoManager
|
||||
|
||||
import threading
|
||||
from ofrestapi.users import Users as ofUsers
|
||||
from ofrestapi import exception
|
||||
|
||||
|
||||
class OpenfireManager:
|
||||
@ -44,7 +41,7 @@ class OpenfireManager:
|
||||
try:
|
||||
sanatized_username = OpenfireManager.__santatize_username(username)
|
||||
password = OpenfireManager.__generate_random_pass()
|
||||
api = UserService(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api = ofUsers(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.add_user(sanatized_username, password)
|
||||
|
||||
except exception.UserAlreadyExistsException:
|
||||
@ -56,7 +53,7 @@ class OpenfireManager:
|
||||
@staticmethod
|
||||
def delete_user(username):
|
||||
try:
|
||||
api = UserService(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api = ofUsers(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.delete_user(username)
|
||||
return True
|
||||
except exception.UserNotFoundException:
|
||||
@ -64,37 +61,49 @@ class OpenfireManager:
|
||||
|
||||
@staticmethod
|
||||
def lock_user(username):
|
||||
api = UserService(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api = ofUsers(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.lock_user(username)
|
||||
|
||||
@staticmethod
|
||||
def unlock_user(username):
|
||||
api = UserService(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api = ofUsers(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.unlock_user(username)
|
||||
|
||||
@staticmethod
|
||||
def update_user_pass(username):
|
||||
try:
|
||||
password = OpenfireManager.__generate_random_pass()
|
||||
api = UserService(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.update_user(username, password)
|
||||
api = ofUsers(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.update_user(username, password=password)
|
||||
return password
|
||||
except exception.UserNotFoundException:
|
||||
return ""
|
||||
|
||||
@staticmethod
|
||||
def update_user_groups(username, password, groups):
|
||||
try:
|
||||
api = UserService(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.update_user(username, password, "", "", groups)
|
||||
except exception.HTTPException as e:
|
||||
print e
|
||||
api = ofUsers(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
response = api.get_user_groups(username)
|
||||
remote_groups = []
|
||||
if response:
|
||||
remote_groups = response['groupname']
|
||||
add_groups = []
|
||||
del_groups = []
|
||||
for g in groups:
|
||||
if not g in remote_groups:
|
||||
add_groups.append(g)
|
||||
for g in remote_groups:
|
||||
if not g in groups:
|
||||
del_groups.append(g)
|
||||
if add_groups:
|
||||
api.add_user_groups(username, add_groups)
|
||||
if del_groups:
|
||||
api.delete_user_groups(username, del_groups)
|
||||
|
||||
@staticmethod
|
||||
def delete_user_groups(username, groups):
|
||||
|
||||
api = UserService(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.delete_group(username, groups)
|
||||
api = ofUsers(settings.OPENFIRE_ADDRESS, settings.OPENFIRE_SECRET_KEY)
|
||||
api.delete_user_groups(username, groups)
|
||||
|
||||
@staticmethod
|
||||
def send_broadcast_message(group_name, broadcast_message):
|
||||
|
Loading…
x
Reference in New Issue
Block a user