매일 날씨 로봇
이것은Personal Productivity분야의자동화 워크플로우로, 9개의 노드를 포함합니다.주로 Set, Telegram, FormTrigger, HttpRequest, ScheduleTrigger 등의 노드를 사용하며. OpenWeatherMap을 통해 Telegram으로 일일 및 요청에 따른 날씨 보고서 전송
- •Telegram Bot Token
- •대상 API의 인증 정보가 필요할 수 있음
카테고리
{
"id": "EtMbMlSmiCmshLlm",
"meta": {
"instanceId": "00137a678c70b895ffbf480dac6a13dc8f053e854d987464a615f9ea30d97eee",
"templateCredsSetupCompleted": true
},
"name": "Daily Weather Bot",
"tags": [],
"nodes": [
{
"id": "d5d3309c-a736-4244-8973-ee8bb4df9e5e",
"name": "메모3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-20,
-100
],
"parameters": {
"width": 460,
"height": 140,
"content": "## Schedule Trigger (08:00 AM daily)\n ⮕ HTTP Request (OpenWeatherMap)\n ⮕ Set (Format message with weather + atmosphere + IST)\n ⮕ Telegram "
},
"typeVersion": 1
},
{
"id": "75c18662-b969-4f48-8a05-1429c2f81567",
"name": "Get Weather Data",
"type": "n8n-nodes-base.httpRequest",
"position": [
20,
340
],
"parameters": {
"url": "=https://api.openweathermap.org/data/2.5/weather?q={{ $json['City Name'] }},{{ $json['Country Name'] }}&APPID=key&units=metric",
"options": {}
},
"typeVersion": 4.2
},
{
"id": "3b84cd51-bf28-4a3d-af86-f2acbe1bf097",
"name": "Format Weather Message",
"type": "n8n-nodes-base.set",
"position": [
240,
340
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "bb388fef-4f43-468e-bdb2-1a65c40f5194",
"name": "message",
"type": "string",
"value": "={{ \n (() => {\n const desc = $json.weather[0].description;\n const temp = $json.main.temp;\n const hum = $json.main.humidity;\n const pres = $json.main.pressure;\n const wind = $json.wind.speed;\n const city = $json.name;\n const country = $json.sys.country;\n\n // Convert UNIX timestamps to IST (Asia/Kolkata)\n const sunrise = new Date($json.sys.sunrise * 1000).toLocaleTimeString('en-IN', { timeZone: 'Asia/Kolkata' });\n const sunset = new Date($json.sys.sunset * 1000).toLocaleTimeString('en-IN', { timeZone: 'Asia/Kolkata' });\n\n // Format current date in IST\n const now = new Date();\n const dateStr = now.toLocaleDateString('en-IN', {\n weekday: 'long', year: 'numeric', month: 'long', day: 'numeric',\n timeZone: 'Asia/Kolkata'\n });\n\n return `📅 ${dateStr}\n🌤 Weather in ${city}, ${country}:\nCondition: ${desc}\nTemperature: ${temp}°C\n💧 Humidity: ${hum}%\n🌬 Wind Speed: ${wind} m/s\n🔼 Pressure: ${pres} hPa\n🌅 Sunrise: ${sunrise}\n🌇 Sunset: ${sunset}`;\n })()\n}}\n"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "c601e86a-28d1-4cc1-b643-ca95e14573b2",
"name": "Send Telegram Message",
"type": "n8n-nodes-base.telegram",
"position": [
460,
340
],
"webhookId": "7285e616-e38d-4b2a-bb06-3cbbe1a65fb6",
"parameters": {
"text": "={{ $json.message }}",
"chatId": "telegramChatId",
"additionalFields": {
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"id": "NuFto4S6tg5Lkuvu",
"name": "abhi today"
}
},
"typeVersion": 1.2
},
{
"id": "ebf95ad7-5156-4032-87a4-11e85eb0c582",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
-220,
220
],
"webhookId": "9f30d988-032d-41cc-993c-600414c5f5b3",
"parameters": {
"options": {},
"formTitle": "Daily Weather Bot",
"formFields": {
"values": [
{
"fieldLabel": "City Name"
},
{
"fieldLabel": "Country Name"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "2d425b50-6bfc-433d-8baf-172384bd3181",
"name": "메모2",
"type": "n8n-nodes-base.stickyNote",
"position": [
380,
720
],
"parameters": {
"height": 120,
"content": "## Telegram Output\n-Bot Setting"
},
"typeVersion": 1
},
{
"id": "3108b92c-6f97-4fee-b4bb-7140b2419f5d",
"name": "메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
20,
720
],
"parameters": {
"width": 150,
"height": 260,
"content": "## api calling \nopenweathermap"
},
"typeVersion": 1
},
{
"id": "a7031c56-09ac-4d05-95fa-9ff7d82a6314",
"name": "메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-380,
720
],
"parameters": {
"width": 200,
"height": 260,
"content": "## Daily Schudule \nTrigger Mode: Every Day\n\nTime:\nHour: 08\nMinute: 00\n\nThis means the workflow will run once per day at 08:00 AM."
},
"typeVersion": 1
},
{
"id": "a757108c-961a-4cd2-8fa4-e583c26120ea",
"name": "일정 트리거",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-220,
460
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 8
}
]
}
},
"typeVersion": 1.2
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "bb82186d-3706-43b7-b69c-1a526777461d",
"connections": {
"75c18662-b969-4f48-8a05-1429c2f81567": {
"main": [
[
{
"node": "3b84cd51-bf28-4a3d-af86-f2acbe1bf097",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "75c18662-b969-4f48-8a05-1429c2f81567",
"type": "main",
"index": 0
}
]
]
},
"ebf95ad7-5156-4032-87a4-11e85eb0c582": {
"main": [
[
{
"node": "75c18662-b969-4f48-8a05-1429c2f81567",
"type": "main",
"index": 0
}
]
]
},
"3b84cd51-bf28-4a3d-af86-f2acbe1bf097": {
"main": [
[
{
"node": "c601e86a-28d1-4cc1-b643-ca95e14573b2",
"type": "main",
"index": 0
}
]
]
}
}
}이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
중급 - 개인 생산성
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
Abhishek Patoliya
@abhishekpatoliyaExperienced n8n developer specializing in business process automation and system integrations. I've helped dozens of companies automate their workflows, from CRM synchronization to marketing automation pipelines. Whether you need a simple trigger-based workflow or a complex multi-branch automation, I can bring your ideas to life.
이 워크플로우 공유