minor improvements
This commit is contained in:
parent
9579c5261d
commit
c90ecf3fcd
|
@ -1,6 +1,4 @@
|
||||||
.idea
|
.idea
|
||||||
bot-store/
|
|
||||||
config.yaml
|
|
||||||
|
|
||||||
# ---> Python
|
# ---> Python
|
||||||
# Byte-compiled / optimized / DLL files
|
# Byte-compiled / optimized / DLL files
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
_ChatGPT bot for Matrix._
|
_ChatGPT bot for Matrix._
|
||||||
|
|
||||||
|
Uses code from [anoadragon453/nio-template](https://github.com/anoadragon453/nio-template).
|
||||||
|
|
||||||
## Install
|
## Install
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
|
@ -5,7 +5,7 @@ import time
|
||||||
from nio import (AsyncClient, InviteMemberEvent, JoinError, MatrixRoom, MegolmEvent, RoomMessageText, UnknownEvent, )
|
from nio import (AsyncClient, InviteMemberEvent, JoinError, MatrixRoom, MegolmEvent, RoomMessageText, UnknownEvent, )
|
||||||
|
|
||||||
from .bot_commands import Command
|
from .bot_commands import Command
|
||||||
from .chat_functions import get_thread_content, is_thread, process_chat, react_to_event
|
from .chat_functions import check_authorized, get_thread_content, is_thread, process_chat, react_to_event
|
||||||
# from .config import Config
|
# from .config import Config
|
||||||
from .storage import Storage
|
from .storage import Storage
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ class Callbacks:
|
||||||
if event.sender == self.client.user_id:
|
if event.sender == self.client.user_id:
|
||||||
return
|
return
|
||||||
|
|
||||||
if self.allowed_to_chat != 'all' and event.sender not in self.allowed_to_chat:
|
if not check_authorized(event.sender, self.allowed_to_chat):
|
||||||
return
|
return
|
||||||
|
|
||||||
if event.server_timestamp < self.startup_ts:
|
if event.server_timestamp < self.startup_ts:
|
||||||
|
@ -98,10 +98,14 @@ class Callbacks:
|
||||||
|
|
||||||
event: The invite event.
|
event: The invite event.
|
||||||
"""
|
"""
|
||||||
if event.sender not in self.allowed_to_invite:
|
if not check_authorized(event.sender, self.allowed_to_invite):
|
||||||
logger.info(f"Got invite to {room.room_id} from {event.sender} but rejected.")
|
logger.info(f"Got invite to {room.room_id} from {event.sender} but rejected.")
|
||||||
return
|
return
|
||||||
|
|
||||||
|
# if event.sender not in self.allowed_to_invite:
|
||||||
|
# logger.info(f"Got invite to {room.room_id} from {event.sender} but rejected.")
|
||||||
|
# return
|
||||||
|
|
||||||
logger.debug(f"Got invite to {room.room_id} from {event.sender}.")
|
logger.debug(f"Got invite to {room.room_id} from {event.sender}.")
|
||||||
|
|
||||||
# Attempt to join 3 times before giving up
|
# Attempt to join 3 times before giving up
|
||||||
|
|
|
@ -211,3 +211,16 @@ async def process_chat(client, room, event, command, store, openai, thread_root_
|
||||||
store.add_event_id(resp.event_id)
|
store.add_event_id(resp.event_id)
|
||||||
# else:
|
# else:
|
||||||
# logger.info(f'Not responding to seen event {event.event_id}')
|
# logger.info(f'Not responding to seen event {event.event_id}')
|
||||||
|
|
||||||
|
|
||||||
|
def check_authorized(string, to_check):
|
||||||
|
if to_check != 'all':
|
||||||
|
if '@' not in to_check and ':' not in to_check:
|
||||||
|
# Homeserver
|
||||||
|
print(string.split(':')[-1], to_check)
|
||||||
|
if string.split(':')[-1] not in to_check:
|
||||||
|
return False
|
||||||
|
elif string not in to_check:
|
||||||
|
# By username
|
||||||
|
return False
|
||||||
|
return True
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Icinga to Kuma converter.
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=flask
|
||||||
|
Environment="ICINGA2KUMA_ICINGA2_PW=[your icinga2 API password]"
|
||||||
|
WorkingDirectory=/opt/icinga2-checks
|
||||||
|
ExecStart=/opt/matrixgpt/venv/bin/python3
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
Subproject commit 3d8fbf142b71e5e9da3fbffb177fb44542de1200
|
|
Loading…
Reference in New Issue