{
  "openruna_format": "flow-graph-v1",
  "title": "0903_Wait_Redis_Automate_Triggered",
  "slug": "0903-wait-redis-automate-triggered",
  "source_filename": "0903_Wait_Redis_Automate_Triggered.json",
  "nodes": [
    {
      "id": "When clicking ‘Test workflow’",
      "name": "When clicking ‘Test workflow’",
      "integration": "manual",
      "kind": "trigger"
    },
    {
      "id": "No Operation, do nothing1",
      "name": "No Operation, do nothing1",
      "integration": "noOp",
      "kind": "logic"
    },
    {
      "id": "Information Extractor",
      "name": "Information Extractor",
      "integration": "@n8n/n8n-nodes-langchain.informationExtractor",
      "kind": "action"
    },
    {
      "id": "OpenAI Chat Model",
      "name": "OpenAI Chat Model",
      "integration": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "kind": "action"
    },
    {
      "id": "get wait seconds",
      "name": "get wait seconds",
      "integration": "code",
      "kind": "logic"
    },
    {
      "id": "Set last_seen",
      "name": "Set last_seen",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Get waiting_reply",
      "name": "Get waiting_reply",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Mod input",
      "name": "Mod input",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "waiting_reply?",
      "name": "waiting_reply?",
      "integration": "if",
      "kind": "logic"
    },
    {
      "id": "When chat message received",
      "name": "When chat message received",
      "integration": "@n8n/n8n-nodes-langchain.chat",
      "kind": "trigger"
    },
    {
      "id": "Set waiting_reply",
      "name": "Set waiting_reply",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Get buffer",
      "name": "Get buffer",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Delete buffer_in",
      "name": "Delete buffer_in",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Delete waiting_reply",
      "name": "Delete waiting_reply",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "WaitSeconds",
      "name": "WaitSeconds",
      "integration": "wait",
      "kind": "logic"
    },
    {
      "id": "Buffer messages",
      "name": "Buffer messages",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Set buffer_count increment",
      "name": "Set buffer_count increment",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Get last_seen",
      "name": "Get last_seen",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Get buffer_count",
      "name": "Get buffer_count",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "Map ouput",
      "name": "Map ouput",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "Check Inactivity + Count",
      "name": "Check Inactivity + Count",
      "integration": "if",
      "kind": "logic"
    },
    {
      "id": "Delete waiting_reply1",
      "name": "Delete waiting_reply1",
      "integration": "redis",
      "kind": "action"
    },
    {
      "id": "No Operation, do nothing2",
      "name": "No Operation, do nothing2",
      "integration": "noOp",
      "kind": "logic"
    },
    {
      "id": "Wait",
      "name": "Wait",
      "integration": "wait",
      "kind": "logic"
    },
    {
      "id": "When Executed by Another Workflow",
      "name": "When Executed by Another Workflow",
      "integration": "executeWorkflow",
      "kind": "trigger"
    },
    {
      "id": "Mock input data",
      "name": "Mock input data",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "No Operation, do nothing3",
      "name": "No Operation, do nothing3",
      "integration": "noOp",
      "kind": "logic"
    }
  ],
  "edges": [
    {
      "from": "Wait",
      "to": "Check Inactivity + Count"
    },
    {
      "from": "Mod input",
      "to": "waiting_reply?"
    },
    {
      "from": "Get buffer",
      "to": "Information Extractor"
    },
    {
      "from": "WaitSeconds",
      "to": "Get last_seen"
    },
    {
      "from": "Get last_seen",
      "to": "Get buffer_count"
    },
    {
      "from": "Set last_seen",
      "to": "No Operation, do nothing2"
    },
    {
      "from": "waiting_reply?",
      "to": "No Operation, do nothing2"
    },
    {
      "from": "waiting_reply?",
      "to": "Set waiting_reply"
    },
    {
      "from": "Buffer messages",
      "to": "Set buffer_count increment"
    },
    {
      "from": "Buffer messages",
      "to": "Set last_seen"
    },
    {
      "from": "Buffer messages",
      "to": "Get waiting_reply"
    },
    {
      "from": "Mock input data",
      "to": "get wait seconds"
    },
    {
      "from": "Delete buffer_in",
      "to": "No Operation, do nothing3"
    },
    {
      "from": "Get buffer_count",
      "to": "Check Inactivity + Count"
    },
    {
      "from": "get wait seconds",
      "to": "Buffer messages"
    },
    {
      "from": "Get waiting_reply",
      "to": "Mod input"
    },
    {
      "from": "Set waiting_reply",
      "to": "WaitSeconds"
    },
    {
      "from": "Delete waiting_reply",
      "to": "No Operation, do nothing3"
    },
    {
      "from": "Delete waiting_reply1",
      "to": "No Operation, do nothing3"
    },
    {
      "from": "Information Extractor",
      "to": "Map ouput"
    },
    {
      "from": "Information Extractor",
      "to": "Delete buffer_in"
    },
    {
      "from": "Information Extractor",
      "to": "Delete waiting_reply"
    },
    {
      "from": "Information Extractor",
      "to": "Delete waiting_reply1"
    },
    {
      "from": "Check Inactivity + Count",
      "to": "Get buffer"
    },
    {
      "from": "Check Inactivity + Count",
      "to": "No Operation, do nothing1"
    },
    {
      "from": "No Operation, do nothing1",
      "to": "Wait"
    },
    {
      "from": "Set buffer_count increment",
      "to": "No Operation, do nothing2"
    },
    {
      "from": "When chat message received",
      "to": "Mock input data"
    },
    {
      "from": "When Executed by Another Workflow",
      "to": "get wait seconds"
    },
    {
      "from": "When clicking ‘Test workflow’",
      "to": "Mock input data"
    }
  ]
}