xync-client 0.0.43.dev42__tar.gz → 0.0.43.dev43__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {xync_client-0.0.43.dev42/xync_client.egg-info → xync_client-0.0.43.dev43}/PKG-INFO +1 -1
- xync_client-0.0.43.dev43/xync_client/Pyrogram/pyro.py +74 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43/xync_client.egg-info}/PKG-INFO +1 -1
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client.egg-info/SOURCES.txt +1 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/.env.sample +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/.gitignore +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/.pre-commit-config.yaml +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/README.md +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/makefile +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/pyproject.toml +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/setup.cfg +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/TestAgent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/TestAsset.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/TestEx.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/TestOrder.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Binance/test_binance.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Bybit/test_bybit.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Bybit/test_bybit_p2p.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Gate/test_gate.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Htx/test_htx_p2p.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Wallet/test_agent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Wallet/test_ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/_test_ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/Agent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/Asset.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/AuthTrait.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/Base.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/BaseTest.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/Ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/InAgent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/Order.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Abc/types.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/binance_async.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/earn_api.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/etype/pm.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/exceptions.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/sapi.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Binance/web_c2c.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/agent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/base.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/etype/pm.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/req.mjs +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BingX/sign.js +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BitGet/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BitGet/agent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BitGet/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BitGet/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BitGet/req.mjs +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/BitPapa/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/InAgent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/agent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/etype/cred.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/etype/order.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/web_earn.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/web_p2p.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Bybit/ws.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Gate/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Gate/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Gate/premarket.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/agent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/earn.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/etype/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/etype/cred.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/etype/pm.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/etype/test.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Htx/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/KuCoin/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/KuCoin/etype/pm.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/KuCoin/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/KuCoin/web.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Mexc/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Mexc/etype/pm.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Mexc/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Okx/etype/ad.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Okx/etype/pm.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Okx/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Alfa/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Alfa/state.json +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Sber/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Tinkoff/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Tinkoff/state.json +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Volet/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Volet/_todo_req/req.mjs +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Volet/_todo_req/req.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Volet/api.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pyrogram/base.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pyrogram/bot.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pyrogram/file.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pyrogram/user.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/agent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/asset.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/auth.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/ex.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/inAgent.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/order.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/pyd.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/pyro.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/TgWallet/web.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/__init__.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/loader.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/pm_unifier.py +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client.egg-info/dependency_links.txt +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client.egg-info/requires.txt +0 -0
- {xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
from asyncio import run, sleep
|
|
2
|
+
|
|
3
|
+
from pyrogram.errors import UserNotParticipant
|
|
4
|
+
from pyrogram.raw.functions.photos import GetUserPhotos
|
|
5
|
+
from pyrogram.raw.types.photos import Photos
|
|
6
|
+
from pyrogram.types import Chat, ChatPrivileges
|
|
7
|
+
from x_model import init_db
|
|
8
|
+
|
|
9
|
+
from xync_client.Pyrogram.client import UserClient, BotClient
|
|
10
|
+
from xync_client.Pyrogram.pg_storage import PgStorage
|
|
11
|
+
from xync_client.loader import TG_API_ID, TG_API_HASH, PG_DSN, TOKEN
|
|
12
|
+
from xync_schema import models
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class PyroClient:
|
|
16
|
+
max_privs = ChatPrivileges(
|
|
17
|
+
can_manage_chat=True, # default
|
|
18
|
+
can_delete_messages=True,
|
|
19
|
+
can_delete_stories=True, # Channels only
|
|
20
|
+
can_manage_video_chats=True, # Groups and supergroups only
|
|
21
|
+
can_restrict_members=True,
|
|
22
|
+
can_promote_members=True,
|
|
23
|
+
can_change_info=True,
|
|
24
|
+
can_post_messages=True, # Channels only
|
|
25
|
+
can_post_stories=True, # Channels only
|
|
26
|
+
can_edit_messages=True, # Channels only
|
|
27
|
+
can_edit_stories=True, # Channels only
|
|
28
|
+
can_invite_users=True,
|
|
29
|
+
can_pin_messages=True, # Groups and supergroups only
|
|
30
|
+
can_manage_topics=True, # Supergroups only
|
|
31
|
+
is_anonymous=True,
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
def __init__(self, ss_id: str):
|
|
35
|
+
self.u: UserClient = UserClient(ss_id, TG_API_ID, TG_API_HASH, storage_engine=PgStorage(ss_id))
|
|
36
|
+
self.b: BotClient = BotClient("6806432376", TG_API_ID, TG_API_HASH, storage_engine=PgStorage("6806432376"))
|
|
37
|
+
|
|
38
|
+
async def create_orders_forum(self, uid: str | int) -> tuple[int, bool]:
|
|
39
|
+
chat: Chat = await self.app.create_supergroup("Xync Orders", "Xync Orders")
|
|
40
|
+
if not (await self.app.toggle_forum_topics(chat_id=chat.id, enabled=True)):
|
|
41
|
+
await self.app.delete_channel(chat.id)
|
|
42
|
+
await chat.leave()
|
|
43
|
+
raise Exception(f"Chat {chat.id} for {self.app.me.username} not converted to forum")
|
|
44
|
+
await chat.add_members(["XyncNetBot"]) # , "xync_bot"
|
|
45
|
+
await chat.promote_member("XyncNetBot", self.max_privs)
|
|
46
|
+
added = await chat.add_members([uid])
|
|
47
|
+
try:
|
|
48
|
+
await sleep(1, await chat.get_member(uid))
|
|
49
|
+
except UserNotParticipant:
|
|
50
|
+
added = False
|
|
51
|
+
# await chat.leave()
|
|
52
|
+
return chat.id, added
|
|
53
|
+
|
|
54
|
+
async def get_user_photos(self, uid: str | int) -> Photos:
|
|
55
|
+
try:
|
|
56
|
+
peer = await self.app.resolve_peer(uid)
|
|
57
|
+
except Exception as e:
|
|
58
|
+
raise e
|
|
59
|
+
return await self.app.invoke(GetUserPhotos(user_id=peer, offset=0, limit=1, max_id=-1))
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
async def main():
|
|
63
|
+
_ = await init_db(PG_DSN, models, True)
|
|
64
|
+
user: models.User = await models.User.filter(status__gt=0).first()
|
|
65
|
+
bot = BotClient(TOKEN)
|
|
66
|
+
await bot.start()
|
|
67
|
+
uc = UserClient(str(user.username_id), bot)
|
|
68
|
+
await uc.start()
|
|
69
|
+
await uc.stop()
|
|
70
|
+
await bot.stop()
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
if __name__ == "__main__":
|
|
74
|
+
run(main())
|
|
@@ -99,6 +99,7 @@ xync_client/Pms/Volet/_todo_req/req.py
|
|
|
99
99
|
xync_client/Pyrogram/base.py
|
|
100
100
|
xync_client/Pyrogram/bot.py
|
|
101
101
|
xync_client/Pyrogram/file.py
|
|
102
|
+
xync_client/Pyrogram/pyro.py
|
|
102
103
|
xync_client/Pyrogram/user.py
|
|
103
104
|
xync_client/TgWallet/agent.py
|
|
104
105
|
xync_client/TgWallet/asset.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Binance/test_binance.py
RENAMED
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Bybit/test_bybit.py
RENAMED
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Bybit/test_bybit_p2p.py
RENAMED
|
File without changes
|
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Htx/test_htx_p2p.py
RENAMED
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/tests/_todo_refact/Wallet/test_agent.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Volet/_todo_req/req.mjs
RENAMED
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client/Pms/Volet/_todo_req/req.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{xync_client-0.0.43.dev42 → xync_client-0.0.43.dev43}/xync_client.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|