Skip to content

v1.2.0 β€” Authenticated QRZ Email Scraper, Bulk Log Enrichment & Native SMTP Client πŸš€

Pre-release
Pre-release

Choose a tag to compare

@fact0real fact0real released this 09 Aug 11:30
· 145 commits to main since this release

What's New in YAAM v1.2.0 πŸš€

Version 1.2.0 is one of our biggest updates yet! This release introduces Automated Bulk Log Enrichment, Native In-App SMTP Email Dispatching, and a breakthrough WebKit-based QRZ Email Scraper that seamlessly bypasses Cloudflare protections and dynamic DOM anti-scraping mechanisms.


✨ Key Highlights & Features

πŸ“§ 1. Authenticated QRZ Email Scraper & Cloudflare Decryptor

  • Dynamic #qem Event Triggering: Automatically interacts with QRZ’s protected <span id="qem"> element by executing showqem() and dispatching synthetic DOM mouseover/click events to reveal hidden emails.
  • Native WebKit Integration (WKWebView): Runs an in-memory macOS WebKit engine that shares cookies (WKWebsiteDataStore.default()), bypassing Cloudflare TLS fingerprinting, CAPTCHA challenges, and anti-bot blocks.
  • Cloudflare Email XOR Decryptor: Built-in algorithm to decode hex-encrypted email attributes (data-cfemail and email-protection#HEX) on profiles using Cloudflare obfuscation.
  • MFA / 2FA Login Support: Embedded native browser sheet allowing operators to securely log in to QRZ.com with full Multi-Factor Authentication support.

πŸ“Š 2. Bulk Log Enrichment Engine

  • One-Click Data Enrichment: The new πŸͺ„ Enrich Data toolbar button automatically fetches global standings and emails for all unique callsigns in your loaded ADIF logbook.
  • Real-Time QRZ Ranks: Dynamically appends and renders RANK_QSO, RANK_BAND, and RANK_DXCC columns directly inside the spreadsheet viewer.
  • Color-Coded Rank Badges: Visual distinction for QSO (Blue), Band (Orange), and DXCC (Green) rankings.
  • Instant UI Column Injection: Guaranteed thread-safe header re-rendering on the Main Thread (@MainActor).

βœ‰οΈ 3. Built-In Native macOS SMTP Email Client

  • Zero External Dependencies: Uses macOS native /usr/bin/curl under the hood for encrypted SMTP/SMTPS transfers (supports Gmail, Outlook, custom servers).
  • Interactive Email Hyperlinks: Clicking any blue email address in the table view instantly opens the Email Composer Sheet.
  • Pre-Configured Template Engine:
    • 🎴 QSL Requests: Exchange QSL cards via Bureau or Direct.
    • πŸ—“οΈ Sked Requests: Schedule band/mode contacts for rare DXCC entities.
    • ☁️ LoTW Reminders: Polite upload reminders for unconfirmed QSOs.
  • Dedicated SMTP Settings Panel: Configure server host, TLS port (465/587), username, and App Passwords safely.

πŸ› οΈ Improvements & Bug Fixes

  • Structured Async/Await Refactoring: Converted multi-step API and WebKit workflows to Swift’s modern concurrency model (Task, async/await, withCheckedContinuation), eliminating background thread crashes (pid failure) and UI deadlocks.
  • AppKit NSAlert Migration: Fully replaced buggy SwiftUI alert modifiers with native macOS NSAlert modal windows to prevent window layout collapse.
  • SF Symbols Fix: Replaced legacy SF Symbol names with native Mac symbols (arrow.clockwise.icloud).
  • Optimized Scraping Delays: Gentle 0.5s inter-request throttling to protect your IP from rate limits.

πŸ› οΈ Installation & Upgrade

  1. Download YAAM.dmg or YAAM.zip from the Assets below.
  2. Drag YAAM.app into your /Applications folder (replacing the previous version).
  3. Open YAAM and click Enrich Data to automatically fetch ranks and emails!