Merge branch 'master' into asyncio
This commit is contained in:
@@ -99,8 +99,8 @@ class StateStore:
|
||||
|
||||
def has_power_level(self, room, user, event):
|
||||
room_levels = self.power_levels.get(room, {})
|
||||
required = room_levels["events"].get(event, 95)
|
||||
has = room_levels["users"].get(user, 0)
|
||||
required = room_levels.get("events", {}).get(event, 95)
|
||||
has = room_levels.get("users", {}).get(user, 0)
|
||||
return has >= required
|
||||
|
||||
def set_power_level(self, room, user, level):
|
||||
@@ -109,6 +109,8 @@ class StateStore:
|
||||
"users": {},
|
||||
"events": {},
|
||||
}
|
||||
elif "users" not in self.power_levels[room]:
|
||||
self.power_levels[room]["users"] = {}
|
||||
self.power_levels[room]["users"][user] = level
|
||||
self._autosave()
|
||||
|
||||
|
||||
@@ -254,8 +254,10 @@ async def telegram_event_to_matrix(evt, source, native_replies=False, message_li
|
||||
body = (content["formatted_body"]
|
||||
if "formatted_body" in content
|
||||
else content["body"])
|
||||
reply_to_user = ("<a href='https://matrix.to/#/"
|
||||
+ f"{event['sender']}'>{event['sender']}</a>")
|
||||
sender = event['sender']
|
||||
puppet = p.Puppet.get_by_mxid(sender, create=False)
|
||||
displayname = puppet.displayname if puppet else sender
|
||||
reply_to_user = (f"<a href='https://matrix.to/#/{sender}'>{displayname}</a>")
|
||||
reply_to_msg = (("<a href='https://matrix.to/#/"
|
||||
+ f"{msg.mx_room}/{msg.mxid}'>Reply</a>")
|
||||
if message_link_in_reply else "Reply")
|
||||
|
||||
@@ -16,13 +16,14 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
import logging
|
||||
import asyncio
|
||||
import platform
|
||||
|
||||
from telethon.tl.types import *
|
||||
from telethon.tl.types import User as TLUser
|
||||
|
||||
from .db import User as DBUser, Message as DBMessage
|
||||
from .tgclient import MautrixTelegramClient
|
||||
from . import portal as po, puppet as pu
|
||||
from . import portal as po, puppet as pu, __version__
|
||||
|
||||
config = None
|
||||
|
||||
@@ -84,10 +85,15 @@ class User:
|
||||
# region Telegram connection management
|
||||
|
||||
async def start(self):
|
||||
device = f"{platform.system()} {platform.release()}"
|
||||
sysversion = MautrixTelegramClient.__version__
|
||||
self.client = MautrixTelegramClient(self.mxid,
|
||||
config["telegram.api_id"],
|
||||
config["telegram.api_hash"],
|
||||
loop=self.loop)
|
||||
loop=self.loop,
|
||||
app_version=__version__,
|
||||
system_version=sysversion,
|
||||
device_model=device)
|
||||
self.client.add_update_handler(self.update_catch)
|
||||
self.connected = await self.client.connect()
|
||||
if self.logged_in:
|
||||
|
||||
Reference in New Issue
Block a user