-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.py
More file actions
48 lines (29 loc) · 1.17 KB
/
main.py
File metadata and controls
48 lines (29 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import asyncio
import signal
from app_config.app_config import AppConfig
from services.api_client import APIClient
from services.logger import setup_logger
from services.env import ConfigENV
from services.websocket import HeliusWebSocketClient
from settings.filters import RUG_CHECKER
from utils.check_rug_pull import check_rug_pull
from utils.handle_shutdown import handle_shutdown # ✅ Correct import
from utils.setup import setup
from utils.cyan_message import cyan_message
logger = setup_logger("MAIN")
def main():
if not setup():
return
logger.info(cyan_message("System initialized successfully!"))
signal.signal(signal.SIGINT, handle_shutdown)
signal.signal(signal.SIGTERM, handle_shutdown)
if __name__ == "__main__":
main()
client = HeliusWebSocketClient(
socket_url=ConfigENV.HELIUS_URL,
socket_method="logsSubscribe",
socket_id="fresh-tokens",
socket_params=[
{"mentions": [AppConfig.LIQUIDITY_POOL.get("RADIYUM_PROGRAM_ID")]},
{"commitment": AppConfig.LIQUIDITY_POOL.get("COMMITMENT")}])
asyncio.get_event_loop().run_until_complete(client.connect())