Class: RetailerProbeWorker
- Inherits:
-
Object
- Object
- RetailerProbeWorker
- Includes:
- Sidekiq::Job
- Defined in:
- app/workers/retailer_probe_worker.rb
Overview
Worker to probe retailer product pages for availability and pricing.
Designed to be run daily via Sidekiq scheduler.
Uses two different strategies:
- Single item: Realtime API (synchronous, immediate result)
- Catalog/All: Batch API with webhooks (async, results via WebhookProcessorWorker)
Schedule in sidekiq.yml:
retailer_probes:
cron: "0 6 * * *" # 6 AM daily
class: RetailerProbeWorker
queue: low
Instance Method Summary collapse
Instance Method Details
#perform(options = {}) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'app/workers/retailer_probe_worker.rb', line 38 def perform( = {}) if [:catalog_item_id] # Single item: use realtime API for immediate feedback check_single_item([:catalog_item_id]) elsif [:catalog_id] # Catalog: use batch API with callbacks check_catalog_batch([:catalog_id]) else # All retailers: use batch API with callbacks check_all_retailers_batch end end |