xync-client 0.0.11.dev10__tar.gz → 0.0.11.dev12__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.
Files changed (66) hide show
  1. {xync_client-0.0.11.dev10/xync_client.egg-info → xync_client-0.0.11.dev12}/PKG-INFO +2 -2
  2. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/pyproject.toml +1 -1
  3. xync_client-0.0.11.dev12/xync_client/BingX/base.py +20 -0
  4. xync_client-0.0.11.dev12/xync_client/BingX/ex.py +61 -0
  5. xync_client-0.0.11.dev12/xync_client/BingX/req.mjs +14 -0
  6. xync_client-0.0.11.dev12/xync_client/BingX/sign.js +3368 -0
  7. xync_client-0.0.11.dev12/xync_client/BingX/test/main.py +39 -0
  8. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/BitGet/ex.py +2 -1
  9. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12/xync_client.egg-info}/PKG-INFO +2 -2
  10. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client.egg-info/SOURCES.txt +3 -0
  11. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client.egg-info/requires.txt +1 -1
  12. xync_client-0.0.11.dev10/xync_client/BingX/ex.py +0 -66
  13. xync_client-0.0.11.dev10/xync_client/BingX/test/main.py +0 -22
  14. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/.env.sample +0 -0
  15. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/.gitignore +0 -0
  16. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/.pre-commit-config.yaml +0 -0
  17. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/README.md +0 -0
  18. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/makefile +0 -0
  19. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/setup.cfg +0 -0
  20. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/tests/Binance/test_binance.py +0 -0
  21. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/tests/Bybit/test_bybit.py +0 -0
  22. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/tests/Bybit/test_bybit_p2p.py +0 -0
  23. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/tests/Gate/test_gate.py +0 -0
  24. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/tests/Htx/test_htx_p2p.py +0 -0
  25. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/tests/__init__.py +0 -0
  26. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/tests/test_ex.py +0 -0
  27. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Abc/Agent.py +0 -0
  28. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Abc/Auth.py +0 -0
  29. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Abc/Base.py +0 -0
  30. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Abc/Ex.py +0 -0
  31. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Abc/Order.py +0 -0
  32. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/AbcTest/AgentTest.py +0 -0
  33. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/AbcTest/BaseTest.py +0 -0
  34. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/AbcTest/ExTest.py +0 -0
  35. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/AbcTest/OrderTest.py +0 -0
  36. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Binance/__init__.py +0 -0
  37. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Binance/binance_async.py +0 -0
  38. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Binance/earn_api.py +0 -0
  39. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Binance/ex.py +0 -0
  40. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Binance/exceptions.py +0 -0
  41. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Binance/sapi.py +0 -0
  42. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Binance/web_c2c.py +0 -0
  43. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/BitGet/__init__.py +0 -0
  44. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/BitGet/agent.py +0 -0
  45. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/BitGet/req.mjs +0 -0
  46. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Bybit/ex.py +0 -0
  47. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Bybit/web_earn.py +0 -0
  48. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Bybit/web_p2p.py +0 -0
  49. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Gate/premarket.py +0 -0
  50. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Gate/pub.py +0 -0
  51. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Htx/agent.py +0 -0
  52. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Htx/earn.py +0 -0
  53. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Htx/ex.py +0 -0
  54. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/KuCoin/pub.py +0 -0
  55. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/KuCoin/web.py +0 -0
  56. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/Okx/ex.py +0 -0
  57. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/TgWallet/agent.py +0 -0
  58. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/TgWallet/auth.py +0 -0
  59. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/TgWallet/ex.py +0 -0
  60. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/TgWallet/order.py +0 -0
  61. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/TgWallet/pyro.py +0 -0
  62. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/TgWallet/web.py +0 -0
  63. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/__init__.py +0 -0
  64. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client/loader.py +0 -0
  65. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client.egg-info/dependency_links.txt +0 -0
  66. {xync_client-0.0.11.dev10 → xync_client-0.0.11.dev12}/xync_client.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xync-client
3
- Version: 0.0.11.dev10
3
+ Version: 0.0.11.dev12
4
4
  Author-email: Mike Artemiev <mixartemev@gmail.com>
5
5
  Project-URL: Homepage, https://gitlab.com/XyncNet/client
6
6
  Project-URL: Repository, https://gitlab.com/XyncNet/client
@@ -11,7 +11,7 @@ Requires-Dist: pybit
11
11
  Requires-Dist: pyotp
12
12
  Requires-Dist: pyrogram
13
13
  Requires-Dist: python-okx
14
- Requires-Dist: xn-client>=0.0.3dev2
14
+ Requires-Dist: xn-client>=0.0.3dev3
15
15
  Requires-Dist: xync-schema
16
16
  Provides-Extra: dev
17
17
  Requires-Dist: build; extra == "dev"
@@ -13,7 +13,7 @@ dependencies = [
13
13
  "pyotp",
14
14
  "pyrogram",
15
15
  "python-okx",
16
- "xn-client>=0.0.3dev2",
16
+ "xn-client>=0.0.3dev3",
17
17
  "xync-schema"
18
18
  ]
19
19
 
@@ -0,0 +1,20 @@
1
+ import subprocess
2
+ from datetime import datetime
3
+ from json import dumps
4
+ from uuid import uuid4
5
+
6
+ from xync_client.Abc.Base import BaseClient
7
+
8
+
9
+ class BaseBingXClient(BaseClient):
10
+ def _prehook(self, _payload: dict = None):
11
+ traceid = str(uuid4()).replace("-", "")
12
+ now = str(int(datetime.now().timestamp() * 1000))
13
+ payload = dumps(_payload, separators=(",", ":"), sort_keys=True) if _payload else "{}"
14
+ p = subprocess.Popen(["node", "req.mjs", now, traceid, payload], stdout=subprocess.PIPE)
15
+ sign = p.stdout.read().decode().strip()
16
+ return {
17
+ "sign": sign,
18
+ "timestamp": now,
19
+ "traceid": traceid,
20
+ }
@@ -0,0 +1,61 @@
1
+ from asyncio import run
2
+
3
+ from x_model import init_db
4
+ from xync_client.Abc.Base import DictOfDicts, FlatDict
5
+ from xync_schema import models
6
+ from xync_schema.models import Ex
7
+
8
+ from xync_client.Abc.Ex import BaseExClient
9
+ from xync_client.BingX.base import BaseBingXClient
10
+ from xync_client.loader import PG_DSN
11
+
12
+
13
+ class Client(BaseExClient, BaseBingXClient):
14
+ headers: dict[str, str] = {
15
+ "app_version": "9.0.5",
16
+ "device_id": "ccfb6d50-b63b-11ef-b31f-ef1f76f67c4e",
17
+ "lang": "ru-RU",
18
+ "platformid": "30",
19
+ }
20
+
21
+ # 20: Список всех платежных методов на бирже
22
+ async def pms(self) -> DictOfDicts: # {pm.exid: pm}
23
+ curs = await self.curs()
24
+ pp = {}
25
+ for _id, cur in curs.items():
26
+ pms = await self._get("/api/c2c/v1/advert/payment/list", params={"fiat": cur})
27
+ [pp.update({p["id"]: {"name": p["name"], "logo": p["icon"]}}) for p in pms["data"]["paymentMethodList"]]
28
+ return pp
29
+
30
+ # 21: Список поддерживаемых валют
31
+ async def curs(self) -> FlatDict: # {cur.exid: cur.ticker}
32
+ params = {
33
+ "type": "1",
34
+ "asset": "USDT",
35
+ "coinType": "2",
36
+ }
37
+ curs = await self._get("/api/c2c/v1/common/supportCoins", params=params)
38
+ return {cur["id"]: cur["name"] for cur in curs["data"]["coins"]}
39
+
40
+ # 22: cur_pms_map
41
+ async def cur_pms_map(self):
42
+ pass
43
+
44
+ # 23: coins
45
+ async def coins(self):
46
+ pass
47
+
48
+ # 24: ads
49
+ async def ads(self, coin_exid: str, cur_exid: str, is_sell: bool, pm_exids: list[str | int] = None):
50
+ pass
51
+
52
+
53
+ async def main():
54
+ _ = await init_db(PG_DSN, models, True)
55
+ bg = await Ex.get(name="BingX")
56
+ cl = Client(bg)
57
+ await cl.pms()
58
+ await cl.close()
59
+
60
+
61
+ run(main())
@@ -0,0 +1,14 @@
1
+ import cC from './sign.js'
2
+
3
+ const [_, __, now, trace, payload] = process.argv
4
+ const e = {
5
+ timestamp: now,
6
+ traceId: trace,
7
+ deviceId: "ccfb6d50-b63b-11ef-b31f-ef1f76f67c4e",
8
+ platformId: "30",
9
+ appVersion: "9.0.5",
10
+ requestPayload: JSON.parse(payload)
11
+ };
12
+
13
+ const sgn = cC(e).sign;
14
+ console.log(sgn);