serJD commited on
Commit
50d1740
·
verified ·
1 Parent(s): 380db35

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -4
app.py CHANGED
@@ -74,20 +74,27 @@ def fetch_referenced_object(speckleToken, apiUrl, stream_id, object_id):
74
  return send_graphql_query(speckleToken, apiUrl, query)
75
 
76
  def extract_team_name(object_data):
77
- # First try to get the team name directly
78
  data_field = object_data['data']['stream']['object']['data']
79
  try:
80
  nested_data_str = data_field['data']
81
  nested_data = json.loads(nested_data_str)
82
- return nested_data.get('teamName')
 
 
83
  except (KeyError, json.JSONDecodeError):
84
  pass
85
 
86
- # If not found, check for referencedId
87
  if '@Data' in data_field:
88
  referenced_id = data_field['@Data'].get('referencedId')
89
  if referenced_id:
90
- return referenced_id # Returning the ID to fetch further if needed
 
 
 
 
 
91
  return None
92
 
93
  @webhook_endpoint
 
74
  return send_graphql_query(speckleToken, apiUrl, query)
75
 
76
  def extract_team_name(object_data):
77
+ # Try to get the team name directly
78
  data_field = object_data['data']['stream']['object']['data']
79
  try:
80
  nested_data_str = data_field['data']
81
  nested_data = json.loads(nested_data_str)
82
+ team_name = nested_data.get('teamName')
83
+ if team_name:
84
+ return team_name
85
  except (KeyError, json.JSONDecodeError):
86
  pass
87
 
88
+ # If not found, check for referencedId and fetch further data
89
  if '@Data' in data_field:
90
  referenced_id = data_field['@Data'].get('referencedId')
91
  if referenced_id:
92
+ referenced_object_data = fetch_referenced_object(speckle_token, api_url, stream_id, referenced_id)
93
+ if referenced_object_data:
94
+ nested_data_str = referenced_object_data['data']['stream']['object']['data']['data']
95
+ nested_data = json.loads(nested_data_str)
96
+ return nested_data.get('teamName')
97
+
98
  return None
99
 
100
  @webhook_endpoint