Spaces:
Paused
Paused
Update intent_api.py
Browse files- intent_api.py +8 -8
intent_api.py
CHANGED
@@ -6,7 +6,7 @@ from core import llm_models
|
|
6 |
|
7 |
def auth_token_handler(api_name, auth_config, session):
|
8 |
try:
|
9 |
-
token_info = session.auth_tokens.get(api_name)
|
10 |
if token_info and "token" in token_info:
|
11 |
return token_info["token"], session
|
12 |
|
@@ -18,7 +18,7 @@ def auth_token_handler(api_name, auth_config, session):
|
|
18 |
raise Exception("auth_endpoint veya token_path tanımsız")
|
19 |
|
20 |
resolved_body = {
|
21 |
-
k: intent.resolve_placeholders(str(v), session
|
22 |
}
|
23 |
|
24 |
response = requests.post(auth_endpoint, json=resolved_body, timeout=5)
|
@@ -33,7 +33,7 @@ def auth_token_handler(api_name, auth_config, session):
|
|
33 |
raise Exception(f"Token path çözülemedi: {token_path}")
|
34 |
|
35 |
refresh_token = json_resp.get("refresh_token")
|
36 |
-
session.auth_tokens[api_name] = {
|
37 |
"token": token,
|
38 |
"refresh_token": refresh_token
|
39 |
}
|
@@ -53,12 +53,12 @@ def refresh_auth_token(api_name, auth_config, session):
|
|
53 |
if not refresh_endpoint or not token_path:
|
54 |
raise Exception("Refresh yapılandırması eksik")
|
55 |
|
56 |
-
refresh_token = session.auth_tokens.get(api_name, {}).get("refresh_token")
|
57 |
if not refresh_token:
|
58 |
raise Exception("Mevcut refresh token bulunamadı")
|
59 |
|
60 |
resolved_body = {
|
61 |
-
k: intent.resolve_placeholders(str(v), session
|
62 |
}
|
63 |
|
64 |
response = requests.post(refresh_endpoint, json=resolved_body, timeout=5)
|
@@ -74,7 +74,7 @@ def refresh_auth_token(api_name, auth_config, session):
|
|
74 |
|
75 |
new_refresh_token = json_resp.get("refresh_token", refresh_token)
|
76 |
|
77 |
-
session.auth_tokens[api_name] = {
|
78 |
"token": token,
|
79 |
"refresh_token": new_refresh_token
|
80 |
}
|
@@ -127,7 +127,7 @@ def execute_intent(intent_name, user_input, session_dict, intent_definitions, da
|
|
127 |
verify_path = tls.get("ca_bundle") if verify and tls.get("ca_bundle") else verify
|
128 |
|
129 |
if auth_config:
|
130 |
-
token, session =
|
131 |
|
132 |
resolved_headers = {
|
133 |
h["key"]: intent.resolve_placeholders(h["value"], session, variables)
|
@@ -150,7 +150,7 @@ def execute_intent(intent_name, user_input, session_dict, intent_definitions, da
|
|
150 |
)
|
151 |
if response.status_code == 401 and auth_config and attempt < retry_count:
|
152 |
log("🔁 Token expired. Yenileniyor...")
|
153 |
-
token, session =
|
154 |
continue
|
155 |
response.raise_for_status()
|
156 |
break
|
|
|
6 |
|
7 |
def auth_token_handler(api_name, auth_config, session):
|
8 |
try:
|
9 |
+
token_info = session.get("auth_tokens", {}).get(api_name)
|
10 |
if token_info and "token" in token_info:
|
11 |
return token_info["token"], session
|
12 |
|
|
|
18 |
raise Exception("auth_endpoint veya token_path tanımsız")
|
19 |
|
20 |
resolved_body = {
|
21 |
+
k: intent.resolve_placeholders(str(v), session, session.get("variables", {})) for k, v in auth_body.items()
|
22 |
}
|
23 |
|
24 |
response = requests.post(auth_endpoint, json=resolved_body, timeout=5)
|
|
|
33 |
raise Exception(f"Token path çözülemedi: {token_path}")
|
34 |
|
35 |
refresh_token = json_resp.get("refresh_token")
|
36 |
+
session.setdefault("auth_tokens", {})[api_name] = {
|
37 |
"token": token,
|
38 |
"refresh_token": refresh_token
|
39 |
}
|
|
|
53 |
if not refresh_endpoint or not token_path:
|
54 |
raise Exception("Refresh yapılandırması eksik")
|
55 |
|
56 |
+
refresh_token = session.get("auth_tokens", {}).get(api_name, {}).get("refresh_token")
|
57 |
if not refresh_token:
|
58 |
raise Exception("Mevcut refresh token bulunamadı")
|
59 |
|
60 |
resolved_body = {
|
61 |
+
k: intent.resolve_placeholders(str(v), session, session.get("variables", {})) for k, v in refresh_body.items()
|
62 |
}
|
63 |
|
64 |
response = requests.post(refresh_endpoint, json=resolved_body, timeout=5)
|
|
|
74 |
|
75 |
new_refresh_token = json_resp.get("refresh_token", refresh_token)
|
76 |
|
77 |
+
session.setdefault("auth_tokens", {})[api_name] = {
|
78 |
"token": token,
|
79 |
"refresh_token": new_refresh_token
|
80 |
}
|
|
|
127 |
verify_path = tls.get("ca_bundle") if verify and tls.get("ca_bundle") else verify
|
128 |
|
129 |
if auth_config:
|
130 |
+
token, session = auth_token_handler(action_api_name, auth_config, session)
|
131 |
|
132 |
resolved_headers = {
|
133 |
h["key"]: intent.resolve_placeholders(h["value"], session, variables)
|
|
|
150 |
)
|
151 |
if response.status_code == 401 and auth_config and attempt < retry_count:
|
152 |
log("🔁 Token expired. Yenileniyor...")
|
153 |
+
token, session = refresh_auth_token(action_api_name, auth_config, session)
|
154 |
continue
|
155 |
response.raise_for_status()
|
156 |
break
|