@@ -351,6 +351,10 @@ def create_tables():
351351
352352create_tables ()
353353
354+ def get_field_value (fields , field_name , default = "" ):
355+ field = fields .get (field_name , {})
356+ return field .get ('valueString' , default )
357+
354358ANALYZER_ID = "ckm-json"
355359# Process files and insert into DB and Search - transcripts
356360conversationIds , docs , counter = [], [], 0
@@ -367,17 +371,17 @@ def create_tables():
367371 start_timestamp = datetime .strptime (start_time , timestamp_format )
368372 conversation_id = file_name .split ('convo_' , 1 )[1 ].split ('_' )[0 ]
369373 conversationIds .append (conversation_id )
370- duration = int (result ['result' ]['contents' ][0 ]['fields' ]['Duration' ]['valueString' ])
374+ fields = result ['result' ]['contents' ][0 ]['fields' ]
375+ duration = int (get_field_value (fields , 'Duration' , '0' ))
371376 end_timestamp = str (start_timestamp + timedelta (seconds = duration )).split ("." )[0 ]
372377 start_timestamp = str (start_timestamp ).split ("." )[0 ]
373- fields = result ['result' ]['contents' ][0 ]['fields' ]
374- summary = fields ['summary' ]['valueString' ]
375- satisfied = fields ['satisfied' ]['valueString' ]
376- sentiment = fields ['sentiment' ]['valueString' ]
377- topic = fields ['topic' ]['valueString' ]
378- key_phrases = fields ['keyPhrases' ]['valueString' ]
379- complaint = fields ['complaint' ]['valueString' ]
380- content = fields ['content' ]['valueString' ]
378+ summary = get_field_value (fields , 'summary' )
379+ satisfied = get_field_value (fields , 'satisfied' )
380+ sentiment = get_field_value (fields , 'sentiment' )
381+ topic = get_field_value (fields , 'topic' )
382+ key_phrases = get_field_value (fields , 'keyPhrases' )
383+ complaint = get_field_value (fields , 'complaint' )
384+ content = get_field_value (fields , 'content' )
381385 cursor .execute (
382386 "INSERT INTO processed_data (ConversationId, EndTime, StartTime, Content, summary, satisfied, sentiment, topic, key_phrases, complaint) VALUES (?,?,?,?,?,?,?,?,?,?)" ,
383387 (conversation_id , end_timestamp , start_timestamp , content , summary , satisfied , sentiment , topic , key_phrases , complaint )
@@ -421,19 +425,20 @@ def create_tables():
421425 conversation_id = file_name .split ('convo_' , 1 )[1 ].split ('_' )[0 ]
422426 conversationIds .append (conversation_id )
423427
424- duration = int (result ['result' ]['contents' ][0 ]['fields' ]['Duration' ]['valueString' ])
428+ fields = result ['result' ]['contents' ][0 ]['fields' ]
429+ duration = int (get_field_value (fields , 'Duration' , '0' ))
425430 end_timestamp = str (start_timestamp + timedelta (seconds = duration ))
426431 end_timestamp = end_timestamp .split ("." )[0 ]
427432 start_timestamp = str (start_timestamp ).split ("." )[0 ]
428433
429- summary = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' summary'][ 'valueString' ]
430- satisfied = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' satisfied'][ 'valueString' ]
431- sentiment = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' sentiment'][ 'valueString' ]
432- topic = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' topic'][ 'valueString' ]
433- key_phrases = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' keyPhrases'][ 'valueString' ]
434- complaint = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' complaint'][ 'valueString' ]
435- content = result [ 'result' ][ 'contents' ][ 0 ][ ' fields' ][ ' content'][ 'valueString' ]
436- # print(topic)
434+ summary = get_field_value ( fields , ' summary')
435+ satisfied = get_field_value ( fields , ' satisfied')
436+ sentiment = get_field_value ( fields , ' sentiment')
437+ topic = get_field_value ( fields , ' topic')
438+ key_phrases = get_field_value ( fields , ' keyPhrases')
439+ complaint = get_field_value ( fields , ' complaint')
440+ content = get_field_value ( fields , ' content')
441+
437442 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 ))
438443 conn .commit ()
439444
0 commit comments