I have the JSON data below. I need the JSON to split and form a new JSON data object. I’m new to this and am struggling to get a way to solve this.
below JSON data:
[ { "timestamp":"2020-11-13T20:57:17.611Z", "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "Telephone":"555555555", "Name":"Mike", "Thread":[ { "textPayload":{ "timestamp":"2020-11-13T20:57:08.552Z", "id":"a97809e8-3466-4404-947e-4ec89f96878b-aabf4fdf", "status":{ "error_type":"success", "code":200 }, "lang":"en", "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "result":{ "score":1, "action_incomplete":true, "resolved_query":"hi", "action":"input.welcome", "source":"agent", "metadata":{ "intent_name":"Default Welcome Intent", "webhook_used":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "is_fallback_intent":false, "webhook_for_slot_filling_used":false }, "parameters":{ "fields":{ "value":{ "string_value":"" }, "key":"name" } }, "contexts":{ "parameters":{ "fields":{ "key":"no-match", "value":{ "number_value":0 } } }, "name":"__system_counters__", "lifespan":1 }, "fulfillment":{ "messages":{ "type":{ "number_value":0 }, "speech":{ "string_value":"What is the name?" } }, "speech":"What is the name?" } } }, "insertId":"1p1x1wdfgkwf2a", "severity":"INFO", "receiveTimestamp":"2020-11-13T20:57:08.592891686Z", "trace":"eed8d600-0438-37d3-dd96-25081a91b90a", "labels":{ "request_id":"a97809e8-3466-4404-947e-4ec89f96878b-aabf4fdf", "type":"dialogflow_response", "protocol":"V2_BETA1", "source":"DIALOGFLOW_CONSOLE" }, "timestamp":"2020-11-13T20:57:08.571Z", "logName":"projects/entuber/logs/dialogflow_agent", "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a" }, { "timestamp":"2020-11-13T20:57:11.746Z", "labels":{ "type":"dialogflow_response", "protocol":"V2_BETA1", "source":"DIALOGFLOW_CONSOLE", "request_id":"70b25970-e228-41b9-9898-26d68bb67c13-aabf4fdf" }, "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" }, "logName":"projects/entuber/logs/dialogflow_agent", "receiveTimestamp":"2020-11-13T20:57:11.766438485Z", "trace":"eed8d600-0438-37d3-dd96-25081a91b90a", "severity":"INFO", "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "textPayload":{ "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "status":{ "code":200, "error_type":"success" }, "timestamp":"2020-11-13T20:57:11.728Z", "id":"70b25970-e228-41b9-9898-26d68bb67c13-aabf4fdf", "lang":"en", "result":{ "contexts":{ "lifespan":50, "parameters":{ "fields":{ "value":{ "string_value":"sam" }, "key":"name.original" } }, "name":"name" }, "action":"input.welcome", "resolved_query":"sam", "fulfillment":{ "speech":"Hi, I'm Tara. I've been modified to tell you what your bills are. Ask me for your current bill and I'll tell you how much you have to pay and when it's due. Make sure you know the account number though.", "messages":{ "speech":{ "string_value":"" }, "lang":"en", "type":{ "number_value":0 } } }, "parameters":{ "fields":{ "key":"name", "value":{ "string_value":"Sam" } } }, "metadata":{ "intent_name":"Default Welcome Intent", "is_fallback_intent":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "webhook_for_slot_filling_used":false, "webhook_used":false }, "source":"agent", "score":1 } }, "insertId":"1orjxuhfg78gle" }, ] }, { "session_id":"TestTaraSession", "timestamp":"2020-11-16T06:17:37.536Z", "Thread":[ { "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "insertId":"ftk71rg38zc3de", "trace":"TestTaraSession", "logName":"projects/entuber/logs/dialogflow_agent", "labels":{ "type":"dialogflow_response", "request_id":"1fd35e1d-7830-4606-937d-b8685dde0129-aabf4fdf", "protocol":"V2_BETA1" }, "severity":"INFO", "timestamp":"2020-11-16T06:16:50.421Z", "session_id":"TestTaraSession", "receiveTimestamp":"2020-11-16T06:16:50.45315191Z", "textPayload":{ "status":{ "error_type":"success", "code":200 }, "id":"1fd35e1d-7830-4606-937d-b8685dde0129-aabf4fdf", "lang":"en", "session_id":"TestTaraSession", "result":{ "score":1, "parameters":{ "fields":{ "value":{ "string_value":"" }, "key":"name" } }, "metadata":{ "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "is_fallback_intent":false, "webhook_used":false, "intent_name":"Default Welcome Intent", "webhook_for_slot_filling_used":false }, "action":"input.welcome", "contexts":{ "lifespan":1, "name":"__system_counters__", "parameters":{ "fields":{ "value":{ "number_value":0 }, "key":"no-match" } } }, "action_incomplete":true, "fulfillment":{ "messages":{ "type":{ "number_value":0 }, "speech":{ "string_value":"What is the name?" } }, "speech":"What is the name?" }, "source":"agent", "resolved_query":"WELCOME" }, "timestamp":"2020-11-16T06:16:50.408Z" } }, { "session_id":"TestTaraSession", "timestamp":"2020-11-16T06:17:08.746Z", "insertId":"1ggf79rg3d2lksr", "labels":{ "protocol":"V2_BETA1", "type":"dialogflow_response", "request_id":"ff18d72b-5fbc-4e44-a52d-f987d0d59d9d-aabf4fdf" }, "logName":"projects/entuber/logs/dialogflow_agent", "receiveTimestamp":"2020-11-16T06:17:08.756453598Z", "trace":"TestTaraSession", "textPayload":{ "session_id":"TestTaraSession", "lang":"en", "result":{ "contexts":{ "parameters":{ "fields":{ "value":{ "string_value":"Tara" }, "key":"name.original" } }, "lifespan":50, "name":"name" }, "metadata":{ "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "is_fallback_intent":false, "webhook_used":false, "webhook_for_slot_filling_used":false, "intent_name":"Default Welcome Intent" }, "parameters":{ "fields":{ "value":{ "string_value":"Tara" }, "key":"name" } }, "action":"input.welcome", "source":"agent", "score":1, "fulfillment":{ "messages":{ "lang":"en", "speech":{ "string_value":"" }, "type":{ "number_value":0 } }, "speech":"Hi, I'm Tara. I've been modified to tell you what your bills are. Ask me for your current bill and I'll tell you how much you have to pay and when it's due. Make sure you know the account number though." }, "resolved_query":"Tara" }, "timestamp":"2020-11-16T06:17:08.742Z", "status":{ "error_type":"success", "code":200 }, "id":"ff18d72b-5fbc-4e44-a52d-f987d0d59d9d-aabf4fdf" }, "severity":"INFO", "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" } }, { "trace":"TestTaraSession", "receiveTimestamp":"2020-11-16T06:17:17.973535789Z", "logName":"projects/entuber/logs/dialogflow_agent", "textPayload":{ "lang":"en", "timestamp":"2020-11-16T06:17:17.943Z", "result":{ "score":0.686966, "parameters":{ "fields":{ "value":{ "string_value":"" }, "key":"accountNo" } }, "action":"com.tara.bills", "metadata":{ "intent_id":"5ff968ab-3646-4abe-ae7e-93203997e5fb", "webhook_used":true, "webhook_for_slot_filling_used":false, "intent_name":"Read Bill", "is_fallback_intent":false }, "resolved_query":"Bill details", "action_incomplete":true, "source":"agent", "fulfillment":{ "messages":{ "speech":{ "string_value":"What is your account number?" }, "type":{ "number_value":0 } }, "speech":"What is your account number?" }, "contexts":{ "parameters":{ "fields":{ "key":"no-match", "value":{ "number_value":0 } } }, "name":"__system_counters__", "lifespan":1 } }, "id":"ab128f85-0044-42ba-ae8a-c77d0905d972-aabf4fdf", "status":{ "error_type":"success", "code":200 }, "session_id":"TestTaraSession" }, "severity":"INFO", "session_id":"TestTaraSession", "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" }, "timestamp":"2020-11-16T06:17:17.965Z", "insertId":"dc02v6g3eo2vya", "labels":{ "type":"dialogflow_response", "protocol":"V2_BETA1", "request_id":"ab128f85-0044-42ba-ae8a-c77d0905d972-aabf4fdf" } }, { "textPayload":{ "session_id":"TestTaraSession", "status":{ "error_type":"success", "code":200 }, "result":{ "metadata":{ "webhook_used":false, "intent_name":"Read Bill", "webhook_response_time":3334, "intent_id":"5ff968ab-3646-4abe-ae7e-93203997e5fb", "is_fallback_intent":false, "webhook_for_slot_filling_used":false }, "contexts":{ "name":"defaultwelcomeintent-followup", "lifespan":1, "parameters":{ "fields":{ "value":{ "string_value":"Tara" }, "key":"name.original" } } }, "source":"agent", "action":"com.tara.bills", "fulfillment":{ "speech":"Your current bill of $2927.62 is due on 10/19/2020.", "messages":{ "speech":{ "string_value":"Your current bill of $2927.62 is due on 10/19/2020." }, "type":{ "number_value":0 } } }, "score":1, "parameters":{ "fields":{ "value":{ "number_value":21012875 }, "key":"accountNo" } }, "resolved_query":21012875 }, "lang":"en", "id":"1d3df1d2-1753-48fc-948e-7fc91473d055-aabf4fdf", "timestamp":"2020-11-16T06:17:34.184Z" }, "insertId":"1def6i1g15mb48l", "labels":{ "protocol":"V2_BETA1", "request_id":"1d3df1d2-1753-48fc-948e-7fc91473d055-aabf4fdf", "type":"dialogflow_response" }, "receiveTimestamp":"2020-11-16T06:17:37.548546643Z", "timestamp":"2020-11-16T06:17:37.536Z", "severity":"INFO", "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "session_id":"TestTaraSession", "trace":"TestTaraSession", "logName":"projects/entuber/logs/dialogflow_agent" } ] }, { "timestamp":"2020-11-16T06:29:14.564Z", "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "Thread":[ { "timestamp":"2020-11-16T06:29:01.638Z", "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "logName":"projects/entuber/logs/dialogflow_agent", "severity":"INFO", "insertId":"1httvn0g2nj3fae", "labels":{ "request_id":"94ec1661-d472-4ef0-a7bd-d85e22062e4d-aabf4fdf", "protocol":"V2_BETA1", "type":"dialogflow_response", "source":"DIALOGFLOW_CONSOLE" }, "trace":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" }, "textPayload":{ "status":{ "error_type":"success", "code":200 }, "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "result":{ "resolved_query":"hello", "contexts":{ "parameters":{ "fields":{ "key":"no-match", "value":{ "number_value":0 } } }, "lifespan":1, "name":"__system_counters__" }, "score":1, "action_incomplete":true, "fulfillment":{ "messages":{ "speech":{ "string_value":"What is the name?" }, "type":{ "number_value":0 } }, "speech":"What is the name?" }, "action":"input.welcome", "metadata":{ "is_fallback_intent":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "webhook_for_slot_filling_used":false, "webhook_used":false, "intent_name":"Default Welcome Intent" }, "parameters":{ "fields":{ "key":"name", "value":{ "string_value":"" } } }, "source":"agent" }, "id":"94ec1661-d472-4ef0-a7bd-d85e22062e4d-aabf4fdf", "timestamp":"2020-11-16T06:29:01.596Z", "lang":"en" }, "receiveTimestamp":"2020-11-16T06:29:01.64859801Z" }, { "severity":"INFO", "receiveTimestamp":"2020-11-16T06:29:07.676213264Z", "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "insertId":"13ojz2yg2npq0nk", "labels":{ "source":"DIALOGFLOW_CONSOLE", "type":"dialogflow_response", "request_id":"896b6d41-fe8b-4123-ba68-07004435db42-aabf4fdf", "protocol":"V2_BETA1" }, "timestamp":"2020-11-16T06:29:07.667Z", "logName":"projects/entuber/logs/dialogflow_agent", "trace":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "textPayload":{ "status":{ "error_type":"success", "code":200 }, "timestamp":"2020-11-16T06:29:07.62Z", "lang":"en", "result":{ "contexts":{ "lifespan":50, "name":"name", "parameters":{ "fields":{ "key":"name.original", "value":{ "string_value":"tara" } } } }, "source":"agent", "resolved_query":"tara", "score":1, "action":"input.welcome", "fulfillment":{ "messages":{ "lang":"en", "speech":{ "string_value":"" }, "type":{ "number_value":0 } }, "speech":"Can I have your name?" }, "parameters":{ "fields":{ "key":"name", "value":{ "string_value":"Tara" } } }, "metadata":{ "webhook_for_slot_filling_used":false, "is_fallback_intent":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "intent_name":"Default Welcome Intent", "webhook_used":false } }, "id":"896b6d41-fe8b-4123-ba68-07004435db42-aabf4fdf", "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804" }, "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804" } ] } ]
This has to be done for all the session_id
values in the input JSON data.
It has to form all the JSON data to iterate and show in another HTML.
I’m confused here and aim to get the following:
Sample output:
[ { "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "timestamp":"2020-11-13T20:57:17.611Z", "labels":{ "request_id":"a97809e8-3466-4404-947e-4ec89f96878b-aabf4fdf", "type":"dialogflow_response", "protocol":"V2_BETA1", "source":"DIALOGFLOW_CONSOLE" }, "Thread":[ { "speech":"What is the name?", "timestamp":"2020-11-13T20:57:08.552Z", "id":"a97809e8-3466-4404-947e-4ec89f96878b-aabf4fdf" } ] } ]
I need to get a result like above for all session_id
values.
Advertisement
Answer
You have a concept-level problem. A session may have multiple threads for separate requests and therefore you need to support a one-to-many relationship for session-request/thread. So, my solution is not exactly looking like your sample output, because there are multiple threads, each having their own label:
var input = [ { "timestamp":"2020-11-13T20:57:17.611Z", "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "Telephone":"555555555", "Name":"Mike", "Thread":[ { "textPayload":{ "timestamp":"2020-11-13T20:57:08.552Z", "id":"a97809e8-3466-4404-947e-4ec89f96878b-aabf4fdf", "status":{ "error_type":"success", "code":200 }, "lang":"en", "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "result":{ "score":1, "action_incomplete":true, "resolved_query":"hi", "action":"input.welcome", "source":"agent", "metadata":{ "intent_name":"Default Welcome Intent", "webhook_used":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "is_fallback_intent":false, "webhook_for_slot_filling_used":false }, "parameters":{ "fields":{ "value":{ "string_value":"" }, "key":"name" } }, "contexts":{ "parameters":{ "fields":{ "key":"no-match", "value":{ "number_value":0 } } }, "name":"__system_counters__", "lifespan":1 }, "fulfillment":{ "messages":{ "type":{ "number_value":0 }, "speech":{ "string_value":"What is the name?" } }, "speech":"What is the name?" } } }, "insertId":"1p1x1wdfgkwf2a", "severity":"INFO", "receiveTimestamp":"2020-11-13T20:57:08.592891686Z", "trace":"eed8d600-0438-37d3-dd96-25081a91b90a", "labels":{ "request_id":"a97809e8-3466-4404-947e-4ec89f96878b-aabf4fdf", "type":"dialogflow_response", "protocol":"V2_BETA1", "source":"DIALOGFLOW_CONSOLE" }, "timestamp":"2020-11-13T20:57:08.571Z", "logName":"projects/entuber/logs/dialogflow_agent", "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a" }, { "timestamp":"2020-11-13T20:57:11.746Z", "labels":{ "type":"dialogflow_response", "protocol":"V2_BETA1", "source":"DIALOGFLOW_CONSOLE", "request_id":"70b25970-e228-41b9-9898-26d68bb67c13-aabf4fdf" }, "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" }, "logName":"projects/entuber/logs/dialogflow_agent", "receiveTimestamp":"2020-11-13T20:57:11.766438485Z", "trace":"eed8d600-0438-37d3-dd96-25081a91b90a", "severity":"INFO", "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "textPayload":{ "session_id":"eed8d600-0438-37d3-dd96-25081a91b90a", "status":{ "code":200, "error_type":"success" }, "timestamp":"2020-11-13T20:57:11.728Z", "id":"70b25970-e228-41b9-9898-26d68bb67c13-aabf4fdf", "lang":"en", "result":{ "contexts":{ "lifespan":50, "parameters":{ "fields":{ "value":{ "string_value":"sam" }, "key":"name.original" } }, "name":"name" }, "action":"input.welcome", "resolved_query":"sam", "fulfillment":{ "speech":"Hi, I'm Tara. I've been modified to tell you what your bills are. Ask me for your current bill and I'll tell you how much you have to pay and when it's due. Make sure you know the account number though.", "messages":{ "speech":{ "string_value":"" }, "lang":"en", "type":{ "number_value":0 } } }, "parameters":{ "fields":{ "key":"name", "value":{ "string_value":"Sam" } } }, "metadata":{ "intent_name":"Default Welcome Intent", "is_fallback_intent":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "webhook_for_slot_filling_used":false, "webhook_used":false }, "source":"agent", "score":1 } }, "insertId":"1orjxuhfg78gle" }, ] }, { "session_id":"TestTaraSession", "timestamp":"2020-11-16T06:17:37.536Z", "Thread":[ { "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "insertId":"ftk71rg38zc3de", "trace":"TestTaraSession", "logName":"projects/entuber/logs/dialogflow_agent", "labels":{ "type":"dialogflow_response", "request_id":"1fd35e1d-7830-4606-937d-b8685dde0129-aabf4fdf", "protocol":"V2_BETA1" }, "severity":"INFO", "timestamp":"2020-11-16T06:16:50.421Z", "session_id":"TestTaraSession", "receiveTimestamp":"2020-11-16T06:16:50.45315191Z", "textPayload":{ "status":{ "error_type":"success", "code":200 }, "id":"1fd35e1d-7830-4606-937d-b8685dde0129-aabf4fdf", "lang":"en", "session_id":"TestTaraSession", "result":{ "score":1, "parameters":{ "fields":{ "value":{ "string_value":"" }, "key":"name" } }, "metadata":{ "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "is_fallback_intent":false, "webhook_used":false, "intent_name":"Default Welcome Intent", "webhook_for_slot_filling_used":false }, "action":"input.welcome", "contexts":{ "lifespan":1, "name":"__system_counters__", "parameters":{ "fields":{ "value":{ "number_value":0 }, "key":"no-match" } } }, "action_incomplete":true, "fulfillment":{ "messages":{ "type":{ "number_value":0 }, "speech":{ "string_value":"What is the name?" } }, "speech":"What is the name?" }, "source":"agent", "resolved_query":"WELCOME" }, "timestamp":"2020-11-16T06:16:50.408Z" } }, { "session_id":"TestTaraSession", "timestamp":"2020-11-16T06:17:08.746Z", "insertId":"1ggf79rg3d2lksr", "labels":{ "protocol":"V2_BETA1", "type":"dialogflow_response", "request_id":"ff18d72b-5fbc-4e44-a52d-f987d0d59d9d-aabf4fdf" }, "logName":"projects/entuber/logs/dialogflow_agent", "receiveTimestamp":"2020-11-16T06:17:08.756453598Z", "trace":"TestTaraSession", "textPayload":{ "session_id":"TestTaraSession", "lang":"en", "result":{ "contexts":{ "parameters":{ "fields":{ "value":{ "string_value":"Tara" }, "key":"name.original" } }, "lifespan":50, "name":"name" }, "metadata":{ "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "is_fallback_intent":false, "webhook_used":false, "webhook_for_slot_filling_used":false, "intent_name":"Default Welcome Intent" }, "parameters":{ "fields":{ "value":{ "string_value":"Tara" }, "key":"name" } }, "action":"input.welcome", "source":"agent", "score":1, "fulfillment":{ "messages":{ "lang":"en", "speech":{ "string_value":"" }, "type":{ "number_value":0 } }, "speech":"Hi, I'm Tara. I've been modified to tell you what your bills are. Ask me for your current bill and I'll tell you how much you have to pay and when it's due. Make sure you know the account number though." }, "resolved_query":"Tara" }, "timestamp":"2020-11-16T06:17:08.742Z", "status":{ "error_type":"success", "code":200 }, "id":"ff18d72b-5fbc-4e44-a52d-f987d0d59d9d-aabf4fdf" }, "severity":"INFO", "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" } }, { "trace":"TestTaraSession", "receiveTimestamp":"2020-11-16T06:17:17.973535789Z", "logName":"projects/entuber/logs/dialogflow_agent", "textPayload":{ "lang":"en", "timestamp":"2020-11-16T06:17:17.943Z", "result":{ "score":0.686966, "parameters":{ "fields":{ "value":{ "string_value":"" }, "key":"accountNo" } }, "action":"com.tara.bills", "metadata":{ "intent_id":"5ff968ab-3646-4abe-ae7e-93203997e5fb", "webhook_used":true, "webhook_for_slot_filling_used":false, "intent_name":"Read Bill", "is_fallback_intent":false }, "resolved_query":"Bill details", "action_incomplete":true, "source":"agent", "fulfillment":{ "messages":{ "speech":{ "string_value":"What is your account number?" }, "type":{ "number_value":0 } }, "speech":"What is your account number?" }, "contexts":{ "parameters":{ "fields":{ "key":"no-match", "value":{ "number_value":0 } } }, "name":"__system_counters__", "lifespan":1 } }, "id":"ab128f85-0044-42ba-ae8a-c77d0905d972-aabf4fdf", "status":{ "error_type":"success", "code":200 }, "session_id":"TestTaraSession" }, "severity":"INFO", "session_id":"TestTaraSession", "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" }, "timestamp":"2020-11-16T06:17:17.965Z", "insertId":"dc02v6g3eo2vya", "labels":{ "type":"dialogflow_response", "protocol":"V2_BETA1", "request_id":"ab128f85-0044-42ba-ae8a-c77d0905d972-aabf4fdf" } }, { "textPayload":{ "session_id":"TestTaraSession", "status":{ "error_type":"success", "code":200 }, "result":{ "metadata":{ "webhook_used":false, "intent_name":"Read Bill", "webhook_response_time":3334, "intent_id":"5ff968ab-3646-4abe-ae7e-93203997e5fb", "is_fallback_intent":false, "webhook_for_slot_filling_used":false }, "contexts":{ "name":"defaultwelcomeintent-followup", "lifespan":1, "parameters":{ "fields":{ "value":{ "string_value":"Tara" }, "key":"name.original" } } }, "source":"agent", "action":"com.tara.bills", "fulfillment":{ "speech":"Your current bill of $2927.62 is due on 10/19/2020.", "messages":{ "speech":{ "string_value":"Your current bill of $2927.62 is due on 10/19/2020." }, "type":{ "number_value":0 } } }, "score":1, "parameters":{ "fields":{ "value":{ "number_value":21012875 }, "key":"accountNo" } }, "resolved_query":21012875 }, "lang":"en", "id":"1d3df1d2-1753-48fc-948e-7fc91473d055-aabf4fdf", "timestamp":"2020-11-16T06:17:34.184Z" }, "insertId":"1def6i1g15mb48l", "labels":{ "protocol":"V2_BETA1", "request_id":"1d3df1d2-1753-48fc-948e-7fc91473d055-aabf4fdf", "type":"dialogflow_response" }, "receiveTimestamp":"2020-11-16T06:17:37.548546643Z", "timestamp":"2020-11-16T06:17:37.536Z", "severity":"INFO", "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "session_id":"TestTaraSession", "trace":"TestTaraSession", "logName":"projects/entuber/logs/dialogflow_agent" } ] }, { "timestamp":"2020-11-16T06:29:14.564Z", "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "Thread":[ { "timestamp":"2020-11-16T06:29:01.638Z", "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "logName":"projects/entuber/logs/dialogflow_agent", "severity":"INFO", "insertId":"1httvn0g2nj3fae", "labels":{ "request_id":"94ec1661-d472-4ef0-a7bd-d85e22062e4d-aabf4fdf", "protocol":"V2_BETA1", "type":"dialogflow_response", "source":"DIALOGFLOW_CONSOLE" }, "trace":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "resource":{ "labels":{ "project_id":"entuber" }, "type":"global" }, "textPayload":{ "status":{ "error_type":"success", "code":200 }, "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "result":{ "resolved_query":"hello", "contexts":{ "parameters":{ "fields":{ "key":"no-match", "value":{ "number_value":0 } } }, "lifespan":1, "name":"__system_counters__" }, "score":1, "action_incomplete":true, "fulfillment":{ "messages":{ "speech":{ "string_value":"What is the name?" }, "type":{ "number_value":0 } }, "speech":"What is the name?" }, "action":"input.welcome", "metadata":{ "is_fallback_intent":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "webhook_for_slot_filling_used":false, "webhook_used":false, "intent_name":"Default Welcome Intent" }, "parameters":{ "fields":{ "key":"name", "value":{ "string_value":"" } } }, "source":"agent" }, "id":"94ec1661-d472-4ef0-a7bd-d85e22062e4d-aabf4fdf", "timestamp":"2020-11-16T06:29:01.596Z", "lang":"en" }, "receiveTimestamp":"2020-11-16T06:29:01.64859801Z" }, { "severity":"INFO", "receiveTimestamp":"2020-11-16T06:29:07.676213264Z", "resource":{ "type":"global", "labels":{ "project_id":"entuber" } }, "insertId":"13ojz2yg2npq0nk", "labels":{ "source":"DIALOGFLOW_CONSOLE", "type":"dialogflow_response", "request_id":"896b6d41-fe8b-4123-ba68-07004435db42-aabf4fdf", "protocol":"V2_BETA1" }, "timestamp":"2020-11-16T06:29:07.667Z", "logName":"projects/entuber/logs/dialogflow_agent", "trace":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804", "textPayload":{ "status":{ "error_type":"success", "code":200 }, "timestamp":"2020-11-16T06:29:07.62Z", "lang":"en", "result":{ "contexts":{ "lifespan":50, "name":"name", "parameters":{ "fields":{ "key":"name.original", "value":{ "string_value":"tara" } } } }, "source":"agent", "resolved_query":"tara", "score":1, "action":"input.welcome", "fulfillment":{ "messages":{ "lang":"en", "speech":{ "string_value":"" }, "type":{ "number_value":0 } }, "speech":"Can I have your name?" }, "parameters":{ "fields":{ "key":"name", "value":{ "string_value":"Tara" } } }, "metadata":{ "webhook_for_slot_filling_used":false, "is_fallback_intent":false, "intent_id":"d06d9b61-eee2-4481-a038-bc97194d611a", "intent_name":"Default Welcome Intent", "webhook_used":false } }, "id":"896b6d41-fe8b-4123-ba68-07004435db42-aabf4fdf", "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804" }, "session_id":"9b86412b-ec2d-39c0-7cbc-7a44a74a8804" } ] } ]; var output = []; for (let key in input) { var result = { session_id: input[key].session_id, timestamp: input[key].timestamp, Thread: [] }; for (let th of input[key].Thread) result.Thread.push({ labels: th.labels, speech: th.textPayload.result.fulfillment.speech, timestamp: th.textPayload.timestamp, id: th.textPayload.id }); output.push(result); }; console.log(output);