Fix some errors in StateStore and add app version

This commit is contained in:
Tulir Asokan
2018-02-10 13:21:42 +02:00
parent 40178d5917
commit 706d19fde8
2 changed files with 12 additions and 4 deletions
+4 -2
View File
@@ -99,8 +99,8 @@ class StateStore:
def has_power_level(self, room, user, event): def has_power_level(self, room, user, event):
room_levels = self.power_levels.get(room, {}) room_levels = self.power_levels.get(room, {})
required = room_levels["events"].get(event, 95) required = room_levels.get("events", {}).get(event, 95)
has = room_levels["users"].get(user, 0) has = room_levels.get("users", {}).get(user, 0)
return has >= required return has >= required
def set_power_level(self, room, user, level): def set_power_level(self, room, user, level):
@@ -109,6 +109,8 @@ class StateStore:
"users": {}, "users": {},
"events": {}, "events": {},
} }
elif "users" not in self.power_levels[room]:
self.power_levels[room]["users"] = {}
self.power_levels[room]["users"][user] = level self.power_levels[room]["users"][user] = level
self._autosave() self._autosave()
+8 -2
View File
@@ -15,13 +15,14 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
import logging import logging
import platform
from telethon.tl.types import * from telethon.tl.types import *
from telethon.tl.types import User as TLUser from telethon.tl.types import User as TLUser
from .db import User as DBUser, Message as DBMessage from .db import User as DBUser, Message as DBMessage
from .tgclient import MautrixTelegramClient from .tgclient import MautrixTelegramClient
from . import portal as po, puppet as pu from . import portal as po, puppet as pu, __version__
config = None config = None
@@ -82,10 +83,15 @@ class User:
# region Telegram connection management # region Telegram connection management
def start(self): def start(self):
device = f"{platform.system()} {platform.release()}"
sysversion = MautrixTelegramClient.__version__
self.client = MautrixTelegramClient(self.mxid, self.client = MautrixTelegramClient(self.mxid,
config["telegram.api_id"], config["telegram.api_id"],
config["telegram.api_hash"], config["telegram.api_hash"],
update_workers=2) update_workers=2,
app_version=__version__,
system_version=sysversion,
device_model=device)
self.connected = self.client.connect() self.connected = self.client.connect()
if self.logged_in: if self.logged_in:
self.post_login() self.post_login()