צד המשתמש
מתכונים מעשיים לחיבור ה־Webhook לכלים שכבר בשימוש. Zapier, n8n, Make.com ו־CRM/ERP ישראליים (Powerlink, Priority, Salesforce, Monday.com, HubSpot).
תבנית: Webhook → כלי אינטגרציה → היעד שלכם
רוב האינטגרציות עוקבות אחרי אותה תבנית:
- aicall.co.il שולח POST של מטען השיחה לכתובת URL.
- אותה כתובת שייכת לכלי אינטגרציה (Zapier, n8n, Make.com) שמפענח את המטען.
- כלי האינטגרציה דוחף את הנתונים ל־CRM, ERP, גיליון אלקטרוני או דוא״ל.
למעשה מחברים שתי מערכות עם שכבת no-code באמצע — ללא דרישה ל־deploy של backend.
Zapier — טריגר "Webhooks by Zapier"
Zapier הוא פלטפורמת האינטגרציה הנפוצה ביותר בעסקים ישראליים. הגדרה:
- ב־Zapier — Zap חדש. בחירת Webhooks by Zapier כטריגר, ואז Catch Hook.
- Zapier נותן URL ייחודי כמו
https://hooks.zapier.com/hooks/catch/.... להעתיק. - בדשבורד aicall.co.il מפתחים → Webhooks — להדביק את ה־URL בשדה ה־URL של הסוכן. להפעיל.
- לבצע שיחת בדיקה אמיתית כדי ש־Zapier יקלוט מטען לדוגמה.
- להוסיף שלב יעד — Google Sheets, Gmail, HubSpot, Salesforce וכו'.
לאימות HMAC — כדאי להשתמש בשלב Code by Zapier עם קטע ה־Node.js מתוך webhooks-system-side.
n8n — אוטומציה no-code self-hosted
n8n היא חלופה בקוד פתוח. נפוצה בצוותי תפעול ישראליים שרוצים שליטה על איפה הנתונים זורמים.
- workflow חדש. הוספת node Webhook.
- HTTP Method = POST. להעתיק את ה־production URL.
- להדביק ב־aicall.co.il מפתחים → Webhooks.
- להוסיף node Code ולהדביק את קטע אימות ה־HMAC.
- להוסיף nodes נוספים — HTTP Request ל־CRM, INSERT ל־Postgres, שליחת דוא״ל וכו'.
n8n מטפל ב־RTL עברית טוב מהקופסה; תמלילי שיחות מוצגים נכון ב־UI.
Make.com (לשעבר Integromat)
Make.com יושבת בין Zapier (פשוט) ל־n8n (טכני). לאוטומציות מורכבות עם הסתעפות מותנית — לרוב ההתאמה הנקייה ביותר.
- סצנה חדשה → Webhooks → Custom webhook → Add. להעתיק URL.
- להדביק כ־webhook URL של סוכן ב־aicall.co.il.
- שיחת בדיקה; Make.com מזהה אוטומטית את ה־schema של המטען.
- שרשור מודולים — Iterator → Aggregator → היעד שלכם.
CRM ישראליים — Powerlink, Priority, Salesforce IL
רוב ה־CRM הישראליים מקבלים Webhook דרך גשר Zapier או n8n. אינטגרציות ישירות:
- Powerlink CRM — REST API תומך ב־insert / update של רשומות לפי API key. שימוש בפעולת Powerlink של Zapier (כשזמינה) או HTTP request עם המפתח בכותרת.
- Priority ERP — פתיחת System Constants → Web SDK, יצירת token, ושליחת PUT של נתוני השיחה לטבלת היישות הרלוונטית דרך REST של Priority.
- Salesforce — האינטגרציה של Zapier היא הכי מלוטשת. מיפוי שיחה → ליד, תמליל → activity note.
- Monday.com — טריגר Webhook ישיר ב־UI; הדבקת ה־URL שלנו.
- HubSpot — Workflows יכולים להאזין ל־webhook URL מותאם.
ERP ומערכות back-office ישראליות
ל־Priority, SAP B1, חשבשבת ורווחית — התבנית הבטוחה ביותר היא לגשר דרך n8n (self-hosted) או שרת קטן שאתם שולטים בו. ERP בדרך כלל לא אוהבים שכלי SaaS צרכני כמו Zapier נוגעים בנתונים פיננסיים.
- n8n על VPS שלכם → מקבל את ה־Webhook שלנו → קורא ל־REST/SOAP של ה־ERP עם האישורים הקיימים שלכם.
- חתימת ה־HMAC מספקת הוכחה שהבקשה הגיעה מאיתנו.
בדיקת האינטגרציה
לפני שמכוונים ל־production:
- שימוש ב־/api/developers/webhook-example כמטען לדוגמה — POST ידני לכלי האינטגרציה.
- שיחת בדיקה אמיתית למספר של סוכן. צפייה ביומן השליחות בדשבורד.
- שליחה חוזרת של כל שליחה שכשלה מהדשבורד עד שה־receiver מחזיר 2xx נקי.
העברת אירועי webhook ל-CRM שלך
import os
import httpx
CRM_URL = os.environ["CRM_WEBHOOK_URL"]
CRM_TOKEN = os.environ["CRM_API_TOKEN"]
def forward_to_crm(event: dict) -> None:
if event.get("event") != "agent.conversation.completed":
return # Only push completed calls into the CRM.
conv = event["conversation"]
payload = {
"external_id": conv["id"],
"caller_phone": conv.get("from_number"),
"duration_seconds": conv.get("duration_seconds"),
"transcript_url": conv.get("transcript_url"),
"cost_usd": conv.get("billed_usd"),
"agent": conv.get("agent_name"),
}
response = httpx.post(
CRM_URL,
json=payload,
headers={"Authorization": f"Bearer {CRM_TOKEN}"},
timeout=10,
)
response.raise_for_status()