מעבדת n8n – תרחיש שימוש בטריגר Form

תוכן עניינים

בתרגול זה נבנה Workflow הממנף את היכולת החדשה והעוצמתית של n8n Forms. אנו ניצור טופס אינטראקטיבי לקליטת לידים (Leads) אשר יפעיל תהליך אוטומטי ברגע שליחתו.

 

ה-Workflow שנבנה יתפצל לשני ענפים מרכזיים שירוצו במקביל:
 

  • בענף אחד, נשתמש בבלוק AI Agent כדי לנתח את פרטי הלקוח, לייצר עבורו מייל קבלת פנים חם ומותאם אישית, ולשלוח לו אותו אוטומטית דרך Gmail.
  • בענף השני, נשתמש בבלוק AI Agent נוסף כדי לחלץ נתונים מובנים מהטקסט החופשי שהוזן בטופס, ונדחוף את הנתונים המעובדים האלה ישירות ל-Google Sheets המשמש כ-DB פשוט.

 

תרגול זה מנוסח ברמת פירוט המתאימה ללומדים שכבר מכירים את יסודות n8n, ומעוניינים ללמוד כיצד לשלב טפסים, בינה מלאכותית ופיצול ענפים ליצירת אוטומציות עסקיות חכמות.

 
שימו לב – תרגול זה מובנה מאוד והוא מהווה בסיס למחקר וללימוד דרך ״לכלוך הידיים״ בהמשך הדרך. חשוב להכיר את החלקים השונים בתרגול ובמערכת. עם זאת – בכל פרק וסעיף, הרגישו חופשי לחקור יותר לעומק ולסקור גם מושגים שונים ואפשרויות שונות שלא הוזכרו במפורש. נתקעתם? לא נורא – חזרו להוראות המקוריות, ותמיד אפשר להתחיל פרויקט חדש ונקי, ולהתנסות מראש הפרק הנוכחי.
 
בהצלחה!


פרק 1: בניית הטריגר – n8n Form

בפרק זה ניצור את טופס ה-Web שישמש כנקודת הכניסה ל-Workflow שלנו.

 

  1. הוספת טריגר n8n Form:
     

    • פתחו Workflow חדש ובחרו בטריגר מסוג n8n Form.
    • זהו הטריגר שיציג למשתמש ממשק Web למילוי פרטים, ויחזיק את ה-Workflow בהמתנה עד לשליחת הטופס (Submit).
  2. הגדרת שדות הטופס:
     

    • בשדה Form title, תנו לטופס שם [My Company] Customer Onboarding. החליפו את [My Company] בשם העסק שלכם.
    • בתוך הגדרות הטריגר, תחת "Form Elements", הוסיפו את השדות הבאים (הוספת שדה מתבצעת ע״י לחיצה על "Add Form Element"). הקפידו על שמות השדות (Name) כפי שהם כתובים, הם ישמשו אותנו בהמשך להזרקת הנתונים:
       

      Field Name Element Type Required (yes / no)
      Name Text yes
      Email Email yes
      Company Industry Text yes
      What are you hoping to achieve through our partnership in the next three months? Text Area yes
      Anything else we should know? Text Area no

       

  3. בדיקה ראשונית:
     

    • שמרו והפעילו את ה-Workflow (לחיצה על Execute workflow, או מתוך חלון הגדרות הבלוק – Execute Step).
    • ייפתח פופאפ של טופס מילוי הפרטים. מלאו פרטים לדוגמא ולחצו Submit לשליחת הטופס.
    • היכנסו שוב להגדרות הבלוק, ושימו לב לפלט שהתקבל באזור ה Output.
    • שימו לב: על מנת שה Workflow יאזין בשוטף להודעות נכנסות – יש לשמור אותו, ולהעביר אותו למצב Active. בשלב זה אין צורך לעשות זאת, ונוכל להריץ בדיקות נקודתיות ע״י הרצה חד פעמית של התהליך, ומילוי הפרטים.

פרק 2: ענף 1 – מייל קבלת פנים מבוסס AI

ב Workflow שלנו, הביצוע מתחיל במילוי הטופס וממשיך בשני ענפים במקביל. ענף אחד מטפל בשליחת מייל ״קבלת פנים״ ללקוח, והענף השני מטפל בשמירת פרטי הלקוח ב DB ושיבוצו בתהליכים פנימיים.
 
בענף הראשון, ניקח את הנתונים הגולמיים מהטופס ונשתמש ב-AI כדי לייצר מייל מותאם אישית ללקוח.

 

  1. הוספת בלוק AI Agent:
     

    • הוסיפו בלוק AI Agent וחברו אותו ליציאה של טריגר ה-Form.
    • בחרו במודל gpt-4.1-mini (או מודל זמין דומה).
    • הגדירו את מקור הפרומפט (Source for Prompt) ל-Define Below.
  2. הגדרת הפרומפט לייצור המייל:
     

    • הזינו את הפרומפט הבא בשדה ה Prompt (User Message), והקפידו לשבץ את הנתונים המתאימים מתוך פלט בלוק הטופס במקומות היעודיים (כרגע מופיעים כביטויים דינמיים בשמות זמניים):
       

      
      Create a warm welcome email for a new client based on their information. We want the email to be concise and friendly, but also professional. It should be personalized to them based on their industry and what they are hoping to get out of our partnership. Here is information about the client:
      
      Name: {{ $json.Name }}
      Email: {{ $json.Email }}
      Company Industry: {{ $json['Company Industry'] }}
      Hoping to achieve: {{ $json['What are you hoping to achieve through our partnership in the next three months?'] }}
      More things the client would like to share: {{ $json['Anything else we should know?'] }}
      
      ---
      Make sure to always sign off the email from "John Doe" the company is "Almaya - Learning Ai" and his position is "VP of Internal Relations". Don't throw in variables for the sign off if information is unknown, we don't ever want [Your Name], or [Your Contact Information], etc.
      
      Output this information into 3 separate fields:
      
      Subject: The email's subject
      Body: The email's body
      Email: {{ $json.Email }}
      
  3. הגדרת Output Parser:
     

    • כדי לקבל את הפלט בפורמט JSON נקי, הפעילו את האפשרות Require Specific Output Format והוסיפו Output Parser מסוג Structured Output Parser.
    • בשדה ה-JSON, תנו דוגמא למבנה נתונים רצוי, בן 3 השדות: subject (String), body (String), email (String).
    • הריצו בדיקה לבלוק (Execute Step) וודאו שאתם מקבלים אובייקט JSON תקין עם נושא, גוף, וכתובת המייל של הלקוח.
       

  4. שליחת המייל עם Gmail:
     

    • הוסיפו בלוק Gmail וחברו אותו ליציאה של בלוק ה-AI Agent. הגדירו Credentials לפי הצורך.
    • הגדירו אותו לפעולת Send Message.
    • בשדה To, השתמשו בביטוי (Expression) כדי למשוך את שדה האימייל מפלט בלוק הסוכן: {{ $json.Email }}.
    • בשדה Subject, משכו את שדה הנושא: {{ $json.Subject }}.
    • בשדה Body (או HTML), משכו את גוף המייל: {{ $json.Body }}.
    • הריצו את ה-Workflow כולו (על ידי שליחת טופס חדש) וודאו שקיבלתם מייל מותאם אישית לתיבת הדואר שלכם.
    • דייקו הוראות מערכת בהתאם לנוסח המדויק שתרצו להעביר במייל קבלת הפנים ללקוח.

פרק 3: ענף 2 – חילוץ נתונים ושמירה ב-DB

במקביל לשליחת המייל, אנו רוצים לנתח את פניית הלקוח ולשמור אותה בצורה מובנית ב-Google Sheets.

 

  1. הוספת ענף חדש עם AI Agent:
     

    • חזרו לטריגר ה-Form. הוסיפו בלוק AI Agent חדש וחברו גם אותו ישירות ליציאה של הטריגר (כך נוצר פיצול – שני בלוקים יוצאים מאותו טריגר).
    • מטרת הבלוק הזה היא לנתח את הטקסט החופשי מהטופס ולהפוך אותו לנתונים קטגוריים עבור ה-DB שלנו.
  2. הגדרת ה-Agent לחילוץ מידע (Data Extraction):
     

    • שוב, השתמשו במודל gpt-4.1-mini ובמצב Define Below.
    • הפעילו את Require Specific Output Format והגדירו Output Parser מסוג Structured Output Parser (JSON) עם השדות הבאים:
       

      • name (String)
      • email (String)
      • required_service ('dev' / 'education' / 'consulting' / 'partnership' / 'unknown')
      • important_notes (String)
    • בפרומפט, הנחו את המודל לנתח את הקלט ולהסיק את הנתונים. משכו את השדות המתאימים מפלט בלוק הטריגר:
    • 
      Analyze the following client information and extract the data into the required JSON format.
      
      Client Data:
      Name: {{ $json.Name }}
      Email: {{ $json.Email }}
      Industry: {{ $json['Company Industry'] }}
      Goal: {{ $json['What are you hoping to achieve through our partnership in the next three months?'] }}
      Other notes: {{ $json['Anything else we should know?'] }}
      
      Your task is to populate the following fields:
      1. Name: The client's full name.
      2. email: The client's email address.
      3. required_service: Analyze the 'Goal' and 'Other notes' to determine the most likely service required. Choose one from: 'dev', 'education', 'consulting', 'partnership'. If it's unclear, use 'unknown'.
      4. important_notes: Summarize any critical points, goals, or concerns mentioned by the client in 1-2 sentences.
      

       

  3. הוספת בלוק Google Sheets:
     

    • צרו קובץ Google Sheets חדש בחשבון ה-Google Drive שלכם. בטאב הראשון (נקרא לו Leads), צרו את הכותרות הבאות בשורה 1: Name, Email, Service, Notes.
    • הוסיפו בלוק Google Sheets ל-Workflow וחברו אותו ליציאה של ה-AI Agent השני.
    • הגדירו אותו לפעולת Append or update row in a sheet ובחרו את הגיליון והטאב שיצרתם.
    • בצעו מיפוי (Mapping) בין הפלט של ה-AI Agent לבין העמודות בטבלה:
       

      • Name <– {{ $json.Name }}
      • Email <– {{ $json.email }}
      • Service <– {{ $json.required_service }}
      • Notes <– {{ $json.important_notes }}

       

  4. בדיקה סופית (End-to-End):
     

    • שמרו והפעילו את ה-Workflow.
    • מלאו שוב את הטופס עם נתונים חדשים.
    • וודאו ששני הענפים פועלים כמצופה: בדקו שקיבלתם מייל חדש, ובו זמנית, רעננו את קובץ ה-Google Sheets וודאו ששורה חדשה ומנותחת נוספה אליו.

     


פרק 4: תרגול פתוח

כעת, נסו להרחיב את ה-Workflow שבניתם עם רעיונות נוספים:

 

  1. שיפור חווית הטופס:
     

    • חקרו את האפשרויות הנוספות בטריגר n8n Form.
    • נסו להוסיף אלמנט Headline בתחילת הטופס, Separator להפרדה בין חלקים, ואולי אפילו שדה מסוג Select עבור התעשייה (Company Industry) במקום שדה טקסט פתוח.
  2. הוספת לוגיקה מותנית (IF):
     

    • הוסיפו בלוק IF אחרי ה-AI Agent השני (זה ששומר ל-Sheets).
    • בדקו את השדה required_service.
    • אם השירות הוא 'partnership', הוסיפו ענף ששולח הודעה מיידית ל-Telegram או Whatsapp.
    • אם השירות הוא 'education', צרו ענף שיוצר משימה חדשה ב-Asana / ClickUp עבור מחלקת ההדרכה.
  3. טיפול בשגיאות (Error Handling):
     

    • מה קורה אם בלוק ה-Gmail נכשל (למשל, כתובת המייל שהוזנה שגויה)?
    • הוסיפו ענף שגיאה (Error Workflow / On-Error) לבלוק ה-Gmail, ששולח התראה פנימית לצוות שלכם על כך שהמייל ללקוח לא נשלח, יחד עם פרטי השגיאה.

סיכום:
בתרגול זה בנינו אוטומציה מקצה לקצה המופעלת על ידי טופס Web. ראינו כיצד להשתמש ב-n8n Form כדי לקלוט מידע, כיצד לפצל את ה-Workflow לענפים מקבילים, וכיצד למנף בינה מלאכותית הן ליצירת תוכן מותאם אישית (מייל) והן לחילוץ ועיבוד נתונים (Data Extraction) לשמירה ב-DB.