#!/usr/bin/env python3
"""Post Threads DAS — AC Mobil Tidak Dingin (20 Juli 2026, 17:00 WIB)"""
import json, requests, base64

from repliz_client import HEADERS, BASE


SCHEDULE_AT = "2026-07-20T10:00:00.000Z"  # 17:00 WIB
DAS_THREADS = "6a39e461c5ff4ce3a3233e09"

def make_payload(desc, schedule_at, parent_id=None):
    p = {
        "title": "",
        "description": desc,
        "topic": "Perawatan Mobil",
        "type": "text",
        "medias": [],
        "meta": {"title": "", "description": "", "url": ""},
        "additionalInfo": {
            "isAiGenerated": False, "isDraft": False,
            "collaborators": [], "mentions": [],
            "music": {"id": "", "artist": "", "name": "", "thumbnail": ""},
            "products": [], "tags": [],
        },
        "replies": [],
        "accountId": DAS_THREADS,
        "scheduleAt": schedule_at,
    }
    if parent_id:
        p["parentScheduleId"] = parent_id
    return p

post1_text = (
    "AC mobil kurang dingin? Jangan buru-buru isi freon. "
    "Bisa jadi cuma masalah filter kabin kotor yang cukup diganti Rp 50-200rb. "
    "Atau justru kompresor bermasalah yang biayanya bisa Rp 1-8 juta.\n\n"
    "Tim DAS Indonesia udah nulis artikel lengkap soal 5 penyebab AC mobil "
    "tidak dingin dan cara mengatasinya. Baca di sini 👇\n"
    "https://dasindonesia.com/penyebab-ac-mobil-tidak-dingin/"
)

rpl1_text = (
    "Yang paling sering kejadian: filter kabin kotor. "
    "Banyak yang gak sadar padahal cukup ganti filter aja "
    "AC langsung dingin lagi. Ganti tiap 10.000 km atau 6 bulan. "
    "Murah meriah dibanding ganti kompresor 😊"
)

rpl2_text = (
    "Tips dari DAS: kalau AC cuma dingin pas mobil digas, "
    "kemungkinan ada kebocoran freon. Jangan cuma nambah freon — "
    "cari dulu bocornya, kalau nggak bakal bocor lagi dan "
    "biaya makin membengkak. Mampir ke bengkel untuk diagnosa dulu ya!"
)

def post(endpoint, payload):
    r = requests.post(f"{BASE}{endpoint}", headers=HEADERS, json=payload, timeout=30)
    try:
        data = r.json()
    except:
        data = {"raw": r.text}
    if r.status_code >= 400:
        print(f"❌ Error ({r.status_code}): {data}")
        return None
    return data

# --- Post 1 ---
print("📤 Post 1 Threads DAS...")
p1 = make_payload(post1_text, SCHEDULE_AT)
r1 = post("/public/schedule", p1)
if r1:
    p1_id = r1.get("scheduleId", "unknown")
    print(f"✅ Post 1 Scheduled! ID: {p1_id}")

    # --- Reply 1 ---
    print("📤 Reply 1...")
    rpl1 = make_payload(rpl1_text, "2026-07-20T10:01:00.000Z", p1_id)
    r2 = post("/public/schedule", rpl1)
    if r2:
        r1_id = r2.get("scheduleId", "unknown")
        print(f"✅ Reply 1 Scheduled! ID: {r1_id}")

        # --- Reply 2 ---
        print("📤 Reply 2...")
        rpl2 = make_payload(rpl2_text, "2026-07-20T10:02:00.000Z", r1_id)
        r3 = post("/public/schedule", rpl2)
        if r3:
            print(f"✅ Reply 2 Scheduled! ID: {r3.get('scheduleId','unknown')}")
            print("🎉 Semua berhasil!")

