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