رسائل أعياد ميلاد تلقائية

يصل العملاء أو أعضاء الفريق بريد تهنئة دافئ في يوم ميلادهم.

سهل توفّر ~2 ساعة شهريًا التسويقبواسطة فريق Flowngn

تعمل مع n8n · Make · Zapier

كيف تعمل

المشغّل: جدول زمني — كل يوم الساعة 9:00
  1. اقرأ جدول جهات الاتصال (الاسم، البريد، تاريخ الميلاد).
  2. احتفظ بمن يوافق عيد ميلاده اليوم.
  3. أرسل لكل منهم بريد تهنئة شخصيًا.

المخطط

Every day 9:00Schedule TriggerGRead contactsGoogle Sheets{ }Birthdays todayCodeGSend birthday emailGmail
مشغّل تطبيق كود

الكود

كود JavaScript المستخدم في خطوات Code، وهو مضمَّن بالفعل في القالب بالأسفل.

Birthdays today · عقدة Code
// Contacts sheet columns: name | email | birthday (YYYY-MM-DD)
// Keeps people whose birthday (day + month) is today.
const today = new Date();
const mmdd = `${String(today.getMonth() + 1).padStart(2, "0")}-${String(today.getDate()).padStart(2, "0")}`;

return $input.all()
  .map((item) => item.json)
  .filter((p) => p.email && String(p.birthday).slice(5, 10) === mmdd)
  .map((p) => ({ json: { name: String(p.name).split(" ")[0], email: p.email } }));

ابنِها بأداتك

اختر أداتك — نفس الأتمتة، خطوة بخطوة.

انسخه والصقه مباشرة في مساحة عمل n8n (Ctrl+V)، أو حمّله واستخدم Import from File. بعد ذلك اربط حساباتك واستبدل كل قيمة تبدأ بـ YOUR_.

ملف Workflow JSON
عرض الكود (138 سطر)
{
  "name": "رسائل أعياد ميلاد تلقائية (Flowngn)",
  "nodes": [
    {
      "parameters": {
        "content": "## رسائل أعياد ميلاد تلقائية\nيصل العملاء أو أعضاء الفريق بريد تهنئة دافئ في يوم ميلادهم.\n\n**Setup**\n1. Open each node and connect your own credentials.\n2. Replace every YOUR_… placeholder.\n3. Test once, then activate.\n\nFree template from Flowngn",
        "height": 260,
        "width": 340
      },
      "id": "2c527cac-899b-4e84-aed5-20e53f8aab89",
      "name": "Setup notes",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -420,
        -60
      ]
    },
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "triggerAtHour": 9
            }
          ]
        }
      },
      "id": "2c527cac-899b-4e84-aed5-20e53f8aab89",
      "name": "Every day 9:00",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "position": [
        0,
        0
      ]
    },
    {
      "parameters": {
        "operation": "read",
        "documentId": {
          "__rl": true,
          "value": "YOUR_SPREADSHEET_ID",
          "mode": "id"
        },
        "sheetName": {
          "__rl": true,
          "value": "Contacts",
          "mode": "name"
        },
        "options": {}
      },
      "id": "2c527cac-899b-4e84-aed5-20e53f8aab89",
      "name": "Read contacts",
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.5,
      "position": [
        300,
        0
      ]
    },
    {
      "parameters": {
        "jsCode": "// Contacts sheet columns: name | email | birthday (YYYY-MM-DD)\n// Keeps people whose birthday (day + month) is today.\nconst today = new Date();\nconst mmdd = `${String(today.getMonth() + 1).padStart(2, \"0\")}-${String(today.getDate()).padStart(2, \"0\")}`;\n\nreturn $input.all()\n  .map((item) => item.json)\n  .filter((p) => p.email && String(p.birthday).slice(5, 10) === mmdd)\n  .map((p) => ({ json: { name: String(p.name).split(\" \")[0], email: p.email } }));"
      },
      "id": "2c527cac-899b-4e84-aed5-20e53f8aab89",
      "name": "Birthdays today",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        600,
        0
      ]
    },
    {
      "parameters": {
        "sendTo": "={{ $json.email }}",
        "subject": "=Happy birthday, {{ $json.name }}! 🎂",
        "emailType": "text",
        "message": "=Hi {{ $json.name }},\n\nEveryone at YOUR_BUSINESS wishes you a wonderful birthday! 🎉\n\nYOUR_NAME",
        "options": {
          "appendAttribution": false
        }
      },
      "id": "2c527cac-899b-4e84-aed5-20e53f8aab89",
      "name": "Send birthday email",
      "type": "n8n-nodes-base.gmail",
      "typeVersion": 2.1,
      "position": [
        900,
        0
      ]
    }
  ],
  "connections": {
    "Every day 9:00": {
      "main": [
        [
          {
            "node": "Read contacts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read contacts": {
      "main": [
        [
          {
            "node": "Birthdays today",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Birthdays today": {
      "main": [
        [
          {
            "node": "Send birthday email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": false
  },
  "tags": []
}

← افتحها في ساحة التجربة لتعديلها

نصائح

  • أضف كود خصم للعملاء في الرسالة — يشجع على الزيارات المتكررة.

أتمتات مشابهة