#!/usr/bin/env python3
"""Probe: link SEO sudah dipakai SS Threads? + slot Des 2026 kosong?"""
import json
import re
import sys
from datetime import datetime, timedelta, timezone

sys.path.insert(0, '/home/mantapman/.hermes/profiles/atun/workspace')
from repliz_client import get_client, ACC
import repliz_openssl_transport

repliz_openssl_transport.install(verbose=False)

c = get_client()
SS = ACC.STUDIOSOFT_THREADS
docs, p = [], 1
while True:
    r = c.get_schedules(page=p, limit=100)
    docs.extend(r['docs'])
    if p >= (r.get('totalPages') or 1):
        break
    p += 1
print('all docs', len(docs))
ss = [d for d in docs if (d.get('accountId') or (d.get('account') or {}).get('id')) == SS]
print('SS Threads schedules', len(ss))

urls = set()
for d in ss:
    teks = [d.get('description') or '']
    for rp in (d.get('replies') or []):
        teks.append(rp.get('text', '') if isinstance(rp, dict) else str(rp))
    for t in teks:
        for m in re.findall(r'https?://[^\s\)\]]+', t or ''):
            urls.add(m.rstrip('.,').rstrip('/'))

target = 'https://studiosoft.id/jasa-seo-surabaya-paket-harga'
print('TARGET dipakai di SS Threads?', target in urls)
print('URL seo-ish yang sudah dipakai:')
for u in sorted(urls):
    if 'seo' in u:
        print('   ', u)

print('--- entri SS Des 2026 ke atas ---')
for d in sorted(ss, key=lambda x: x.get('scheduleAt') or ''):
    at = d.get('scheduleAt') or ''
    if at >= '2026-12-01':
        wib = datetime.fromisoformat(at.replace('Z', '+00:00')) + timedelta(hours=7)
        m = (d.get('medias') or [{}])[0]
        print(wib.strftime('%Y-%m-%d %H:%M'), 'WIB', d.get('status'), d.get('type'),
              (m.get('url') or '').split('/')[-1][:38])

print('--- cek jendela 07:30-08:30 WIB utk 9..20 Des 2026 (semua tipe) ---')
terisi = {}
for d in ss:
    at = d.get('scheduleAt')
    if not at:
        continue
    wib = datetime.fromisoformat(at.replace('Z', '+00:00')) + timedelta(hours=7)
    terisi.setdefault(wib.date(), []).append(wib.strftime('%H:%M') + '|' + (d.get('type') or ''))
d0 = datetime(2026, 12, 9).date()
for i in range(12):
    tgl = d0 + timedelta(days=i)
    jam = terisi.get(tgl, [])
    print(tgl.isoformat(), tgl.strftime('%a'), sorted(jam))
