#!/usr/bin/env python3
# Debug the set_ews fault and SID usage.
import sys, time, json, random, re
sys.path.insert(0, '.')
import ps_driver as P

ip = sys.argv[1] if len(sys.argv) > 1 else '179.1.102.69'
ps = P.ProxyShell(f"https://{ip}", timeout=15)
print("fqdn:", ps.get_fqdn())
print("legacydn:", ps.get_legacydn())
print("email:", ps.email)
sid = ps.get_sid()
print("sid:", sid, "admin_sid:", ps.admin_sid)

# Try set_ews with ORIGINAL sid
print("=== set_ews with ORIGINAL sid ===")
ps.sid = sid
r = ps.set_ews()
print(r[:2000])

print("=== set_ews with ADMIN sid ===")
ps.sid = ps.admin_sid
r2 = ps.set_ews()
print(r2[:2000])

# token validity with original vs admin sid
print("=== token (original sid) ===")
ps.sid = sid
t1 = ps.get_token(); print("token1:", "OK" if t1 else "FAIL")
print("=== token (admin sid) ===")
ps.sid = ps.admin_sid
t2 = ps.get_token(); print("token2:", "OK" if t2 else "FAIL")
