#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Lihat jadwal IG StudioSoft hari ini (3 Okt 2026 WIB) + statusnya."""
import sys, time, datetime, json
sys.path.insert(0, "/home/mantapman/.hermes/profiles/atun/workspace")
from repliz_client import get_client

IG_SS = "6a38ac33c5ff4ce3a3231232"
WIB = datetime.timezone(datetime.timedelta(hours=7))

c = get_client()
docs = []
page = 1
while page <= 200:
    r = None
    for a in range(6):
        try:
            r = c.get_schedules(page=page, limit=100); break
        except Exception as e:
            time.sleep(3 + 2*a)
    if r is None:
        print("GAGAL fetch halaman", page); break
    data = r.get("data") or r.get("docs") or []
    docs.extend(data)
    if len(data) < 100: break
    page += 1

rows = []
for d in docs:
    acc = d.get("accountId") or (d.get("account") or {}).get("_id") or ""
    if acc != IG_SS: continue
    at = d.get("scheduleAt") or ""
    try:
        dt = datetime.datetime.fromisoformat(at.replace("Z", "+00:00")).astimezone(WIB)
    except Exception:
        continue
    if dt.date() == datetime.date(2026, 10, 3):
        medias = d.get("medias") or []
        rows.append((dt.strftime("%H:%M"), d.get("type"), d.get("status"),
                     str(d.get("_id")), len(medias),
                     ",".join((m.get("url","").split("/")[-1] for m in medias))[:120],
                     (d.get("description") or "")[:60].replace("\n", " ")))

for r in sorted(rows):
    print(" | ".join(str(x) for x in r))
print("total:", len(rows), "dari", len(docs), "jadwal")
