arpakitlib 1.8.85__py3-none-any.whl → 1.8.88__py3-none-any.whl
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.
- arpakitlib/_arpakit_project_template_v_5/arpakitlib_project_template_info.json +1 -1
- arpakitlib/_arpakit_project_template_v_5/command/show_arpakitlib_project_template_info.py +9 -0
- arpakitlib/_arpakit_project_template_v_5/project/api/router/general/healthcheck.py +2 -2
- arpakitlib/_arpakit_project_template_v_5/project/core/settings.py +2 -0
- arpakitlib/_arpakit_project_template_v_5/project/sandbox/sandbox_1.py +0 -5
- arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/user.py +14 -5
- arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/user_token.py +10 -1
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/blank/admin.py +7 -7
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/blank/client.py +18 -20
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/callback/admin.py +5 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/callback/client.py +1 -5
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/const.py +5 -3
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/event.py +12 -1
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/filter_/user_roles_has_admin.py +2 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/filter_/user_roles_has_client.py +2 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/kb/inline_/admin/hello_world.py +16 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/kb/inline_/client/support.py +15 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/kb/static_/{client → admin}/hello_world.py +3 -3
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/middleware/common.py +2 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/middleware/init_user.py +14 -14
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/arpakitlib_project_template_info.py +3 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/clear_log_file.py +9 -3
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/current_state.py +31 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/drop_sqlalchemy_db.py +5 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/hello_world.py +73 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/init_sqlalchemy_db.py +5 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/kb_with_not_modified.py +10 -3
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/kb_with_old_cd.py +3 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/kb_with_raise_error.py +6 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/kb_with_remove_message.py +7 -4
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/log_file.py +6 -1
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/me.py +7 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/raise_fake_error.py +4 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/reinit_sqlalchemy_db.py +5 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/set_tg_bot_commands.py +5 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/about.py +8 -5
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/author.py +8 -5
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general/support.py → client/cancel.py} +9 -6
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/error_handler.py +7 -3
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/client/healthcheck.py +21 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/raw_callback_query.py +4 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/raw_inline_query.py +2 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/raw_message.py +5 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/remove_message.py +4 -2
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/start.py +8 -5
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/client/support.py +37 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/main_router.py +16 -12
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/state/__init__.py +0 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/state/admin.py +0 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/state/client.py +5 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/state/common.py +0 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/state/util.py +0 -0
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/tg_bot_dispatcher.py +1 -1
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/util/notify_admins.py +6 -3
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/util/set_tg_bot_commands.py +14 -15
- arpakitlib/_arpakit_project_template_v_5/project/util/etc.py +0 -0
- arpakitlib/ar_blank_util.py +59 -2
- arpakitlib/ar_json_util.py +1 -1
- {arpakitlib-1.8.85.dist-info → arpakitlib-1.8.88.dist-info}/METADATA +1 -1
- {arpakitlib-1.8.85.dist-info → arpakitlib-1.8.88.dist-info}/RECORD +65 -55
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/kb/inline_/client/hello_world.py +0 -16
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/general/healthcheck.py +0 -18
- arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/general/hello_world.py +0 -47
- /arpakitlib/_arpakit_project_template_v_5/project/tg_bot/middleware/{middleware.py → uil.py} +0 -0
- /arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/__init__.py +0 -0
- {arpakitlib-1.8.85.dist-info → arpakitlib-1.8.88.dist-info}/LICENSE +0 -0
- {arpakitlib-1.8.85.dist-info → arpakitlib-1.8.88.dist-info}/WHEEL +0 -0
- {arpakitlib-1.8.85.dist-info → arpakitlib-1.8.88.dist-info}/entry_points.txt +0 -0
@@ -1,8 +1,9 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
|
3
4
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
4
5
|
from project.sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
5
|
-
from project.tg_bot.blank.admin import
|
6
|
+
from project.tg_bot.blank.admin import get_cached_eng_admin_tg_bot_blank
|
6
7
|
from project.tg_bot.const import AdminTgBotCommands
|
7
8
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
8
9
|
from project.tg_bot.filter_.user_roles_has_admin import UserRolesHasAdminTgBotFilter
|
@@ -19,10 +20,12 @@ tg_bot_router = aiogram.Router()
|
|
19
20
|
@as_tg_command()
|
20
21
|
async def _(
|
21
22
|
m: aiogram.types.Message,
|
23
|
+
state: FSMContext,
|
22
24
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
23
25
|
**kwargs
|
24
26
|
):
|
27
|
+
await state.clear()
|
25
28
|
get_cached_sqlalchemy_db().init()
|
26
29
|
await m.answer(
|
27
|
-
text=
|
30
|
+
text=get_cached_eng_admin_tg_bot_blank().good()
|
28
31
|
)
|
arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/kb_with_not_modified.py
CHANGED
@@ -2,14 +2,16 @@ import aiogram
|
|
2
2
|
from aiogram import Router, types
|
3
3
|
from aiogram.filters import Command
|
4
4
|
from aiogram.filters.callback_data import CallbackData
|
5
|
+
from aiogram.fsm.context import FSMContext
|
5
6
|
from aiogram.types import InlineKeyboardButton
|
6
7
|
from aiogram.utils.keyboard import InlineKeyboardBuilder
|
7
8
|
|
8
9
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
9
|
-
from project.tg_bot.blank.admin import
|
10
|
+
from project.tg_bot.blank.admin import get_cached_eng_admin_tg_bot_blank
|
10
11
|
from project.tg_bot.const import AdminTgBotCommands
|
11
12
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
12
13
|
from project.tg_bot.filter_.user_roles_has_admin import UserRolesHasAdminTgBotFilter
|
14
|
+
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
13
15
|
|
14
16
|
tg_bot_router = Router()
|
15
17
|
|
@@ -26,6 +28,8 @@ class _CD(CallbackData, prefix=AdminTgBotCommands.kb_with_not_modified):
|
|
26
28
|
@as_tg_command()
|
27
29
|
async def _(
|
28
30
|
m: types.Message,
|
31
|
+
state: FSMContext,
|
32
|
+
middleware_data_tg_bot: MiddlewareDataTgBot,
|
29
33
|
**kwargs
|
30
34
|
):
|
31
35
|
kb_builder = InlineKeyboardBuilder()
|
@@ -34,7 +38,7 @@ async def _(
|
|
34
38
|
callback_data=_CD().pack()
|
35
39
|
))
|
36
40
|
await m.answer(
|
37
|
-
text=
|
41
|
+
text=get_cached_eng_admin_tg_bot_blank().good(),
|
38
42
|
reply_markup=kb_builder.as_markup()
|
39
43
|
)
|
40
44
|
|
@@ -46,14 +50,17 @@ async def _(
|
|
46
50
|
)
|
47
51
|
async def _(
|
48
52
|
cq: types.CallbackQuery,
|
53
|
+
state: FSMContext,
|
54
|
+
middleware_data_tg_bot: MiddlewareDataTgBot,
|
49
55
|
**kwargs
|
50
56
|
):
|
57
|
+
await state.clear()
|
51
58
|
kb_builder = InlineKeyboardBuilder()
|
52
59
|
kb_builder.row(InlineKeyboardButton(
|
53
60
|
text="Button raises Not Modified",
|
54
61
|
callback_data=_CD().pack()
|
55
62
|
))
|
56
63
|
await cq.message.edit_text(
|
57
|
-
text=
|
64
|
+
text=get_cached_eng_admin_tg_bot_blank().good(),
|
58
65
|
reply_markup=kb_builder.as_markup()
|
59
66
|
)
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
from aiogram.types import InlineKeyboardButton
|
3
4
|
from aiogram.utils.keyboard import InlineKeyboardBuilder
|
4
5
|
|
@@ -24,16 +25,16 @@ class _CD(BaseCD, prefix=AdminTgBotCommands.kb_with_old_cd):
|
|
24
25
|
@as_tg_command()
|
25
26
|
async def _(
|
26
27
|
m: aiogram.types.Message,
|
28
|
+
state: FSMContext,
|
27
29
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
28
30
|
**kwargs
|
29
31
|
):
|
32
|
+
await state.clear()
|
30
33
|
kb_builder = InlineKeyboardBuilder()
|
31
|
-
|
32
34
|
kb_builder.row(InlineKeyboardButton(
|
33
35
|
text="Button with old data",
|
34
36
|
callback_data=_CD().pack()
|
35
37
|
))
|
36
|
-
|
37
38
|
await m.answer(
|
38
39
|
text="Old data",
|
39
40
|
reply_markup=kb_builder.as_markup()
|
@@ -1,9 +1,10 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
from aiogram.types import InlineKeyboardButton
|
3
4
|
from aiogram.utils.keyboard import InlineKeyboardBuilder
|
4
5
|
|
5
6
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
6
|
-
from project.tg_bot.blank.admin import
|
7
|
+
from project.tg_bot.blank.admin import get_cached_eng_admin_tg_bot_blank
|
7
8
|
from project.tg_bot.callback.common import BaseCD
|
8
9
|
from project.tg_bot.const import AdminTgBotCommands
|
9
10
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
@@ -25,16 +26,18 @@ class _CD(BaseCD, prefix=AdminTgBotCommands.kb_with_raise_error):
|
|
25
26
|
@as_tg_command()
|
26
27
|
async def _(
|
27
28
|
m: aiogram.types.Message,
|
29
|
+
state: FSMContext,
|
28
30
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
29
31
|
**kwargs
|
30
32
|
):
|
33
|
+
await state.clear()
|
31
34
|
kb_builder = InlineKeyboardBuilder()
|
32
35
|
kb_builder.row(InlineKeyboardButton(
|
33
36
|
text="Raise fake error",
|
34
37
|
callback_data=_CD().pack()
|
35
38
|
))
|
36
39
|
await m.answer(
|
37
|
-
text=
|
40
|
+
text=get_cached_eng_admin_tg_bot_blank().good(),
|
38
41
|
reply_markup=kb_builder.as_markup()
|
39
42
|
)
|
40
43
|
|
@@ -42,6 +45,7 @@ async def _(
|
|
42
45
|
@tg_bot_router.callback_query(_CD.filter())
|
43
46
|
async def _(
|
44
47
|
m: aiogram.types.Message,
|
48
|
+
state: FSMContext,
|
45
49
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
46
50
|
**kwargs
|
47
51
|
):
|
arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/kb_with_remove_message.py
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
from aiogram.types import InlineKeyboardButton
|
3
4
|
from aiogram.utils.keyboard import InlineKeyboardBuilder
|
4
5
|
|
5
6
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
6
|
-
from project.tg_bot.blank.admin import
|
7
|
-
from project.tg_bot.callback.client import
|
7
|
+
from project.tg_bot.blank.admin import get_cached_eng_admin_tg_bot_blank
|
8
|
+
from project.tg_bot.callback.client import RemoveMessageClientCD
|
8
9
|
from project.tg_bot.const import AdminTgBotCommands
|
9
10
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
10
11
|
from project.tg_bot.filter_.user_roles_has_admin import UserRolesHasAdminTgBotFilter
|
@@ -21,15 +22,17 @@ tg_bot_router = aiogram.Router()
|
|
21
22
|
@as_tg_command()
|
22
23
|
async def _(
|
23
24
|
m: aiogram.types.Message,
|
25
|
+
state: FSMContext,
|
24
26
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
25
27
|
**kwargs
|
26
28
|
):
|
29
|
+
await state.clear()
|
27
30
|
kb_builder = InlineKeyboardBuilder()
|
28
31
|
kb_builder.row(InlineKeyboardButton(
|
29
32
|
text="Remove",
|
30
|
-
callback_data=
|
33
|
+
callback_data=RemoveMessageClientCD().pack()
|
31
34
|
))
|
32
35
|
await m.answer(
|
33
|
-
text=
|
36
|
+
text=get_cached_eng_admin_tg_bot_blank().good(),
|
34
37
|
reply_markup=kb_builder.as_markup()
|
35
38
|
)
|
@@ -3,6 +3,7 @@ import os
|
|
3
3
|
import aiogram
|
4
4
|
from aiogram import Router, types
|
5
5
|
from aiogram.filters import Command
|
6
|
+
from aiogram.fsm.context import FSMContext
|
6
7
|
from aiogram.types import FSInputFile
|
7
8
|
|
8
9
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
@@ -10,6 +11,7 @@ from project.core.settings import get_cached_settings
|
|
10
11
|
from project.tg_bot.const import AdminTgBotCommands
|
11
12
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
12
13
|
from project.tg_bot.filter_.user_roles_has_admin import UserRolesHasAdminTgBotFilter
|
14
|
+
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
13
15
|
|
14
16
|
tg_bot_router = Router()
|
15
17
|
|
@@ -22,11 +24,14 @@ tg_bot_router = Router()
|
|
22
24
|
@as_tg_command(passwd_validator=get_cached_settings().tg_bot_command_passwd)
|
23
25
|
async def _(
|
24
26
|
m: types.Message,
|
27
|
+
state: FSMContext,
|
28
|
+
middleware_data_tg_bot: MiddlewareDataTgBot,
|
25
29
|
**kwargs
|
26
30
|
):
|
31
|
+
await state.clear()
|
27
32
|
with open(get_cached_settings().log_filepath, mode="r") as f:
|
28
33
|
if not f.read():
|
29
|
-
await m.answer("
|
34
|
+
await m.answer("Log file is empty")
|
30
35
|
return
|
31
36
|
|
32
37
|
await m.answer_document(
|
@@ -1,7 +1,8 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
|
3
4
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
4
|
-
from project.tg_bot.blank.admin import
|
5
|
+
from project.tg_bot.blank.admin import get_cached_eng_admin_tg_bot_blank
|
5
6
|
from project.tg_bot.const import AdminTgBotCommands
|
6
7
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
7
8
|
from project.tg_bot.filter_.user_roles_has_admin import UserRolesHasAdminTgBotFilter
|
@@ -18,7 +19,11 @@ tg_bot_router = aiogram.Router()
|
|
18
19
|
@as_tg_command()
|
19
20
|
async def _(
|
20
21
|
m: aiogram.types.Message,
|
22
|
+
state: FSMContext,
|
21
23
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
22
24
|
**kwargs
|
23
25
|
):
|
24
|
-
await
|
26
|
+
await state.clear()
|
27
|
+
await m.answer(
|
28
|
+
text=get_cached_eng_admin_tg_bot_blank().user_dbm(user_dbm=middleware_data_tg_bot.current_user_dbm)
|
29
|
+
)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
|
3
4
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
4
|
-
from project.core.settings import get_cached_settings
|
5
5
|
from project.tg_bot.const import AdminTgBotCommands
|
6
6
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
7
7
|
from project.tg_bot.filter_.user_roles_has_admin import UserRolesHasAdminTgBotFilter
|
@@ -15,10 +15,12 @@ tg_bot_router = aiogram.Router()
|
|
15
15
|
UserRolesHasAdminTgBotFilter(),
|
16
16
|
aiogram.filters.Command(AdminTgBotCommands.raise_fake_error)
|
17
17
|
)
|
18
|
-
@as_tg_command(
|
18
|
+
@as_tg_command()
|
19
19
|
async def _(
|
20
20
|
m: aiogram.types.Message,
|
21
|
+
state: FSMContext,
|
21
22
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
22
23
|
**kwargs
|
23
24
|
):
|
25
|
+
await state.clear()
|
24
26
|
raise Exception("fake error")
|
arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/admin/reinit_sqlalchemy_db.py
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
import aiogram
|
2
2
|
from aiogram import Router
|
3
3
|
from aiogram.filters import Command
|
4
|
+
from aiogram.fsm.context import FSMContext
|
4
5
|
|
5
6
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
6
7
|
from project.core.settings import get_cached_settings
|
7
8
|
from project.sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
8
|
-
from project.tg_bot.blank.admin import
|
9
|
+
from project.tg_bot.blank.admin import get_cached_eng_admin_tg_bot_blank
|
9
10
|
from project.tg_bot.const import AdminTgBotCommands
|
10
11
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
11
12
|
from project.tg_bot.filter_.not_prod_mode_filter import NotProdModeTgBotFilter
|
@@ -24,8 +25,10 @@ tg_bot_router = Router()
|
|
24
25
|
@as_tg_command(passwd_validator=get_cached_settings().tg_bot_command_passwd)
|
25
26
|
async def _(
|
26
27
|
m: aiogram.types.Message,
|
28
|
+
state: FSMContext,
|
27
29
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
28
30
|
**kwargs
|
29
31
|
):
|
32
|
+
await state.clear()
|
30
33
|
get_cached_sqlalchemy_db().reinit()
|
31
|
-
await m.answer(text=
|
34
|
+
await m.answer(text=get_cached_eng_admin_tg_bot_blank().good())
|
@@ -1,9 +1,10 @@
|
|
1
1
|
import aiogram
|
2
2
|
from aiogram import Router
|
3
3
|
from aiogram.filters import Command
|
4
|
+
from aiogram.fsm.context import FSMContext
|
4
5
|
|
5
6
|
from arpakitlib.ar_aiogram_util import as_tg_command
|
6
|
-
from project.tg_bot.blank.admin import
|
7
|
+
from project.tg_bot.blank.admin import get_cached_eng_admin_tg_bot_blank
|
7
8
|
from project.tg_bot.const import AdminTgBotCommands
|
8
9
|
from project.tg_bot.filter_.is_private_chat import IsPrivateChatTgBotFilter
|
9
10
|
from project.tg_bot.filter_.user_roles_has_admin import UserRolesHasAdminTgBotFilter
|
@@ -21,8 +22,10 @@ tg_bot_router = Router()
|
|
21
22
|
@as_tg_command()
|
22
23
|
async def _(
|
23
24
|
m: aiogram.types.Message,
|
25
|
+
state: FSMContext,
|
24
26
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
25
27
|
**kwargs
|
26
28
|
):
|
29
|
+
await state.clear()
|
27
30
|
await set_all_tg_bot_commands()
|
28
|
-
await m.answer(
|
31
|
+
await m.answer(get_cached_eng_admin_tg_bot_blank().good())
|
@@ -3,9 +3,10 @@ import logging
|
|
3
3
|
import aiogram
|
4
4
|
from aiogram import Router
|
5
5
|
from aiogram.filters import Command, or_f
|
6
|
+
from aiogram.fsm.context import FSMContext
|
6
7
|
|
7
|
-
from project.tg_bot.blank.client import
|
8
|
-
from project.tg_bot.const import
|
8
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
9
|
+
from project.tg_bot.const import ClientTgBotCommands
|
9
10
|
from project.tg_bot.filter_.message_text import MessageTextTgBotFilter
|
10
11
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
11
12
|
|
@@ -15,16 +16,18 @@ _logger = logging.getLogger(__name__)
|
|
15
16
|
|
16
17
|
@tg_bot_router.message(
|
17
18
|
or_f(
|
18
|
-
Command(
|
19
|
+
Command(ClientTgBotCommands.about),
|
19
20
|
MessageTextTgBotFilter([
|
20
|
-
|
21
|
+
ClientTgBotCommands.about,
|
21
22
|
"о проекте"
|
22
23
|
], ignore_case=True)
|
23
24
|
),
|
24
25
|
)
|
25
26
|
async def _(
|
26
27
|
m: aiogram.types.Message,
|
28
|
+
state: FSMContext,
|
27
29
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
28
30
|
**kwargs
|
29
31
|
):
|
30
|
-
await
|
32
|
+
await state.clear()
|
33
|
+
await m.answer(text=get_cached_rus_client_tg_bot_blank().about())
|
@@ -3,9 +3,10 @@ import logging
|
|
3
3
|
import aiogram
|
4
4
|
from aiogram import Router
|
5
5
|
from aiogram.filters import Command, or_f
|
6
|
+
from aiogram.fsm.context import FSMContext
|
6
7
|
|
7
|
-
from project.tg_bot.blank.client import
|
8
|
-
from project.tg_bot.const import
|
8
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
9
|
+
from project.tg_bot.const import ClientTgBotCommands
|
9
10
|
from project.tg_bot.filter_.message_text import MessageTextTgBotFilter
|
10
11
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
11
12
|
|
@@ -15,9 +16,9 @@ _logger = logging.getLogger(__name__)
|
|
15
16
|
|
16
17
|
@tg_bot_router.message(
|
17
18
|
or_f(
|
18
|
-
Command(
|
19
|
+
Command(ClientTgBotCommands.author),
|
19
20
|
MessageTextTgBotFilter([
|
20
|
-
|
21
|
+
ClientTgBotCommands.about,
|
21
22
|
"автор",
|
22
23
|
"авторы"
|
23
24
|
], ignore_case=True)
|
@@ -25,7 +26,9 @@ _logger = logging.getLogger(__name__)
|
|
25
26
|
)
|
26
27
|
async def _(
|
27
28
|
m: aiogram.types.Message,
|
29
|
+
state: FSMContext,
|
28
30
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
29
31
|
**kwargs
|
30
32
|
):
|
31
|
-
await
|
33
|
+
await state.clear()
|
34
|
+
await m.answer(text=get_cached_rus_client_tg_bot_blank().author())
|
@@ -3,9 +3,10 @@ import logging
|
|
3
3
|
import aiogram
|
4
4
|
from aiogram import Router
|
5
5
|
from aiogram.filters import Command, or_f
|
6
|
+
from aiogram.fsm.context import FSMContext
|
6
7
|
|
7
|
-
from project.tg_bot.blank.client import
|
8
|
-
from project.tg_bot.const import
|
8
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
9
|
+
from project.tg_bot.const import ClientTgBotCommands
|
9
10
|
from project.tg_bot.filter_.message_text import MessageTextTgBotFilter
|
10
11
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
11
12
|
|
@@ -15,16 +16,18 @@ _logger = logging.getLogger(__name__)
|
|
15
16
|
|
16
17
|
@tg_bot_router.message(
|
17
18
|
or_f(
|
18
|
-
Command(
|
19
|
+
Command(ClientTgBotCommands.cancel),
|
19
20
|
MessageTextTgBotFilter([
|
20
|
-
|
21
|
-
"
|
21
|
+
ClientTgBotCommands.cancel,
|
22
|
+
"отменить",
|
22
23
|
], ignore_case=True)
|
23
24
|
)
|
24
25
|
)
|
25
26
|
async def _(
|
26
27
|
m: aiogram.types.Message,
|
28
|
+
state: FSMContext,
|
27
29
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
28
30
|
**kwargs
|
29
31
|
):
|
30
|
-
await
|
32
|
+
await state.clear()
|
33
|
+
await m.answer(text=get_cached_rus_client_tg_bot_blank().cancel())
|
arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/error_handler.py
RENAMED
@@ -3,11 +3,12 @@ import logging
|
|
3
3
|
import aiogram
|
4
4
|
from aiogram import Router
|
5
5
|
from aiogram.exceptions import TelegramBadRequest
|
6
|
+
from aiogram.fsm.context import FSMContext
|
6
7
|
|
7
8
|
from arpakitlib.ar_exception_util import exception_to_traceback_str
|
8
9
|
from project.sqlalchemy_db_.sqlalchemy_db import get_cached_sqlalchemy_db
|
9
10
|
from project.sqlalchemy_db_.sqlalchemy_model import StoryLogDBM
|
10
|
-
from project.tg_bot.blank.client import
|
11
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
11
12
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
12
13
|
|
13
14
|
_logger = logging.getLogger(__name__)
|
@@ -18,9 +19,12 @@ tg_bot_router = Router()
|
|
18
19
|
@tg_bot_router.error()
|
19
20
|
async def _(
|
20
21
|
error_event: aiogram.types.ErrorEvent,
|
22
|
+
state: FSMContext,
|
21
23
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
22
24
|
**kwargs
|
23
25
|
):
|
26
|
+
await state.clear()
|
27
|
+
|
24
28
|
need_logging = True
|
25
29
|
need_create_story_log = True
|
26
30
|
|
@@ -30,7 +34,7 @@ async def _(
|
|
30
34
|
):
|
31
35
|
try:
|
32
36
|
await error_event.update.event.answer(
|
33
|
-
text=
|
37
|
+
text=get_cached_rus_client_tg_bot_blank().error()
|
34
38
|
)
|
35
39
|
except Exception as exception:
|
36
40
|
_logger.error(exception)
|
@@ -66,7 +70,7 @@ async def _(
|
|
66
70
|
|
67
71
|
try:
|
68
72
|
await error_event.update.event.message.answer(
|
69
|
-
text=
|
73
|
+
text=get_cached_rus_client_tg_bot_blank().error()
|
70
74
|
)
|
71
75
|
except Exception as exception:
|
72
76
|
_logger.error(exception)
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
3
|
+
|
4
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
5
|
+
from project.tg_bot.const import ClientTgBotCommands
|
6
|
+
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
7
|
+
|
8
|
+
tg_bot_router = aiogram.Router()
|
9
|
+
|
10
|
+
|
11
|
+
@tg_bot_router.message(
|
12
|
+
aiogram.filters.Command(ClientTgBotCommands.healthcheck),
|
13
|
+
)
|
14
|
+
async def _(
|
15
|
+
m: aiogram.types.Message,
|
16
|
+
state: FSMContext,
|
17
|
+
middleware_data_tg_bot: MiddlewareDataTgBot,
|
18
|
+
**kwargs
|
19
|
+
):
|
20
|
+
await state.clear()
|
21
|
+
await m.answer(text=get_cached_rus_client_tg_bot_blank().healthcheck())
|
@@ -2,8 +2,9 @@ import logging
|
|
2
2
|
|
3
3
|
import aiogram.filters
|
4
4
|
from aiogram.exceptions import AiogramError
|
5
|
+
from aiogram.fsm.context import FSMContext
|
5
6
|
|
6
|
-
from project.tg_bot.blank.client import
|
7
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
7
8
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
8
9
|
|
9
10
|
_logger = logging.getLogger(__name__)
|
@@ -13,12 +14,13 @@ tg_bot_router = aiogram.Router()
|
|
13
14
|
@tg_bot_router.callback_query()
|
14
15
|
async def _(
|
15
16
|
cq: aiogram.types.CallbackQuery,
|
17
|
+
state: FSMContext,
|
16
18
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
17
19
|
**kwargs
|
18
20
|
):
|
19
21
|
try:
|
20
22
|
await cq.answer(
|
21
|
-
text=
|
23
|
+
text=get_cached_rus_client_tg_bot_blank().keyboard_is_old(),
|
22
24
|
show_alert=True
|
23
25
|
)
|
24
26
|
except AiogramError as exception:
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
|
3
4
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
4
5
|
|
@@ -8,6 +9,7 @@ tg_bot_router = aiogram.Router()
|
|
8
9
|
@tg_bot_router.inline_query()
|
9
10
|
async def _(
|
10
11
|
iq: aiogram.types.InlineQuery,
|
12
|
+
state: FSMContext,
|
11
13
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
12
14
|
**kwargs
|
13
15
|
):
|
arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/raw_message.py
RENAMED
@@ -1,6 +1,7 @@
|
|
1
1
|
import aiogram.filters
|
2
|
+
from aiogram.fsm.context import FSMContext
|
2
3
|
|
3
|
-
from project.tg_bot.blank.client import
|
4
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
4
5
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
5
6
|
|
6
7
|
tg_bot_router = aiogram.Router()
|
@@ -9,7 +10,9 @@ tg_bot_router = aiogram.Router()
|
|
9
10
|
@tg_bot_router.message()
|
10
11
|
async def _(
|
11
12
|
m: aiogram.types.Message,
|
13
|
+
state: FSMContext,
|
12
14
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
13
15
|
**kwargs
|
14
16
|
):
|
15
|
-
await
|
17
|
+
await state.clear()
|
18
|
+
await m.answer(text=get_cached_rus_client_tg_bot_blank().raw_message())
|
arpakitlib/_arpakit_project_template_v_5/project/tg_bot/router/{general → client}/remove_message.py
RENAMED
@@ -2,8 +2,9 @@ import logging
|
|
2
2
|
|
3
3
|
from aiogram import Router, types
|
4
4
|
from aiogram.exceptions import AiogramError
|
5
|
+
from aiogram.fsm.context import FSMContext
|
5
6
|
|
6
|
-
from project.tg_bot.callback.client import
|
7
|
+
from project.tg_bot.callback.client import RemoveMessageClientCD
|
7
8
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
8
9
|
|
9
10
|
_logger = logging.getLogger(__name__)
|
@@ -11,10 +12,11 @@ tg_bot_router = Router()
|
|
11
12
|
|
12
13
|
|
13
14
|
@tg_bot_router.callback_query(
|
14
|
-
|
15
|
+
RemoveMessageClientCD.filter(),
|
15
16
|
)
|
16
17
|
async def _(
|
17
18
|
cq: types.CallbackQuery,
|
19
|
+
state: FSMContext,
|
18
20
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
19
21
|
**kwargs
|
20
22
|
):
|
@@ -3,9 +3,10 @@ import logging
|
|
3
3
|
import aiogram
|
4
4
|
from aiogram import Router
|
5
5
|
from aiogram.filters import Command, or_f
|
6
|
+
from aiogram.fsm.context import FSMContext
|
6
7
|
|
7
|
-
from project.tg_bot.blank.client import
|
8
|
-
from project.tg_bot.const import
|
8
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
9
|
+
from project.tg_bot.const import ClientTgBotCommands
|
9
10
|
from project.tg_bot.filter_.message_text import MessageTextTgBotFilter
|
10
11
|
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
11
12
|
|
@@ -15,9 +16,9 @@ _logger = logging.getLogger(__name__)
|
|
15
16
|
|
16
17
|
@tg_bot_router.message(
|
17
18
|
or_f(
|
18
|
-
Command(
|
19
|
+
Command(ClientTgBotCommands.start),
|
19
20
|
MessageTextTgBotFilter([
|
20
|
-
|
21
|
+
ClientTgBotCommands.start,
|
21
22
|
"начать",
|
22
23
|
"старт",
|
23
24
|
"привет",
|
@@ -28,7 +29,9 @@ _logger = logging.getLogger(__name__)
|
|
28
29
|
)
|
29
30
|
async def _(
|
30
31
|
m: aiogram.types.Message,
|
32
|
+
state: FSMContext,
|
31
33
|
middleware_data_tg_bot: MiddlewareDataTgBot,
|
32
34
|
**kwargs
|
33
35
|
):
|
34
|
-
await
|
36
|
+
await state.clear()
|
37
|
+
await m.answer(text=get_cached_rus_client_tg_bot_blank().welcome())
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import logging
|
2
|
+
|
3
|
+
import aiogram
|
4
|
+
from aiogram import Router
|
5
|
+
from aiogram.filters import Command, or_f
|
6
|
+
from aiogram.fsm.context import FSMContext
|
7
|
+
|
8
|
+
from project.tg_bot.blank.client import get_cached_rus_client_tg_bot_blank
|
9
|
+
from project.tg_bot.const import ClientTgBotCommands
|
10
|
+
from project.tg_bot.filter_.message_text import MessageTextTgBotFilter
|
11
|
+
from project.tg_bot.kb.inline_.client.support import support_client_inline_kb_tg_bot
|
12
|
+
from project.tg_bot.middleware.common import MiddlewareDataTgBot
|
13
|
+
|
14
|
+
tg_bot_router = Router()
|
15
|
+
_logger = logging.getLogger(__name__)
|
16
|
+
|
17
|
+
|
18
|
+
@tg_bot_router.message(
|
19
|
+
or_f(
|
20
|
+
Command(ClientTgBotCommands.support),
|
21
|
+
MessageTextTgBotFilter([
|
22
|
+
ClientTgBotCommands.support,
|
23
|
+
"поддержка"
|
24
|
+
], ignore_case=True)
|
25
|
+
)
|
26
|
+
)
|
27
|
+
async def _(
|
28
|
+
m: aiogram.types.Message,
|
29
|
+
state: FSMContext,
|
30
|
+
middleware_data_tg_bot: MiddlewareDataTgBot,
|
31
|
+
**kwargs
|
32
|
+
):
|
33
|
+
await state.clear()
|
34
|
+
await m.answer(
|
35
|
+
text=get_cached_rus_client_tg_bot_blank().support(),
|
36
|
+
reply_markup=support_client_inline_kb_tg_bot()
|
37
|
+
)
|