summaryrefslogtreecommitdiff
path: root/spec.org
blob: eea2014fa8a469f485b6d1a924f135e40b7a04da (plain)
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
49
#+TITLE: Bot architecture

* База данных

** Таблицы

*** users
| field     | type     | foreign |
|-----------+----------+---------|
| id        | int PK   | no      |
| tg_id     | int      | no      |
| tg_handle | varchar  | no      |
| joined_at | datetime | no      |

*** clients
| field      | type     | foreign  |
|------------+----------+----------|
| id         | int PK   | no       |
| user_id    | int      | users.id |
| ip         | int      | no       |
| pubkey     | varchar  | no       |
| created_at | datetime | no       |

*** user_perms
| field     | type   | foreign  |
|-----------+--------+----------|
| user_id   | int PK | users.id |
| is_admin  | bool   | no       |
| is_client | bool   | no       |


** Представления

*** ClientsView
| field  | type    | foreign |
|--------+---------+---------|
| ip     | int     | no      |
| pubkey | varchar | no      |
WHERE: user.is_client = True

* Бот

** MAIN_MENU
- Создать новый клиент -> CREATE
- Список созданных клиентов

** NAME_CLIENT
- [Ввод] Название клиента
- Назад -> MAIN_MENU