דלגו לתוכן
Wbiztool

אינטגרציות

אינטגרציה עם n8n

שלחו הודעות WhatsApp מתהליכי העבודה (workflows) שלכם ב-n8n. למשל, שלחו הודעה לליד חדש שמגיע מ-Webhook, אשרו הזמנה מהחנות שלכם, או שלחו התראה כשבדיקה נכשלת.

יש שתי דרכים להתחבר:

  • צומת הקהילה של Wbiztool (n8n-nodes-wbiztool): צמתים (nodes) מוכנים עם שדות לכל אפשרות.
  • הצומת המובנה HTTP Request: עובד בכל מופע n8n ונותן גישה לכל נקודות הקצה של ה-API. ראו שימוש בצומת HTTP Request.

לפני שמתחילים#

  • חשבון Wbiztool עם מספר WhatsApp מחובר בדף WhatsApp settings (הגדרות WhatsApp).
  • ה-Client ID (מזהה לקוח) וה-API key (מפתח API) שלכם מהדף Settings → API keys (הגדרות ← מפתחות API).
  • ה-WhatsApp Client ID (מזהה לקוח WhatsApp) של המספר שממנו תשלחו, שמוצג בדף WhatsApp settings.

התקנת צומת הקהילה#

  1. פתחו את צמתי הקהילה

    ב-n8n, עברו אל Settings → Community Nodes ולחצו על Install.

  2. הזינו את שם החבילה

    הזינו n8n-nodes-wbiztool, אשרו והתקינו. אם הצמתים לא מופיעים, הפעילו מחדש את n8n.

במופע באחסון עצמי (self-hosted) אפשר גם להתקין אותו עם npm בתיקיית הצמתים המותאמים (custom nodes) של n8n:

npm install n8n-nodes-wbiztool

יצירת פרטי הגישה (credential)#

הוסיפו credential חדש מסוג WbizTool API:

שדהערך
Client IDמזהה הלקוח שלכם ב-API (API Client ID).
API Keyמפתח ה-API שלכם.
WhatsApp Client IDמספר ברירת המחדל שממנו שולחים. ברוב הצמתים אפשר לדרוס אותו.
Base URLהשאירו את ברירת המחדל https://wbiztool.com/api/v1 (בלי לוכסן בסוף).

כשאתם שומרים, n8n בודק את פרטי הגישה מול בדיקת פרטי גישה.

צמתים#

החבילה מוסיפה את הצמתים האלה. כל צומת קורא לנקודת קצה של ה-API של Wbiztool ומחזיר כפלט את תגובת ה-API.

צומתמה הוא עושהAPI
WbizTool Send Messageשליחת טקסט, תמונה או קובץ למספר טלפון או לקבוצה.שליחת הודעה, שליחה לקבוצה
WbizTool Send Group Messageשליחת הודעה לקבוצת WhatsApp לפי שם.שליחה לקבוצה
WbizTool Send Multi Messageשליחת אותה הודעה לרשימת מספרים מופרדת בפסיקים.שליחה למספר נמענים
WbizTool Schedule Messageתזמון הודעה לתאריך ושעה. ראו את האזהרה בהמשך.תזמון הודעה
WbizTool Cancel Messageביטול הודעה מתוזמנת לפי מזהה ההודעה.ביטול הודעה
WbizTool Message Statusקבלת הסטטוס של הודעה לפי מזהה ההודעה. רק הודעה במצב Sent מחזירה פריט. הודעה שבתור, שנכשלה, שבוטלה או שפג תוקפה עוצרת את הצומת עם שגיאה כמו Created או Failed; הפעילו את Continue On Fail כדי ליצור הסתעפות לפי התוצאה.סטטוס הודעה
WbizTool Check Credentialsבדיקה שמזהה הלקוח ומפתח ה-API שלכם עובדים.בדיקת פרטי גישה
WbizTool List WhatsApp Clientsהצגת רשימת מספרי ה-WhatsApp בסביבת העבודה שלכם.רשימת המספרים המחוברים
WbizTool Create WhatsApp Clientהוספת מספר WhatsApp לסביבת העבודה, עם כתובת Webhook אופציונלית.חיבור מספר WhatsApp
WbizTool WhatsApp Client Statusבדיקה אם מספר WhatsApp מחובר.סטטוס חיבור

WbizTool Send Message#

שדההערות
Target Typeהאפשרויות Phone Number (מספר טלפון) או Group (קבוצה).
Phone Numberמוצג כשבוחרים Phone Number. מפו אותו מצמתים קודמים, למשל {{ $json.phone }}.
Country Codeברירת המחדל היא 91. שנו אותה לקידומת המדינה של הנמענים שלכם. היא מתווספת לפני מספר הטלפון, אלא אם המספר כבר מתחיל בה.
Group Nameמוצג כשבוחרים Group. השם המדויק של קבוצה שמספר ה-WhatsApp שלכם חבר בה.
Message Typeהאפשרויות Text, Image with Text או File with Text.
Message Textההודעה, עד 3,000 תווים.
Image URL / File URL / File Nameמוצגים בהודעות תמונה וקובץ. כתובות ה-URL חייבות להיות ציבוריות.
WhatsApp Client ID (Optional)השאירו ריק כדי להשתמש במספר שמוגדר ב-credential.
Additional Optionsהאפשרויות Expire After (Seconds) ו-Webhook URL.

הצומת מחזיר את messageId (ה-msg_id מה-API). שמרו אותו אם תרצו לבדוק את הסטטוס או לבטל את ההודעה מאוחר יותר.

תהליך עבודה לדוגמה#

  1. צומת Webhook מקבל ליד חדש עם phone ו-name.
  2. WbizTool Send Message: הגדירו את Phone Number ל-{{ $json.phone }} ואת Message Text ל-Hi {{ $json.name }}, thanks for signing up!.
  3. צומת IF: בדקו ש-{{ $json.messageId }} אינו ריק כדי להמשיך לשלב הבא, למשל עדכון ה-CRM שלכם.

WbizTool Send Message שמצליח מחזיר פריט כמו זה:

{
  "success": true,
  "messageId": 9817263,
  "status": 1,
  "message": "Created",
  "response": { "status": 1, "message": "Created", "msg_id": 9817263 }
}

הפריט כולל גם אובייקט input עם הערכים שהצומת שלח. אם ה-API מחזיר שגיאה, הצומת נעצר ומציג את ה-message של ה-API. הפעילו את Continue On Fail כדי לקבל במקום זאת פריט עם success: false ועם טקסט ה-error.

בצומת WbizTool WhatsApp Client Status, השתמשו בשיטת הבדיקה General Status. השיטה Status by ID מחזירה שגיאה לכל מספר בגלל באג ב-endpoint הזה של ה-API. עם General Status, מספר שאינו מחובר גם עוצר את הצומת עם שגיאת Disconnected, לכן הפעילו את ההגדרה Continue On Fail של הצומת אם אתם רוצים ליצור הסתעפות לפי התוצאה.

שימוש בצומת HTTP Request#

הוסיפו צומת HTTP Request והגדירו אותו כך:

הגדרהערך
MethodPOST
URLhttps://wbiztool.com/api/v1/send_msg/
AuthenticationNone
Send BodyOn
Body Content TypeJSON
Specify BodyUsing JSON

לאחר מכן הדביקו גוף בקשה כמו זה, ומפו את הערכים מצמתים קודמים באמצעות ביטויים (expressions):

{
  "client_id": 12345,
  "api_key": "YOUR_API_KEY",
  "whatsapp_client": 678,
  "msg_type": 0,
  "country_code": "91",
  "phone": "{{ $json.phone }}",
  "msg": "Hi {{ $json.name }}, thanks for signing up!"
}

קריאה מוצלחת מחזירה {"status": 1, "message": "Created", "msg_id": 9817263}. כל השדות והודעות השגיאה מפורטים בדף שליחת הודעה.

כדי לקרוא לנקודות קצה אחרות, שנו את ה-URL ואת גוף הבקשה. למשל, כדי לתזמן הודעה השתמשו ב-https://wbiztool.com/api/v1/schedule_msg/ והוסיפו date בפורמט DD/MM/YYYY, time בפורמט HH:MM ו-timezone. ראו תזמון הודעה.

כדי לשלוח את אותה הודעה לכמה מספרים או קבוצות בקריאה אחת, השתמשו ב-https://wbiztool.com/api/v1/send_msg/multi/ והכניסו את הנמענים לשדה phone כמחרוזת אחת מופרדת בפסיקים. ראו שליחה למספרים מרובים.

{
  "client_id": 12345,
  "api_key": "YOUR_API_KEY",
  "whatsapp_client": 678,
  "msg_type": 1,
  "country_code": "91",
  "phone": "{{ $json.phones }}",
  "img_url": "https://example.com/offers/diwali-sale.jpg",
  "msg": "Our Diwali sale starts tomorrow!"
}

כתבו רק ספרות בכל מספר. כל ערך שאינו מספר שלם, כמו 98765 43210, נשלח כשם קבוצה.

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

{
  "msg": "Good {{ $now.hour < 12 ? 'morning' : 'evening' }} {{ $json.name }}, your order total is {{ $json.total }}.{{ $json.total > 1000 ? ' Delivery is free.' : '' }}"
}

$now משתמש באזור הזמן של תהליך העבודה (Workflow settings → Timezone), לכן הגדירו אותו כדי לקבוע מתי נגמר ה-„morning“.

קבלת עדכון כשהודעה נשלחת#

  1. צרו תהליך עבודה עם Webhook

    הוסיפו צומת Webhook עם POST כשיטת ה-HTTP, והעתיקו את כתובת ה-URL של סביבת הייצור (production URL) שלו.

  2. העבירו את הכתובת בזמן השליחה

    הכניסו את הכתובת הזו לאפשרות Webhook URL של הצומת, או לשדה webhook בגוף בקשת ה-HTTP שלכם.

  3. קראו את התוצאה

    המערכת של Wbiztool קוראת לכתובת ברגע שההודעה נשלחת או נכשלת. הגוף מקודד כטופס (form-encoded) ומכיל רק את msg_id ואת status, שערכו SENT או FAILED.

ניסיונות חוזרים וזמני המתנה מוסברים בסעיף Webhook.

פתרון בעיות#

בעיהמה לבדוק
בדיקת ה-credential נכשלתבדקו את מזהה הלקוח ומפתח ה-API בדף Settings → API keys, ודאו שאין לוכסן בסוף ה-Base URL, ושה-WhatsApp Client ID ב-credential הוא מספר בסביבת העבודה הזו.
Auth Error: invalid api keyהמפתח נמחק או שייך לסביבת עבודה אחרת.
Invalid whatsapp clientה-WhatsApp Client ID אינו מספר בסביבת העבודה הזו.
Invalid phone numberערך הטלפון מכיל אותיות או סימנים שאינם רווחים, נקודות, מקפים, סוגריים ו-+, או שיש בו פחות מ-6 או יותר מ-17 ספרות. מפו מספר שמכיל ספרות בלבד, כמו 919876543210.
Either phone or group_name parameter is requiredערך הטלפון הממופה ריק בפריט הזה.
Invalid Contact Number "…"המספר ארוך מ-15 ספרות אחרי הוספת קידומת המדינה. ודאו שקידומת המדינה לא מתווספת למספר שכבר יש בו קידומת.
Not enough creditsלא נשארו הודעות בתוכנית שלכם.
הצומת מצליח אבל ההודעה לא נשלחתההודעה ממתינה בתור עד שמספר ה-WhatsApp שלכם מחובר. בדקו אותה ב-סטטוס הודעה עם הצומת HTTP Request, או בהיסטוריית ההודעות שלכם. הצומת WbizTool Message Status מדווח על הודעה שבתור כשגיאה בשם Created.