Commit Graph
100 Commits
Author SHA1 Message Date
krau 133453b5d4 feat: implement watch for monitoring chat messages
- Added a new command handler for /watch that allows users to listen to messages from a specified chat and save them according to storage rules.
- Introduced filtering options for messages using regular expressions.
- Implemented functionality to start and stop watching chats, including error handling for invalid inputs and user settings.
- Created a new utility package for message element handling related to the watch feature.
- Updated the user model to manage watched chats, including methods to add, remove, and check if a chat is being watched.
2025-08-03 16:55:56 +08:00
krau 8f9ef07d1c refactor: replace functions.GetMediaFileNameWithId with tgutil.GetMediaFileName for better media file name handling 2025-08-02 16:55:12 +08:00
krau 36285a0700 feat(storage/telegram): add support for uploading images excluding webp format 2025-08-02 11:41:18 +08:00
krau ccf206d176 feat(storage/telegram): enhance file upload handling with content length support and media type differentiation 2025-08-02 11:22:14 +08:00
krau 4c851cbbaf ci: fix version inject 2025-08-02 10:58:29 +08:00
krau b9d14f79c8 refactor: simplify dler client interface 2025-08-02 10:01:59 +08:00
krau ee5e0b8ff0 fix: use gotgproto fork and upgrade deps 2025-07-30 17:46:36 +08:00
krau 6423fb25a7 fix: update max upload part size to use uploader's maximum value and adjust document upload options 2025-07-28 14:58:01 +08:00
krau 03907f2d32 fix: improve error handling during file download in stream mode 2025-07-28 14:37:08 +08:00
krau 4ebacb02c1 chore: tidy go mod 2025-07-09 20:35:55 +08:00
krau fc4a112f08 fix: enhance filename generation by using media file name if available 2025-07-07 14:12:33 +08:00
krau 7a2274baa0 refactor: update configuration file structure and improve comments for clarity 2025-07-07 13:57:58 +08:00
krau 69a3ed6f4e fix: parse chat ID correctly in Save method for Telegram storage 2025-07-07 13:48:16 +08:00
krau 36f3dd83fc refactor: remove error wrapping in retry middleware skip logic 2025-07-07 13:44:32 +08:00
krau 501b9d844a docs: update userbot content 2025-07-04 16:26:17 +08:00
krau 03cec7ec01 docs: add IS-ALBUM rule type 2025-07-04 16:18:01 +08:00
krau dc0debcd1c fix: add unique filename handling with error logging in Save method for Minio and Webdav 2025-07-04 16:10:42 +08:00
krau 4b136bd41e feat: add test case for nested directory file writing 2025-07-04 16:08:01 +08:00
krau d703f11ea0 feat: implement album handling rules and refactor related logic 2025-07-04 16:01:29 +08:00
krau 3ce9926967 feat: handle media group message in updates 2025-07-04 14:36:03 +08:00
krau 80146176f0 feat: make retry middleware configurable 2025-07-04 13:38:55 +08:00
krau 14ba2afdf8 chore: update funding url 2025-07-04 13:38:28 +08:00
krau f4d427a1cb fix(dockerignore): ensure docs directory is ignored correctly 2025-06-30 22:49:01 +08:00
krau f84c83a7e2 fix(ci): try speed up docker build 2025-06-30 22:47:47 +08:00
krau cb6540c017 fix(minio): trim leading slash in JoinStoragePath method 2025-06-30 22:19:33 +08:00
krau e7bab27543 feat: add user client inject in file link handler 2025-06-29 23:08:48 +08:00
krau f693bd6103 refactor: update file handling to use new downloader interface; remove unused tdler package 2025-06-29 23:00:40 +08:00
krau 75f52569a0 deps: upgrade 2025-06-29 22:26:52 +08:00
krau c795f957a9 refactor: user client and proxy handling; remove unused auth code 2025-06-29 22:25:05 +08:00
krau 3b85911e3d fix: mimetype nil pointer 2025-06-20 22:42:57 +08:00
krau 336309fad0 chore: remove unuse comment 2025-06-20 22:29:37 +08:00
krau 394cdff865 feat: regex filter for batch save message 2025-06-20 22:25:46 +08:00
krau 40cb3dad9d feat: handle grouped msgs, close #72 2025-06-20 22:07:21 +08:00
krau 2979628cf7 docs(zh): add hook docs 2025-06-20 21:46:00 +08:00
krau c82c2462bf feat: exec command hook , close #79 2025-06-20 21:30:50 +08:00
krau 88128ecac2 fix: cache init after config 2025-06-20 21:27:45 +08:00
krau 758564d436 feat(config): add cache configuration options for TTL, num counters, and max cost 2025-06-18 10:51:03 +08:00
krau f5e33472eb feat: add IterMessages function for message iteration with error handling 2025-06-18 10:50:54 +08:00
krau 4df2c5a06d refactor: replace key package with ctxkey for context keys 2025-06-17 22:19:06 +08:00
krau eb6f8675a4 fix(minio): pass the size to minio puitobject 2025-06-17 22:10:20 +08:00
krau 473a5b9413 chore: update help text 2025-06-16 17:31:34 +08:00
krau 6c2abe3025 chore: remove deprecated config 2025-06-16 17:11:26 +08:00
krau e7e5b9f434 docs: add repo link 2025-06-16 17:05:31 +08:00
krau d4d39d1c07 chore: update readme 2025-06-16 16:57:39 +08:00
krau 73b5f1b18e docs: add en translate 2025-06-16 16:30:45 +08:00
krau 837700bf63 docs: adjust font size 2025-06-16 16:08:03 +08:00
krau 53e6d7cc54 ci(docs): fix ci 2025-06-16 16:01:50 +08:00
krau 4206d1fe96 docs: refactor 2025-06-16 15:58:03 +08:00
krau 6566dbbf96 chore: add new storage configuration for Telegram channel 2025-06-16 00:24:38 +08:00
krau 44c0c784d7 fix: default dir call back data type 2025-06-16 00:09:29 +08:00
krau 8ebf96444d fix: optimize directory data handling in BuildSetDirKeyboard function 2025-06-16 00:08:52 +08:00
Krau 900823cdb9 refactor: refactor task logic for better scalability (#76)
* refactor: a big refactor. wip

* refactor: port handle file

* refactor: place all handlers

* fix: task info nil pointer

* feat: enhance task progress tracking and context management

* feat: cancel task

* feat: stream mode

* feat: silent mode

* feat: dir cmd

* refactor: remove unused old file

* feat: rule cmd

* feat: handle silent mode

* feat: batch task

* fix: batch task progress and temp file cleanup

* refactor: update file creation and cleanup methods for better resource management

* feat: add save command with silent mode handling

* feat: message link

* feat: update message prompts to include file count in storage selection

* feat: slient save links

* refactor: reduce dup code

* feat: rule type

* feat: chose dir

* feat: refactor file handling and storage rules, improve error handling and logging

* feat: rule mode

* feat: telegraph pics

* fix: tphpics nil pointer and inaccurate dirpath

* feat: silent save telegraph

* feat: add suffix to avoid file overwrite

* feat: new storage telegram

* chore: tidy go mod
2025-06-15 23:57:49 +08:00
krau 280745cae3 feat: update database driver to use gormlite and add new dependencies 2025-06-11 10:01:24 +08:00
krau e85d3c9441 feat: rename file only when storagePath exists 2025-06-11 09:54:08 +08:00
krau 9d3a3a8dcd feat: update fetch message to support user client 2025-06-09 16:54:51 +08:00
krau 19535d0438 feat: parse media group, wip 2025-06-09 16:17:27 +08:00
krau 693e20b066 Deprecated public copy media feat 2025-06-09 15:50:53 +08:00
krau 56ea1d6f36 feat: parse message link via userbot, close #70 2025-06-09 14:33:40 +08:00
krau 95522d03f9 chore: update bug report template to ensure required fields are validated 2025-06-09 09:03:50 +08:00
krau 2bc290b57d fix: git commit display 2025-06-08 16:07:23 +08:00
krau c7c458f147 feat: add user client 2025-06-08 15:36:14 +08:00
krau 481427683e chore: translate config package 2025-06-08 13:37:51 +08:00
krau c798c7ae99 feat: i18n with default lang zh-Hans (translating) 2025-06-08 11:01:33 +08:00
krau 0422c1ac3e refactor: improve log format 2025-06-08 11:00:29 +08:00
krau f0445fe26f chore: upgrade deps 2025-06-08 09:25:56 +08:00
krau a3628be024 chore: remove unuse dep 2025-06-08 09:23:29 +08:00
krau a9c56892c3 refactor: move log for pub copy media req and provide a tip 2025-05-29 22:00:12 +08:00
krau 015539c009 fix: set filedbid for silent mode task, close #67 2025-05-29 21:55:04 +08:00
krau 71844deab1 fix: public media copy message check 2025-05-28 17:02:51 +08:00
krau 55fed6389e chore: add experimental to nav 2025-05-28 16:56:38 +08:00
krau 8ce5c2e007 feat: 添加实验性功能文档,包含存储规则和媒体消息发送说明 2025-05-28 16:55:18 +08:00
krau 6ecfbd8385 feat: add public media copy 2025-05-28 16:43:11 +08:00
krau 6c2bfd72cd chore: commented-out code for user storages check, for we have send_here feature now 2025-05-28 16:10:31 +08:00
Krau 8ea5be5b90 Merge pull request #65 from krau/upload-telegram
feat: send media to telegram, close #47
2025-05-28 15:57:43 +08:00
krau 7f483056e0 feat: send media to telegram, close #47 2025-05-28 15:57:10 +08:00
krau a6f88d7f75 chore: fix typo in Dockerfile ARG variable name for GitCommit 2025-05-19 22:14:50 +08:00
krau b757df0b5e chore: reorganize Docker build workflow and enhance build arguments for versioning 2025-05-19 22:02:17 +08:00
krau b017046c8b chore: simplify Dockerfile by removing unnecessary user and permission setup 2025-05-19 21:43:47 +08:00
krau a474fdf6ae chore: update .dockerignore and Dockerfile for improved build context and permissions 2025-05-19 09:23:24 +08:00
krau 729e688748 fix: cleaning up the cache folder caused permission issues 2025-05-19 09:23:10 +08:00
krau 9ea4857cd9 chore: update issue template labels for consistency 2025-05-18 18:14:33 +08:00
krau 8bf7bc0e85 chore: add .dockerignore to exclude unnecessary files from Docker context 2025-05-18 18:14:30 +08:00
krau 26e344a6f6 refactor: remove unused conversation handling code and simplify delDir function parameters 2025-05-18 14:29:59 +08:00
krau 8f0744077e fix: update success message for batch task addition in handle_save function 2025-05-18 14:28:20 +08:00
krau ed99a37831 fix: add unique id to task struct to avoid duplicate file name overwrite, close #59 2025-05-09 08:58:30 +08:00
krau 488d709d85 chore: update contributors section in README to remove specific name 2025-05-08 21:04:56 +08:00
krau 66454b082a fix: improve logger initialization and reduce cache TTL 2025-05-08 21:03:48 +08:00
Krau 70e83e62d9 Merge pull request #58 from AHCorn/main
fix: docker cache permission issue (#57)
2025-05-08 20:44:46 +08:00
krau 5f78db90c7 fix: webdav url escape 2025-05-07 12:05:10 +08:00
krau c3a4702e79 fix: allow custom file name for cached files in FileFromMessage function 2025-05-07 11:38:56 +08:00
krau e731cfee9e chore: upgrade deps 2025-05-07 09:24:36 +08:00
krau 75de86fe97 chore: add funding configuration file 2025-05-07 09:21:30 +08:00
krau 6d4e97b4bb chore: add issue templates 2025-05-07 09:18:46 +08:00
krau 239d5ad562 feat: update database session configuration and retry settings 2025-05-07 08:59:15 +08:00
krau e76f191922 chore: remove executable compression from build-release workflow 2025-04-29 09:37:25 +08:00
krau a619ed2f22 typo: client_test filename 2025-04-27 08:32:47 +08:00
krau 838dfc35a1 fix: webdav client implement, close #49 2025-04-27 08:31:50 +08:00
krau 6ecee6d561 Merge branch 'main' of https://github.com/krau/SaveAny-Bot 2025-04-20 14:57:08 +08:00
krau c1827f93a9 chore: rename workflow to 'Update Contributors' and trigger on workflow_dispatch 2025-04-20 14:57:06 +08:00
Krau aaf3f7c35f Merge pull request #51 from krau/contributors-readme-action-yX7LIfZQ3S
docs(contributor): contributors readme action update
2025-04-20 14:56:49 +08:00