@@ -266,6 +266,10 @@ def create_tables():
266266
267267create_tables ()
268268
269+ def get_field_value (fields , field_name , default = "" ):
270+ field = fields .get (field_name , {})
271+ return field .get ('valueString' , default )
272+
269273ANALYZER_ID = "ckm-json"
270274# Process files and insert into DB and Search - transcripts
271275conversationIds , docs , counter = [], [], 0
@@ -282,17 +286,17 @@ def create_tables():
282286 start_timestamp = datetime .strptime (start_time , timestamp_format )
283287 conversation_id = file_name .split ('convo_' , 1 )[1 ].split ('_' )[0 ]
284288 conversationIds .append (conversation_id )
285- duration = int (result ['result' ]['contents' ][0 ]['fields' ]['Duration' ]['valueString' ])
289+ fields = result ['result' ]['contents' ][0 ]['fields' ]
290+ duration = int (get_field_value (fields , 'Duration' , '0' ))
286291 end_timestamp = str (start_timestamp + timedelta (seconds = duration )).split ("." )[0 ]
287292 start_timestamp = str (start_timestamp ).split ("." )[0 ]
288- fields = result ['result' ]['contents' ][0 ]['fields' ]
289- summary = fields ['summary' ]['valueString' ]
290- satisfied = fields ['satisfied' ]['valueString' ]
291- sentiment = fields ['sentiment' ]['valueString' ]
292- topic = fields ['topic' ]['valueString' ]
293- key_phrases = fields ['keyPhrases' ]['valueString' ]
294- complaint = fields ['complaint' ]['valueString' ]
295- content = fields ['content' ]['valueString' ]
293+ summary = get_field_value (fields , 'summary' )
294+ satisfied = get_field_value (fields , 'satisfied' )
295+ sentiment = get_field_value (fields , 'sentiment' )
296+ topic = get_field_value (fields , 'topic' )
297+ key_phrases = get_field_value (fields , 'keyPhrases' )
298+ complaint = get_field_value (fields , 'complaint' )
299+ content = get_field_value (fields , 'content' )
296300 cursor .execute (
297301 "INSERT INTO processed_data (ConversationId, EndTime, StartTime, Content, summary, satisfied, sentiment, topic, key_phrases, complaint) VALUES (?,?,?,?,?,?,?,?,?,?)" ,
298302 (conversation_id , end_timestamp , start_timestamp , content , summary , satisfied , sentiment , topic , key_phrases , complaint )
@@ -339,19 +343,20 @@ def create_tables():
339343 conversation_id = file_name .split ('convo_' , 1 )[1 ].split ('_' )[0 ]
340344 conversationIds .append (conversation_id )
341345
342- duration = int (result ['result' ]['contents' ][0 ]['fields' ]['Duration' ]['valueString' ])
346+ fields = result ['result' ]['contents' ][0 ]['fields' ]
347+ duration = int (get_field_value (fields , 'Duration' , '0' ))
343348 end_timestamp = str (start_timestamp + timedelta (seconds = duration ))
344349 end_timestamp = end_timestamp .split ("." )[0 ]
345350 start_timestamp = str (start_timestamp ).split ("." )[0 ]
346351
347- summary = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' summary'][ 'valueString' ]
348- satisfied = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' satisfied'][ 'valueString' ]
349- sentiment = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' sentiment'][ 'valueString' ]
350- topic = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' topic'][ 'valueString' ]
351- key_phrases = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' keyPhrases'][ 'valueString' ]
352- complaint = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' complaint'][ 'valueString' ]
353- content = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' content'][ 'valueString' ]
354- # print(topic)
352+ summary = get_field_value ( fields , ' summary')
353+ satisfied = get_field_value ( fields , ' satisfied')
354+ sentiment = get_field_value ( fields , ' sentiment')
355+ topic = get_field_value ( fields , ' topic')
356+ key_phrases = get_field_value ( fields , ' keyPhrases')
357+ complaint = get_field_value ( fields , ' complaint')
358+ content = get_field_value ( fields , ' content')
359+
355360 cursor .execute (f"INSERT INTO processed_data (ConversationId, EndTime, StartTime, Content, summary, satisfied, sentiment, topic, key_phrases, complaint) VALUES (?,?,?,?,?,?,?,?,?,?)" , (conversation_id , end_timestamp , start_timestamp , content , summary , satisfied , sentiment , topic , key_phrases , complaint ))
356361 conn .commit ()
357362
0 commit comments