Spaces:
Sleeping
Sleeping
File size: 2,537 Bytes
0649d3e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | import json
import time
import os
from voice_generator import generate_voice_script
# ==============================================================================
# CẤU HÌNH CHIẾN DỊCH
# ==============================================================================
# Bạn có thể đổi range(1, 11) thành range(1, 101) nếu muốn chạy 100 khách
CUSTOMER_IDS_TO_PROCESS = range(1, 11)
OUTPUT_FILE = 'final_voice_scripts.json'
def main():
print(f" BẮT ĐẦU DÂY CHUYỀN SẢN XUẤT KỊCH BẢN ({len(CUSTOMER_IDS_TO_PROCESS)} KHÁCH)...\n")
packaged_data = []
success_count = 0
fail_count = 0
start_time = time.time()
# --- VÒNG LẶP XỬ LÝ TỪNG KHÁCH HÀNG ---
for cid in CUSTOMER_IDS_TO_PROCESS:
print(f" Đang xử lý ID {cid}...", end=" ", flush=True)
try:
# 1. GỌI AI (Chỉ nhận 1 giá trị duy nhất)
script_data = generate_voice_script(cid)
if script_data:
# 2. BỔ SUNG METADATA (Thông tin quản lý)
script_data['created_at'] = time.strftime("%Y-%m-%d %H:%M:%S")
script_data['status'] = "READY_TO_CALL"
# Thêm vào danh sách đóng gói
packaged_data.append(script_data)
success_count += 1
print(" XONG")
else:
fail_count += 1
print(" BỎ QUA (Không có gói cước phù hợp)")
except Exception as e:
print(f"LỖI CODE: {e}")
fail_count += 1
# Nghỉ 1.5 giây để tránh bị Google chặn API (Rate Limit)
time.sleep(1.5)
# --- GHI FILE JSON (FINAL PACKAGING) ---
print("\n" + "-"*50)
print("📦 ĐANG ĐÓNG GÓI DỮ LIỆU...")
try:
with open(OUTPUT_FILE, 'w', encoding='utf-8') as f:
# ensure_ascii=False để giữ nguyên tiếng Việt có dấu
json.dump(packaged_data, f, indent=4, ensure_ascii=False)
elapsed_time = time.time() - start_time
print(f"HOÀN TẤT! File kết quả: {OUTPUT_FILE}")
print(f"Tổng: {len(CUSTOMER_IDS_TO_PROCESS)} | Thành công: {success_count} | Bỏ qua: {fail_count}")
print(f" Tổng thời gian: {elapsed_time:.1f} giây")
except Exception as e:
print(f"LỖI GHI FILE: {e}")
print("-"*50)
if __name__ == "__main__":
main() |