Spaces:
Running
Running
Upload main.py
Browse files
main.py
CHANGED
|
@@ -64,13 +64,15 @@ CATEGORIES = [
|
|
| 64 |
VALUES_RANGE = 'B6:P' # Range within each category sheet
|
| 65 |
|
| 66 |
# Cache Update Interval
|
| 67 |
-
CACHE_UPDATE_INTERVAL_SECONDS =
|
|
|
|
|
|
|
|
|
|
| 68 |
|
| 69 |
# Webhook URLs
|
| 70 |
SCAMMER_WEBHOOK_URL = os.getenv("SCAMMER_WEBHOOK_URL")
|
| 71 |
VALUE_WEBHOOK_URL = os.getenv("VALUE_WEBHOOK_URL")
|
| 72 |
-
|
| 73 |
-
DUPE_CHECK_WEBHOOK_URL = os.getenv("WEBHOOK_URL")
|
| 74 |
|
| 75 |
|
| 76 |
# --- Global Cache ---
|
|
@@ -573,16 +575,28 @@ async def update_cache_periodically():
|
|
| 573 |
scammer_dwc_ranges,
|
| 574 |
value_render_option='FORMATTED_VALUE'
|
| 575 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 576 |
"values_dupes_batch": fetch_batch_ranges_async(
|
| 577 |
VALUES_DUPE_SPREADSHEET_ID,
|
| 578 |
values_dupes_ranges,
|
| 579 |
value_render_option='FORMATTED_VALUE'
|
| 580 |
)
|
| 581 |
}
|
| 582 |
-
|
| 583 |
-
#
|
| 584 |
-
|
| 585 |
-
task_keys
|
|
|
|
| 586 |
|
| 587 |
# --- Process Results ---
|
| 588 |
raw_scammer_dwc_results = None
|
|
|
|
| 64 |
VALUES_RANGE = 'B6:P' # Range within each category sheet
|
| 65 |
|
| 66 |
# Cache Update Interval
|
| 67 |
+
CACHE_UPDATE_INTERVAL_SECONDS = 60
|
| 68 |
+
|
| 69 |
+
# Sheet Update Delay
|
| 70 |
+
SHEET_UPDATE_DELAY_SECONDS = 10 # 10 second delay between sheet updates
|
| 71 |
|
| 72 |
# Webhook URLs
|
| 73 |
SCAMMER_WEBHOOK_URL = os.getenv("SCAMMER_WEBHOOK_URL")
|
| 74 |
VALUE_WEBHOOK_URL = os.getenv("VALUE_WEBHOOK_URL")
|
| 75 |
+
DUPE_CHECK_WEBHOOK_URL = os.getenv("DUPE_CHECK_WEBHOOK_URL")
|
|
|
|
| 76 |
|
| 77 |
|
| 78 |
# --- Global Cache ---
|
|
|
|
| 575 |
scammer_dwc_ranges,
|
| 576 |
value_render_option='FORMATTED_VALUE'
|
| 577 |
),
|
| 578 |
+
}
|
| 579 |
+
|
| 580 |
+
# Execute scammer/dwc batch first
|
| 581 |
+
results = await asyncio.gather(*fetch_tasks.values(), return_exceptions=True)
|
| 582 |
+
task_keys = list(fetch_tasks.keys())
|
| 583 |
+
|
| 584 |
+
# Add delay between sheet updates
|
| 585 |
+
await asyncio.sleep(SHEET_UPDATE_DELAY_SECONDS)
|
| 586 |
+
|
| 587 |
+
# Now fetch values/dupes batch
|
| 588 |
+
fetch_tasks = {
|
| 589 |
"values_dupes_batch": fetch_batch_ranges_async(
|
| 590 |
VALUES_DUPE_SPREADSHEET_ID,
|
| 591 |
values_dupes_ranges,
|
| 592 |
value_render_option='FORMATTED_VALUE'
|
| 593 |
)
|
| 594 |
}
|
| 595 |
+
|
| 596 |
+
# Execute values/dupes batch
|
| 597 |
+
values_results = await asyncio.gather(*fetch_tasks.values(), return_exceptions=True)
|
| 598 |
+
task_keys.extend(list(fetch_tasks.keys()))
|
| 599 |
+
results.extend(values_results)
|
| 600 |
|
| 601 |
# --- Process Results ---
|
| 602 |
raw_scammer_dwc_results = None
|