| EN | RU |
Storing, adding, editing and deleting notes by date. You can tag a note with an emoji. Convenient search by emoji statuses and dates. Birthdays and holidays are marked on the calendar (you need to set an emoji status).
git clone https://github.com/EgorKhabarov/NotesAssistant
cd NotesAssistant
cp config.example.yaml config.yaml
pip install -r requirements.txtEdit config.yaml in the bot directory
BOT_TOKEN: "" # Telegram bot token from https://t.me/BotFather
WEATHER_API_KEY: "" # Get it from https://home.openweathermap.org/api_keysSet up a bot at https://t.me/BotFather
/mybots -> @your_bot_username
Bot Settings -> Group Privacy -> disabled
Bot Settings -> Inline Mode -> disabled
Only bot
python start_bot.pyServer
python -c "from server import app;app.run('0.0.0.0')"Launch the bot and send the command /id.
Add the resulting chat_id to ADMIN_IDS in config.yaml and restart the bot.
Important
Add only chat_id of personal accounts (private chats)! Any interaction of any person in a telegram group with a bot is perceived as on behalf of the group.
- Create a web server using the latest available version of Python
- In the
Codecategory changeWorking directoryto the path to the folder withserver.py - In the
Securitycategory changeForce HTTPStoEnabled
docker build -t NotesAssistant .
docker volume create NotesAssistantData
docker volume create NotesAssistantLogs
docker run -p 5000:5000 -v NotesAssistantData:/app/data -v NotesAssistantLogs:/app/logs --name NotesAssistantContainer NotesAssistant -d NotesAssistantdocker compose up -d --buildGreets the user.
| Buttons | Actions |
|---|---|
| /menu | Same as /menu command |
| /calendar | Same as /calendar command |
Navigation through bot functions.
| Buttons | Actions |
|---|---|
| ๐ Help | Same as /help |
| ๐ Calendar | Same as /calendar |
| ๐ค Account | Personal account and data export |
| ๐ฅ Groups | Group settings |
| ๐ 7 days | Notes in the next 7 days |
| ๐ Notifications | View notes that will be included in the notification |
| โ Settings | Same as /settings |
| ๐ Bin | Recycle bin with deleted notes (premium) |
Gives access to information about the bot's capabilities.
Calendar.
| January (1.2000) (Leap ๐ฒ) (52-5) | ||||||
|---|---|---|---|---|---|---|
| Mo | Tu! | We | Th | Fr | Sa | Su |
| 2 | ||||||
| 3 | 5 | 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 | ||||||
| << | < | โณ | > | >> | ||
| ๐ | ๐ | |||||
When pressed, a yearly calendar appears.
| Designation | Meaning |
|---|---|
| January | Names of the month |
| (1.2000) | Month and year numbers |
| (Leap ๐ฒ) | Is it a leap year and the animal of this year |
| (52-5) | Numbers of the first and last week |
When pressed, they do nothing.
The text on the button may end with the ! character.
This means that on this day of the week there are repeating notes with an interval of a week (more about statuses).
When pressed, it calls up message for one day
| Sign | Designation |
|---|---|
# |
Today |
* |
There are notes on this day If there are less than 10 notes then it will consist of degree icons indicating the number of notes |
! |
There is an important note on this day For example, with the status birthday ๐ or holiday ๐ |
| Buttons | Actions |
|---|---|
| << | Show calendar for one year ago |
| < | Show calendar for one month ago |
| โณ | Show calendar for current date |
| > | Show calendar one month ahead |
| >> | Show calendar for one year ahead |
Tip
When you click on a โณ in the calendar, today's date opens.
| Color | Designation |
|---|---|
| Today | |
| There are notes on this day |
Here you can change your username and password or log out of your account. You can also view your limits ๐.
You can connect a group to your account in the bot.
| ๐ธAll | Member | Moderator | Admin |
|---|---|---|---|
| <Your first group name> | |||
| ๐ | ๐ฅ Create group | ||
Message with notes in the next 7 days.
Message with notes for today, tomorrow, after tomorrow, after after tomorrow and in a week.
Message with settings.
| ๐ฃ ru | ๐ True | โฌ๏ธ | ๐ | โฌ๏ธ |
|---|---|---|---|---|
| -3 | -1 | 3 ๐ | +1 | +3 |
| -1h | -10m | 08:00 โฐ | +10m | +1h |
| Default settings | ||||
| Sign | Designation |
|---|---|
| ๐ฃ | Language (default ru) |
| ๐ | Should I shorten links (https://en.wikipedia.org/wiki/Hyperlink โ en.wikipedia.org) |
| โฌ๏ธ / โฌ๏ธ | Note sort order |
| ๐ | Whether to enable notifications (disabled by default) |
| โฌ๏ธ / โฌ๏ธ | Bot theme (replaces dark emoticons with light ones) |
| ๐ | Your time zone |
| โฐ | Notification Time |
List of deleted notes.
| ๐ผ Select one note |
Select multiple notes |
|---|---|
| ๐งน Empty Trash |
๐ Update cart |
| โ | ๐ผ | Menu | |
|---|---|---|---|
| ๐ | < | > | ๐ |
| Sign | Designation |
|---|---|
| โ | Add note |
| ๐ผ | Select one note |
| Select multiple notes | |
| Menu | Return to menu |
| ๐ | Return to calendar |
| < | Show message for yesterday |
| > | Show message for tomorrow |
| ๐ | Update message |
Export notes in different file formats csv, xml, json, jsonl.
| ๐Edit text | ๐ทStatuses | ๐Delete note |
|---|---|---|
| ๐Display | ๐ Change date | |
| โน๏ธInformation | ๐ะกhange history | |
| ๐Back | ๐Update message |
A status is one or more emoji to mark an note or add different effects.
Note can have a maximum of 5 statuses.
Important
There are incompatible statuses.
They cannot be placed together in the same note.
If you have one note from a pair, then you will not be able to place the second one.
| Incompatible statuses |
|---|
๐ (Link) and ๐ป (Code) |
๐ช (Hidden) and ๐ป (Code) |
๐ (Link) and โ (No link shortening) |
๐งฎ (Numbered List) and ๐ (List) |
Status effects are used only to visually display events. The event text itself remains unchanged.
There are limits for different user groups.
| user_status | note day |
symbol day |
note month |
symbol month |
note year |
symbol year |
note all |
symbol all |
|---|---|---|---|---|---|---|---|---|
| default | 20 | 4000 | 75 | 10000 | 500 | 80000 | 500 | 100000 |
| premium | 40 | 8000 | 100 | 15000 | 750 | 100000 | 900 | 150000 |
| admin | 60 | 20000 | 200 | 65000 | 1000 | 120000 | 2000 | 200000 |
The bot features a convenient search feature for notes.
You can search using a message beginning with # (e.g., #query) or the command /search query.
This search attempts to find all matches.
The query #1 2 finds all notes containing the numbers 1 OR 2 (t1ext, tex2t, 2te1xt).
Daily message
/open_today[_page_<page>]
/open_now[_page_<page>]
Monthly/Yearly calendar message
/open_calendar
/open_calendar_year
Open
/open[_<year>[_<month>[_<day>[_page_<page>]]]]