Skip to content

Commit 7eef1b3

Browse files
authored
Merge pull request #19 from mkdir700/develop
Develop
2 parents 0da0768 + e8f6e1c commit 7eef1b3

File tree

2 files changed

+19
-4
lines changed

2 files changed

+19
-4
lines changed

src/tg_bot/conversations/copytrade/create.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,20 @@
66
from aiogram.types import CallbackQuery, ForceReply, Message
77
from loguru import logger
88

9-
from common.config import settings
109
from tg_bot.conversations.copytrade.render import render
1110
from tg_bot.conversations.states import CopyTradeStates
1211
from tg_bot.keyboards.copytrade import create_copytrade_keyboard
1312
from tg_bot.models.copytrade import CopyTrade
1413
from tg_bot.services.copytrade import CopyTradeService
14+
from tg_bot.services.setting import SettingService
15+
from tg_bot.services.user import UserService
1516
from tg_bot.templates import CREATE_COPYTRADE_MESSAGE
1617
from tg_bot.utils import validate_solana_address
1718

1819
router = Router()
1920
copy_trade_service = CopyTradeService()
21+
setting_service = SettingService()
22+
user_service = UserService()
2023

2124

2225
@router.callback_query(F.data == "create_copytrade")
@@ -31,10 +34,11 @@ async def start_create_copytrade(callback: CallbackQuery, state: FSMContext):
3134
return
3235

3336
chat_id = callback.message.chat.id
37+
pubkey = await user_service.get_pubkey(chat_id=chat_id)
3438

3539
# Initialize copytrade settings
3640
copytrade_settings = CopyTrade(
37-
owner=settings.wallet.keypair.pubkey().__str__(),
41+
owner=pubkey,
3842
chat_id=chat_id,
3943
)
4044

src/tg_bot/main.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from aiogram import Bot, Dispatcher, F
55
from aiogram.client.default import DefaultBotProperties
66
from aiogram.enums import ParseMode
7-
from aiogram.filters import Command
7+
from aiogram.filters import Command, StateFilter
88
from aiogram.fsm.storage.memory import MemoryStorage
99
from loguru import logger
1010

@@ -22,6 +22,7 @@
2222
wallet,
2323
)
2424
from tg_bot.conversations.router import router
25+
from tg_bot.conversations.states import CopyTradeStates, MonitorStates, WalletStates
2526
from tg_bot.middlewares import AuthorizationMiddleware, DebugMiddleware
2627
from tg_bot.notify.notify import Notify
2728

@@ -52,7 +53,17 @@ async def start_bot():
5253
dp.message.register(setting.setting_command, Command("set"))
5354
dp.message.register(wallet.wallet_command, Command("wallet"))
5455
dp.message.register(asset.asset_command, Command("asset"))
55-
dp.message.register(swap.info_command, F.text.regexp(r"^[a-zA-Z0-9]{44}$"))
56+
excluded_states = [
57+
CopyTradeStates.CREATE_WAITING_FOR_ADDRESS,
58+
CopyTradeStates.EDIT_WAITING_FOR_ADDRESS,
59+
MonitorStates.CREATE_WAITING_FOR_ADDRESS,
60+
WalletStates.WAITING_FOR_NEW_PRIVATE_KEY,
61+
]
62+
dp.message.register(
63+
swap.info_command,
64+
F.text.regexp(r"^[a-zA-Z0-9]{44}$"),
65+
~StateFilter(*excluded_states),
66+
)
5667
dp.message.register(
5768
swap.swap_command, Command(re.compile(r"^buy.*"), re.compile(r"^sell.*"))
5869
)

0 commit comments

Comments
 (0)