8
n8n 中文网amn8n.com

MS_CURRENCY

中级

这是一个Crypto Trading领域的自动化工作流,包含 9 个节点。主要使用 Set, Code, Telegram, HttpRequest, ScheduleTrigger 等节点。 使用汇率 API 定时更新汇率到 Telegram

前置要求
  • Telegram Bot Token
  • 可能需要目标 API 的认证凭证
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "id": "8647Dl470mxxSj2Q",
  "meta": {
    "instanceId": "c92a0c76586da37fb3ac600956b62e842bfa4bd5f52acc7feb4e8a6e75ca1381",
    "templateCredsSetupCompleted": true
  },
  "name": "MS_CURRENCY",
  "tags": [],
  "nodes": [
    {
      "id": "8a30ec34-036d-4b20-b434-1e2d6cd27c98",
      "name": "计划触发器",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -360,
        0
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes",
              "minutesInterval": 15
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7082fdcf-2877-4f36-b90a-2178ca1505a4",
      "name": "报告:准备",
      "type": "n8n-nodes-base.code",
      "position": [
        560,
        0
      ],
      "parameters": {
        "jsCode": "// Input: JSON from exchangerate-api.com\nconst data = $json;\nconst baseCode = data.base_code; // e.g., 'EGP'\nconst rates = data.rates;\nconst lastUpdate = new Date(data.time_last_update_utc).toLocaleDateString('en-US', {\n  month: 'short', day: 'numeric', hour: 'numeric', minute: '2-digit', hour12: true\n});\n\n// 🎯 Choose which currencies you want to see in the report!\nconst targets = [\n  { code: 'USD', emoji: '🇺🇸' },\n  { code: 'EUR', emoji: '🇪🇺' },\n  { code: 'GBP', emoji: '🇬🇧' },\n  { code: 'SAR', emoji: '🇸🇦' },\n  { code: 'AED', emoji: '🇦🇪' },\n];\n\n// ✍️ Build the report message for Telegram\nlet report = `<b>💱 Currency Exchange Rates</b>\\n\\n`;\n\nfor (const target of targets) {\n  const rate = rates[target.code];\n  if (rate) {\n    // Calculate 1 of the target currency = ? of the base currency\n    const inverseRate = (1 / rate).toFixed(2);\n    report += `${target.emoji} 1 ${target.code} = <b>${inverseRate} ${baseCode}</b>\\n`;\n  }\n}\n\nreport += `\\n<i>Last updated: ${lastUpdate}</i>`;\n\n// ✅ Return the text for the next node\nreturn [{\n  json: {\n    telegram_text: report\n  }\n}];"
      },
      "typeVersion": 2
    },
    {
      "id": "a6a78262-ed4e-4ecd-8fc9-7815548d1838",
      "name": "发送文本消息",
      "type": "n8n-nodes-base.telegram",
      "position": [
        880,
        0
      ],
      "webhookId": "6cad3897-95a7-4b25-8fcb-d1c6aac04aa2",
      "parameters": {
        "text": "={{ $json.telegram_text }}",
        "chatId": "={{ $('Set Currency').item.json.telegram_chat_id }}",
        "additionalFields": {
          "parse_mode": "HTML",
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "OymlVCuTPYhVa2B9",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "0cbfe028-2702-48fa-9370-a7e218e4aa79",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -140,
        -80
      ],
      "parameters": {
        "color": 5,
        "width": 220,
        "height": 240,
        "content": "## 设置输入"
      },
      "typeVersion": 1
    },
    {
      "id": "7a41155a-e736-405e-bb18-3203fdcdf3dd",
      "name": "便签3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        -80
      ],
      "parameters": {
        "color": 3,
        "width": 220,
        "height": 240,
        "content": "## 报告"
      },
      "typeVersion": 1
    },
    {
      "id": "b9bcc84e-b758-4309-b160-1d7d435e86ca",
      "name": "便签4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        820,
        -80
      ],
      "parameters": {
        "color": 6,
        "width": 220,
        "height": 240,
        "content": "## 发送"
      },
      "typeVersion": 1
    },
    {
      "id": "b8c88e6d-7a4c-417b-a4e8-1533ebab27b5",
      "name": "转换货币",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        240,
        0
      ],
      "parameters": {
        "url": "=https://open.er-api.com/v6/latest/{{ $json.currency }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "1506df90-1c50-4744-b776-ff99e2b0d958",
      "name": "便签6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        180,
        -80
      ],
      "parameters": {
        "color": 3,
        "width": 220,
        "height": 240,
        "content": "## 货币"
      },
      "typeVersion": 1
    },
    {
      "id": "c90ab53c-8d8a-41b5-86e8-5136e81e6d96",
      "name": "设置货币",
      "type": "n8n-nodes-base.set",
      "position": [
        -80,
        0
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "b9f4869a-2059-4b09-84e3-26c7d1e95d30",
              "name": "currency",
              "type": "string",
              "value": "=EGP"
            },
            {
              "id": "593d886f-6c7b-4338-a057-46f2c57a041e",
              "name": "to_currencies",
              "type": "string",
              "value": "=USD,AED,SAR"
            },
            {
              "id": "c58b12b1-b70b-451e-b519-ffb4602c2c9d",
              "name": "telegram_chat_id",
              "type": "string",
              "value": "={{ $env.telegram_chat_id }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "ad78b7b5-198f-4eb5-a835-939461b99d94",
  "connections": {
    "Set Currency": {
      "main": [
        [
          {
            "node": "Convert Currency",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Report: Prepare": {
      "main": [
        [
          {
            "node": "Send a text message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Currency": {
      "main": [
        [
          {
            "node": "Report: Prepare",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Set Currency",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

中级 - 加密货币交易

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
中级
节点数量9
分类1
节点类型6
难度说明

适合有一定经验的用户,包含 6-15 个节点的中等复杂度工作流

外部链接
在 n8n.io 查看

分享此工作流