{
  "id": "A97E7YWDFrFl5S1k",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "PersonalNotesAssistant",
  "tags": [],
  "nodes": [
    {
      "id": "7871183c-2248-4bb0-a12e-99d5292483bb",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        0,
        280
      ],
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {
          "download": true
        }
      },
      "credentials": {
        "telegramApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "eeec87eb-f23d-45a6-b053-a5667189a695",
      "name": "Get Voice File",
      "type": "n8n-nodes-base.telegram",
      "position": [
        660,
        380
      ],
      "parameters": {
        "fileId": "={{ $json.message.voice.file_id }}",
        "resource": "file"
      },
      "credentials": {
        "telegramApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "08a2ade9-f7c7-44b5-acfa-463e8f0a3e0e",
      "name": "Basic LLM Chain",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1100,
        -120
      ],
      "parameters": {
        "text": "=You are my personal assistant that helps me note my ideas. Summarize in bullet points this text to be saved in my notes and do not invent anything (give me no introduction or explanation, just the bullet points with the summary): \n'{{ $json.message.text }}'.",
        "batching": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "dc84d96d-5b4e-44c6-932f-5fa2ef5cfe99",
      "name": "Ollama Model",
      "type": "@n8n/n8n-nodes-langchain.lmOllama",
      "position": [
        1188,
        100
      ],
      "parameters": {
        "model": "llama3.2:1b",
        "options": {}
      },
      "credentials": {
        "ollamaApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b969e8f8-d467-47e3-8c31-894d67ddd3b7",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        440,
        180
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "text",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "a2d6691c-beed-44d8-a67f-be43b28155df",
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.message.text }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "voice",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "6ce5f222-d555-470b-862d-e132b9a5fb72",
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.message.voice.file_id }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "aecff81f-1688-4aa5-9405-d474d2041a27",
      "name": "Basic LLM Chain1",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1100,
        380
      ],
      "parameters": {
        "text": "=You are my personal assistant that helps me note my ideas. Summarize in bullet points this text to be saved in my notes and do not invent anything (give me no introduction or explanation, just the bullet points with the summary): \n{{ $json.data }}",
        "batching": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "0e49f038-14e0-4f06-85e8-1fec21a2cca6",
      "name": "Ollama Model1",
      "type": "@n8n/n8n-nodes-langchain.lmOllama",
      "position": [
        1188,
        600
      ],
      "parameters": {
        "model": "llama3.2:1b",
        "options": {}
      },
      "credentials": {
        "ollamaApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "fbefcf9b-6af5-4a4b-8bed-878e9a4c0b82",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        220,
        280
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "d2e36e10-3ffc-47ab-bf1a-3c9639b0106a",
              "operator": {
                "type": "number",
                "operation": "equals"
              },
              "leftValue": "={{ $json.message.from.id }}",
              "rightValue": 1460980649
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "3e95c679-b0dd-41bc-861e-e3c11e2be99f",
      "name": "Send a text message",
      "type": "n8n-nodes-base.telegram",
      "position": [
        440,
        380
      ],
      "parameters": {
        "text": "I am sorry, you have no access to my services.",
        "chatId": "={{ json.message.from.id }}",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "92fa3ec1-9b9b-49f1-90fb-a825d20f4f68",
      "name": "HTTP Request",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        880,
        380
      ],
      "parameters": {
        "url": "http://localhost:9000/asr",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "bodyParameters": {
          "parameters": [
            {
              "name": "audio_file",
              "parameterType": "formBinaryData",
              "inputDataFieldName": "data"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "c2abe1ff-805c-443b-af79-f408bd495417",
      "name": "Send a text message1",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1476,
        180
      ],
      "parameters": {
        "text": "={{ $json.text }}",
        "chatId": "telegramChatId",
        "additionalFields": {
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "29aa8c0b-37db-4f27-ac7a-175687529cab",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        100
      ],
      "parameters": {
        "content": "## Telegram Trigger\nStart automation when receiving a Telegram message"
      },
      "typeVersion": 1
    },
    {
      "id": "2f92b3be-f888-41ac-87de-83e8118326f8",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        140,
        440
      ],
      "parameters": {
        "content": "## If\nDetect if message comes from admited user"
      },
      "typeVersion": 1
    },
    {
      "id": "d7e1d568-d28d-49ce-abf2-7e20612d8a92",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        480,
        -40
      ],
      "parameters": {
        "content": "## Switch\nCheck if message is a text or audio message"
      },
      "typeVersion": 1
    },
    {
      "id": "b183602b-0a0c-4a2d-9a80-97944b825fe3",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        780,
        560
      ],
      "parameters": {
        "content": "## Transcription\nTranscribe audio locally with Whisper API"
      },
      "typeVersion": 1
    },
    {
      "id": "962f8b82-b2fc-4fd5-8e09-639bacbcbcec",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        200
      ],
      "parameters": {
        "content": "## AI Agent\nGenerate answer from AI Agent"
      },
      "typeVersion": 1
    },
    {
      "id": "e6caefea-909f-4db1-970b-365faafdbc31",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1500,
        -20
      ],
      "parameters": {
        "content": "## Telegram \nSend response with elaborated note to the user"
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "settings": {
    "callerPolicy": "workflowsFromSameOwner",
    "executionOrder": "v1"
  },
  "versionId": "bdd5e15f-5374-4329-b45d-b1683d01f454",
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send a text message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Basic LLM Chain",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Get Voice File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request": {
      "main": [
        [
          {
            "node": "Basic LLM Chain1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Ollama Model": {
      "ai_languageModel": [
        [
          {
            "node": "Basic LLM Chain",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Ollama Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Basic LLM Chain1",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Get Voice File": {
      "main": [
        [
          {
            "node": "HTTP Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Basic LLM Chain": {
      "main": [
        [
          {
            "node": "Send a text message1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Basic LLM Chain1": {
      "main": [
        [
          {
            "node": "Send a text message1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}