Commit Graph

317 Commits

Author SHA1 Message Date
Guillem Hernandez Sola
f93d765c1a Fix 2026-05-07 09:22:33 +02:00
Guillem Hernandez Sola
26027c6e91 feat: add bsky_post.py and Jenkinsfile for weekly Dijous post
- New standalone script `bsky_post.py` to post text + optional image
  or video to a Bluesky PDS instance. Supports --image, --video (mutually
  exclusive), --alt, --lang, --service, --username, --password flags.
  Reuses the same login-with-backoff pattern as rss2bsky and the Twitter bot.

- New Jenkinsfile that triggers every Thursday at 07:15 (cron: 15 7 * * 4),
  reads credentials from Jenkins secret text entries, and runs bsky_post.py
  with the configured image and Catalan language tag.
2026-05-07 09:21:47 +02:00
Guillem Hernandez Sola
33b4e32738 feat: add multi-language support to rss2bsky via --lang flag
- Changed `post_lang: str` to `post_langs: List[str]` in `run_once`
  and `try_send_post_with_variants` to support multiple BCP-47 language
  tags passed to Bluesky's `langs=` field.

- Updated `--lang` CLI argument to accept comma-separated language codes
  (e.g. `--lang ca,es`), parsed into a list at startup. Defaults to `["ca"]`.

- Added startup log line reporting the configured language(s) per run.
2026-05-05 14:00:48 +02:00
Guillem Hernandez Sola
09b9d16791 fix: prevent video URL bleed-through and stale listener across tweets
- Add `page.remove_listener("response", handle_response)` in
  `extract_video_url_from_tweet_page` finally block to detach the
  network listener before page close, preventing ghost callbacks
  from leaking captured URLs across tweet iterations.

- Confirmed `build_media_fingerprint` already uses `canonicalize_tweet_url`
  as stable video identifier instead of unreliable `media_url_https`,
  avoiding false fingerprint collisions between different video tweets.

- Confirmed `sync_feeds` already guards against `None` video URL after
  extraction, ensuring no silent fallthrough to stale captures.
2026-05-05 13:39:22 +02:00
Guillem Hernandez Sola
388c327a13 Added language as an option 2026-04-30 10:30:24 +02:00
Guillem Hernandez Sola
375191c497 Add --bsky-langs es to Jenkins pipeline for specific language tagging 2026-04-30 10:20:41 +02:00
Guillem Hernandez Sola
19b8e09f29 Fix CI 2026-04-29 12:02:02 +02:00
Guillem Hernandez Sola
7bf452c7f8 fix typo 2026-04-29 12:01:28 +02:00
Guillem Hernandez Sola
d609b371c1 ci: add Jenkinsfile to delete .png and .mp4 files from workspace every 15 days 2026-04-29 11:59:05 +02:00
Guillem Hernandez Sola
111cbe30d3 More timeout 2026-04-28 21:52:58 +02:00
Guillem Hernandez Sola
46956a4d84 refactor: remove ellipsis from all text truncation paths
- truncate_text_safely: slice to full max_length, drop trailing ...
- truncate_text_preserving_tail: remove ... prefix/infix, adjust
  reserve from +4 to +1
- build_dynamic_alt: slice to DYNAMIC_ALT_MAX_LENGTH, drop ...
- make_rich: remove … from hashtag rstrip chars
- sync_feeds: remove conditional ... suffix in dry-run log
2026-04-28 21:32:25 +02:00
Guillem Hernandez Sola
70551a4c2a Increased timeout 2026-04-28 18:40:57 +02:00
Guillem Hernandez Sola
ea46714ca5 Fix regex in strip_trailing_url_punctuation to properly escape special characters
- Corrected the regular expression in the `strip_trailing_url_punctuation` function to properly escape the single quote (') and ensure valid syntax.
- Fixed potential issues caused by unescaped characters in the regex pattern.
2026-04-28 17:35:02 +02:00
Guillem Hernandez Sola
67a4152be3 Ellipsis erased 2026-04-28 17:26:42 +02:00
Guillem Hernandez Sola
c850965147 Reverted 2026-04-28 17:23:08 +02:00
Guillem Hernandez Sola
b36c06b529 Fixed 2026-04-28 14:27:48 +02:00
Guillem Hernandez Sola
591a6d9563 Refactor text truncation logic in rss2bsky.py to remove ellipsis
- Updated the text truncation logic to avoid using "..." when shortening text.
- Ensured that text is truncated to the maximum allowed length without additional trailing characters.
- Improved handling of text variants to maintain clarity and avoid unnecessary truncation.
2026-04-28 14:23:36 +02:00
Guillem Hernandez Sola
40b379e261 docs: Revamp README with comprehensive documentation and troubleshooting guides
- Add quick start section with 3-step setup instructions
- Include prerequisites and platform compatibility information
- Expand credentials configuration with security best practices
- Add detailed configuration section with media constraints table
- Provide concrete usage examples for RSS, Twitter daemon, and systemd
- Include cron job integration examples for scheduling
- Add project structure diagram showing all key files and directories
- Create extensive troubleshooting section with common issues and solutions
- Add debugging guide with log analysis tips
- Include FAQ section addressing typical user questions
- Document use cases and real-world scenarios
- Add security notes for credential management
- Improve contributing guidelines with step-by-step workflow
- Enhance formatting with emojis, tables, and better organization
- Replace vague descriptions with actionable, specific guidance

This makes the documentation suitable for both beginner and advanced users while providing clear paths for setup, usage, and troubleshooting.

Co-authored-by: Copilot <copilot@github.com>
2026-04-28 06:56:13 +02:00
Guillem Hernandez Sola
0fbfd68585 Update .gitignore to ignore the entire .vscode folder 2026-04-28 06:45:40 +02:00
Guillem Hernandez Sola
bbe2a02e33 epRSS fix 2026-04-27 18:54:54 +02:00
Guillem Hernandez Sola
253aa765ba Fixed RSS ellipsis 2026-04-27 18:48:47 +02:00
80b167d1c0 Updated timeouts 2026-04-25 15:18:34 +00:00
4bd3fad2e7 More time to resolve the page 2026-04-25 06:28:12 +00:00
Guillem Hernandez Sola
90938f65b4 Added length in RSS 2026-04-24 09:27:25 +02:00
Guillem Hernandez Sola
1691a15904 Fixed some truncation 3 2026-04-23 20:07:15 +02:00
Guillem Hernandez Sola
f0fb48697c Fixed some truncation 2 2026-04-23 20:05:34 +02:00
Guillem Hernandez Sola
61e2fee9f0 Fixed some truncation 2 2026-04-23 20:04:34 +02:00
Guillem Hernandez Sola
2401da8e5f Fixed some truncation 2026-04-23 20:01:57 +02:00
Guillem Hernandez Sola
baa055a36e Added some rss fixes 2026-04-18 11:18:55 +02:00
Guillem Hernandez Sola
6565c62a7a Meteocat 2026-04-18 11:04:34 +02:00
Guillem Hernandez Sola
08cb7e18e3 New login hardening 2026-04-18 10:58:25 +02:00
Guillem Hernandez Sola
bdeec32a25 Added some login fixes 2026-04-18 10:50:47 +02:00
Guillem Hernandez Sola
4a83d526f9 Added blacksky meteocat 2026-04-18 10:23:54 +02:00
Guillem Hernandez Sola
48710862ab Added blacksky meteocat 2026-04-18 10:21:36 +02:00
16c04ff7d3 Added 429 control removed eurosky on jenkinsfile 2026-04-18 09:03:17 +02:00
e3f1932775 Added 429 control removed eurosky on jenkinsfile 2026-04-18 09:01:50 +02:00
05b69da411 Added 429 control 2026-04-18 08:54:15 +02:00
Guillem Hernandez Sola
bd79ddd40c migrated mesqueunbot 2026-04-17 18:01:51 +02:00
Guillem Hernandez Sola
d48646fba8 migrated catalunya112 2026-04-17 17:34:53 +02:00
Guillem Hernandez Sola
e7ac3c9b68 migrated esport3 2026-04-17 17:30:28 +02:00
Guillem Hernandez Sola
ffb0105a49 migrated apm 2026-04-17 17:25:14 +02:00
Guillem Hernandez Sola
036b5483b3 beteve migrated 2026-04-17 17:12:04 +02:00
Guillem Hernandez Sola
3b0d3b6412 3cat migrated 2026-04-17 17:03:33 +02:00
Guillem Hernandez Sola
22b903f35b Added optimot 2026-04-17 16:44:32 +02:00
9fde78b048 Migrated la xarxa més 2026-04-17 11:39:05 +02:00
Guillem Hernandez Sola
2d7a86c2cf ePrss 2026-04-17 09:05:33 +02:00
Guillem Hernandez Sola
3b3edaf409 Added rac1 to eurosky 2026-04-16 21:01:15 +02:00
Guillem Hernandez Sola
e4e1cf634e Added all 2026-04-16 19:55:07 +02:00
1f14a2cec4 revert dc451475eb
revert cleanWS
2026-04-15 08:42:54 +00:00
dc451475eb cleanWS 2026-04-15 08:38:41 +02:00