Add medboom.ir as an ingestion source (doctor/dentist-heavy, VPN-free)
New MedboomListingSource: a WordPress medical-classifieds board crawled like medjobs (wp-sitemap.xml -> posts-post-N.xml, newest first), filtered to clinical-role slugs and Tehran-only for launch. medboom skews toward doctors/dentists/pharmacists and carries both hiring and availability posts, so it directly broadens the role mix the nurse-heavy Divar content lacks. Iranian-hosted -> no proxy/VPN needed (relevant now that Telegram is off). Wired like the other sources: AppSetting toggles (MedboomEnabled/MaxAds/UseProxy) + EF migration, SettingsService persistence, admin Settings UI, DI registration. Off by default. Validated against live data: Tehran clinical ads at named clinics (pharmacy/dental/etc.). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -87,6 +87,12 @@ public class AppSetting
|
||||
public int IranEstekhdamMaxAds { get; set; } = 40;
|
||||
public bool IranEstekhdamUseProxy { get; set; } = false;
|
||||
|
||||
/// <summary>Scrape medboom.ir clinical ads (WordPress board; doctor/dentist-heavy, hiring +
|
||||
/// availability; crawled via its WP sitemap, Tehran-only for launch).</summary>
|
||||
public bool MedboomEnabled { get; set; } = false;
|
||||
public int MedboomMaxAds { get; set; } = 40;
|
||||
public bool MedboomUseProxy { get; set; } = false;
|
||||
|
||||
// --- SMS OTP (Kavenegar). When off, the code is shown on screen (dev only). ---
|
||||
public bool SmsEnabled { get; set; } = false;
|
||||
[MaxLength(200)] public string? SmsApiKey { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user