ciyidogan commited on
Commit
7e0b46e
·
verified ·
1 Parent(s): d646e4b

Update intent_api.py

Browse files
Files changed (1) hide show
  1. 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.__dict__, session.variables) for k, v in auth_body.items()
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.__dict__, session.variables) for k, v in refresh_body.items()
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 = intent.auth_token_handler(action_api_name, auth_config, 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 = intent.refresh_auth_token(action_api_name, auth_config, 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