import json, urllib.request, websocket
req = urllib.request.Request("http://10.168.3.36:8081/api/login",
    data=json.dumps({"username": "cxbsoft", "password": "cf5584aca177a811ffda8f4789e2e143"}).encode(),
    headers={"Content-Type": "application/json"})
token = json.load(urllib.request.urlopen(req, timeout=10)).get("data", {}).get("token", "")
ws = websocket.create_connection("ws://10.168.3.36:8081/api/user/friend-agent/ws?access_token=" + token, timeout=20)
ws.settimeout(30)
def req2(method, params, rid):
    ws.send(json.dumps({"type": "req", "request_id": rid, "method": method, "params": params}))
    while True:
        m = json.loads(ws.recv())
        if m.get("request_id") == rid:
            return m
for method, params in [
    ("llm.models.probe", {"model_id": 1}),
    ("llm.models.clear-cooldown", {"model_id": 1}),
    ("llm.channels.create", {"name": "probe-test-ch", "protocol": "openai", "api_base": "http://127.0.0.1:1/v1"}),
    ("llm.health", {}),
    ("llm.overview", {}),
]:
    r = req2(method, params, "p" + method[:8])
    print(method, "->", r.get("status"), json.dumps(r.get("error") or r.get("result"), ensure_ascii=False)[:120])
ws.close()
