GNU/Weeb Mailing List <[email protected]>
 help / color / mirror / Atom feed
From: Muhammad Rizki <[email protected]>
To: Ammar Faizi <[email protected]>
Cc: Muhammad Rizki <[email protected]>,
	GNU/Weeb Mailing List <[email protected]>,
	Alviro Iskandar Setiawan <[email protected]>
Subject: [PATCH v3 00/18] New feature to handle atom URLs and broadcast
Date: Fri, 29 Jul 2022 08:40:34 +0700	[thread overview]
Message-ID: <[email protected]> (raw)

Morning sir,

This is v3 revision of new feature to handle atom URLs and broadcast

In this series I combine the atom URLs and broadcast SQL tables to
db.sql and remove the atom_broadcast.sql. Also, I change the atom_urls
data type of `type` field to VARCHAR(255).

This series contains a new feature to handle the atom URLs and broadcast
chats, such as add atom, add chat, del_atom and del_chat, with this
feature, we do not manual manage them again, just using the bot commands
and it will update in database.

There are 18 patches in this series:
- Patch 1 is to Add new table for atom URLs and broadcast chats
- Patch 2 is to add get atom URLs and get broadcast chats
- Patch 3 is to fix MySQL InternalError when query the atom and chats
- Patch 4 is to create /add_atom bot command to atom URL to database
- Patch 5 is to add some utility functions to handle code in /add_atom
- Patch 6 is to refactor db class to easily access over DaemonClient
- Patch 7 is to add insert_atom() in scraper/db.py to insert atom URLs
- Patch 8 is to rename admin.py to debugger.
- Patch 9 is to add delete_atom() in scraper/db.py for /del_atom command
- Patch 10 is to add button_numbers() in utility file to create btn nums
- Patch 11 is to split files between bot commands and bot CallbackQuery
- Patch 12 is to add del_atom for CallbackQuery to handle delete atom
- Patch 13 is to add insert_broadcast() in scraper/db.py to insert chats
- Patch 14 is to add delete_broadcast() in scraper/db.py to delete chats
- Patch 15 is to create /add_bc bot command to add chat to the database
- Patch 16 is to add create_chat_link() in utility file for chat link
- Patch 17 is to add /del_bc bot command to remove chat in the database
- Patch 18 is to add del_chat in bot CallbackQuery to handle delete chat

Already tested and it works fine, please give it a test too if there is
a bug or unexpected errors, thanks.

## Changelog

v2 -> v3
- Combine the atom_urls and broadcast_chats tables in db.py
- Remove atom_broadcast.sql
- Change atom_urls data type of `type` field to VARCHAR(255)

v1 -> v2
- Improve delete_broadcast() source code in scraper/db.py
- Fix typehints to int for chat_id param in scraper/db.py

Signed-off-by: Muhammad Rizki <[email protected]>
---

Muhammad Rizki (18):
  Add new table for atom URLs and broadcast chats in db.sql
  Add ATOM_URLS and BROADCAST_CHAT methods
  Fix MySQL InternalError: Unread result found
  Create /add_atom command
  Add utility functions for /add_atom
  Refactor database methods
  Add insert_atom() in scraper/db.py
  Rename admin.py to debugger.py
  Add delete_atom() function in scraper/db.py
  Add utility function buton_numbers()
  Move bot commands related files to packages/plugins/commands/
  Add del_atom callback query
  Add insert_broadcast() in scraper/db.py
  Add delete_broadcast() in scraper/db.py
  Create /add_bc bot command
  Add create_chat_link() function
  Add /del_bc bot command
  Add del_chat callback query

 .gitignore                                    |   4 +
 daemon/db.sql                                 |  25 +++++
 daemon/packages/client.py                     |   4 +-
 daemon/packages/plugins/callbacks/del_atom.py |  31 +++++
 daemon/packages/plugins/callbacks/del_chat.py |  36 ++++++
 .../{admin.py => commands/debugger.py}        |   0
 .../packages/plugins/commands/manage_atom.py  |  50 +++++++++
 .../plugins/commands/manage_broadcast.py      |  66 +++++++++++
 .../packages/plugins/{ => commands}/scrape.py |   0
 daemon/run.py                                 |  16 +--
 daemon/scraper/bot.py                         |  22 +---
 daemon/scraper/db.py                          | 106 +++++++++++++++++-
 daemon/scraper/utils.py                       |  45 ++++++++
 13 files changed, 379 insertions(+), 26 deletions(-)
 create mode 100644 daemon/packages/plugins/callbacks/del_atom.py
 create mode 100644 daemon/packages/plugins/callbacks/del_chat.py
 rename daemon/packages/plugins/{admin.py => commands/debugger.py} (100%)
 create mode 100644 daemon/packages/plugins/commands/manage_atom.py
 create mode 100644 daemon/packages/plugins/commands/manage_broadcast.py
 rename daemon/packages/plugins/{ => commands}/scrape.py (100%)


base-commit: f8c5aef0aa85e1262c90f818638d255c3c38373f
-- 
Muhammad Rizki


             reply	other threads:[~2022-07-29  1:41 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-29  1:40 Muhammad Rizki [this message]
2022-07-29  1:40 ` [PATCH v3 01/18] Add new table for atom URLs and broadcast chats in db.sql Muhammad Rizki
2022-07-30  1:26   ` Ammar Faizi
2022-07-30  1:33     ` Ammar Faizi
2022-07-30  1:36     ` Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 02/18] Add ATOM_URLS and BROADCAST_CHAT methods Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 03/18] Fix MySQL InternalError: Unread result found Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 04/18] Create /add_atom command Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 05/18] Add utility functions for /add_atom Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 06/18] Refactor database methods Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 07/18] Add insert_atom() in scraper/db.py Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 08/18] Rename admin.py to debugger.py Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 09/18] Add delete_atom() function in scraper/db.py Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 10/18] Add utility function buton_numbers() Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 11/18] Move bot commands related files to packages/plugins/commands/ Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 12/18] Add del_atom callback query Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 13/18] Add insert_broadcast() in scraper/db.py Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 14/18] Add delete_broadcast() " Muhammad Rizki
2022-07-30  1:23   ` Ammar Faizi
2022-07-30  1:28     ` Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 15/18] Create /add_bc bot command Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 16/18] Add create_chat_link() function Muhammad Rizki
2022-07-30  1:22   ` Ammar Faizi
2022-07-30  1:25     ` Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 17/18] Add /del_bc bot command Muhammad Rizki
2022-07-29  1:40 ` [PATCH v3 18/18] Add del_chat callback query Muhammad Rizki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox