Yes, that is possible. You’ll need an aggregator to convert the bundles into an array, before you can use an Iterator module to sort and split them back up into bundles:
View Module Export Code
JSON
{
"subflows": [
{
"flow": [
{
"id": 1,
"module": "json:ParseJSON",
"version": 1,
"parameters": {
"type": ""
},
"mapper": {
"json": "[\n {\n \"id\": \"b37b0360-a747-4719-8218-54cc3bcb71f0\",\n \"source\": \"API/Embed\",\n \"sessionId\": \"b37b0360-a747-4719-8218-54cc3bcb71f0\",\n \"memoryType\": \"Buffer Window Memory\",\n \"email\": \"\",\n \"messages\": [\n {\n \"content\": \"Aupi\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:36:18.916Z\"\n },\n {\n \"content\": \"Hello! How can I assist you today?\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:36:19.803Z\"\n },\n {\n \"content\": \"que tal lo llevas?\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:36:23.489Z\"\n },\n {\n \"content\": \"¡Estoy aquí y listo para ayudarte! ¿En qué puedo asistirte hoy?\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:36:24.970Z\"\n },\n {\n \"content\": \"me puedes dar la prevision del tiempo para este fin de semana en Erandio?\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:36:41.723Z\"\n },\n {\n \"content\": \"Aquí tienes la previsión del tiempo para este fin de semana en Erandio:\\n\\n**Sábado:**\\n- **Temperatura:** 19°C (67°F)\\n- **Precipitación:** 40%\\n- **Humedad:** 73%\\n- **Viento:** 18 km/h (11 mph)\\n- **Clima:** Chubascos dispersos\\n\\nSi necesitas más detalles o la previsión para el domingo, házmelo saber.\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:36:47.255Z\",\n \"usedTools\": [\n {\n \"tool\": \"search\",\n \"toolInput\": {\n \"input\": \"previsión del tiempo para este fin de semana en Erandio\"\n },\n \"toolOutput\": \"{\\\"type\\\":\\\"weather_result\\\",\\\"temperature\\\":\\\"67\\\",\\\"unit\\\":\\\"Fahrenheit\\\",\\\"precipitation\\\":\\\"40%\\\",\\\"humidity\\\":\\\"73%\\\",\\\"wind\\\":\\\"11 mph\\\",\\\"location\\\":\\\"Erandio, Spain\\\",\\\"date\\\":\\\"Saturday\\\",\\\"weather\\\":\\\"Scattered showers\\\"}\"\n }\n ],\n \"feedback\": \"Perfecto con la tool de Serp AI\"\n },\n {\n \"content\": \"Esta todo correcto, gracias\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:37:14.249Z\"\n },\n {\n \"content\": \"¡De nada! Si necesitas algo más, no dudes en decírmelo. ¡Que tengas un buen día!\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:37:15.384Z\"\n }\n ]\n },\n {\n \"id\": \"fb39accf-c648-4c36-8263-4dee58bd675e\",\n \"source\": \"API/Embed\",\n \"sessionId\": \"fb39accf-c648-4c36-8263-4dee58bd675e\",\n \"memoryType\": \"Buffer Window Memory\",\n \"email\": \"\",\n \"messages\": [\n {\n \"content\": \"Buenas de nuevo\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:35:31.895Z\"\n },\n {\n \"content\": \"¡Hola! ¿En qué puedo ayudarte hoy?\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:35:32.909Z\"\n },\n {\n \"content\": \"me puedes decir cuanto es 34545367 x 2435?\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:35:45.530Z\"\n },\n {\n \"content\": \"El resultado de \\\\( 34545367 \\\\times 2435 \\\\) es 84,117,968,645.\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:35:47.351Z\",\n \"usedTools\": [\n {\n \"tool\": \"calculator\",\n \"toolInput\": {\n \"input\": \"34545367 * 2435\"\n },\n \"toolOutput\": \"84117968645\"\n }\n ],\n \"feedback\": \"Buena respuesta con el tool\"\n },\n {\n \"content\": \"gracias\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:36:07.466Z\"\n },\n {\n \"content\": \"¡De nada! Si necesitas algo más, no dudes en decírmelo.\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:36:08.288Z\"\n }\n ]\n },\n {\n \"id\": \"da1db21e-c02d-47a8-bf6a-3d81e90b5a97\",\n \"source\": \"API/Embed\",\n \"sessionId\": \"da1db21e-c02d-47a8-bf6a-3d81e90b5a97\",\n \"memoryType\": \"Buffer Window Memory\",\n \"email\": \"\",\n \"messages\": [\n {\n \"content\": \"Hola\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:32:06.121Z\"\n },\n {\n \"content\": \"¡Hola! ¿En qué puedo ayudarte hoy?\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:32:07.097Z\"\n },\n {\n \"content\": \"que tal estas hoy?\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:32:12.871Z\"\n },\n {\n \"content\": \"¡Gracias por preguntar! Estoy aquí y listo para ayudarte. ¿En qué puedo asistirte hoy?\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:32:13.754Z\"\n },\n {\n \"content\": \"que tiempo va a hacer hoy en Erandio?\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:32:24.988Z\"\n },\n {\n \"content\": \"Actualmente, no tengo acceso a información en tiempo real, como el clima. Te recomendaría que consultes una aplicación de clima o un sitio web confiable para obtener la información más actualizada sobre el tiempo en Erandio. ¿Hay algo más en lo que pueda ayudarte?\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:32:26.168Z\",\n \"feedback\": \"La respuesta no ha sido correcta del todo\"\n },\n {\n \"content\": \"de momento no, muchas gracias\",\n \"role\": \"user\",\n \"time\": \"2024-05-31T05:32:37.416Z\"\n },\n {\n \"content\": \"¡De nada! Si necesitas ayuda en el futuro, no dudes en preguntar. ¡Que tengas un buen día!\",\n \"role\": \"bot\",\n \"time\": \"2024-05-31T05:32:38.649Z\",\n \"feedback\": \"\"\n }\n ]\n }\n ]"
},
"metadata": {
"designer": {
"x": 0,
"y": 150
},
"restore": {
"parameters": {
"type": {
"label": "Choose a data structure"
}
}
},
"parameters": [
{
"name": "type",
"type": "udt",
"label": "Data structure"
}
],
"expect": [
{
"name": "json",
"type": "text",
"label": "JSON string",
"required": true
}
]
}
},
{
"id": 11,
"module": "builtin:BasicAggregator",
"version": 1,
"parameters": {
"feeder": 1
},
"mapper": {
"id": "{{1.id}}",
"source": "{{1.source}}",
"sessionId": "{{1.sessionId}}",
"memoryType": "{{1.memoryType}}",
"email": "{{1.email}}",
"messages": "{{1.messages}}"
},
"metadata": {
"designer": {
"x": 300,
"y": 150
},
"restore": {
"extra": {
"feeder": {
"label": "JSON - Parse JSON [1]"
},
"target": {
"label": "Custom"
}
}
}
}
},
{
"id": 12,
"module": "builtin:BasicFeeder",
"version": 1,
"parameters": {},
"mapper": {
"array": "{{sort(11.array; \"asc\"; \"messages.1.time\")}}"
},
"metadata": {
"designer": {
"x": 600,
"y": 150
},
"restore": {
"expect": {
"array": {
"mode": "edit"
}
}
},
"expect": [
{
"name": "array",
"type": "array",
"label": "Array",
"mode": "edit",
"spec": []
}
]
}
}
]
}
],
"metadata": {
"version": 1
}
}