החלפת מספרי טלפון
מנגנון msq_phone_replace_rules מספק דרך דקלרטיבית לביצוע החלפות טקסט/טלפון ושליחת פיקסלים בדפי אינטרנט באמצעות ה-MSQ Pixel SDK.
עקרון הפעולה
הכללים מוערכים מול תנאי conditions_filter (דמוי SQL) ולאחר מכן מפעילים פונקציות SDK ספציפיות. כללים מוגדרים במערך גלובלי בשם msq_phone_replace_rules.
מבנה אובייקט כלל
כל כלל מכיל את השדות הבאים:
| שדה | סוג | חובה | תיאור |
|---|---|---|---|
function | string | כן | שם הפונקציה ב-SDK להפעלה |
params | object | כן | פרמטרים עבור הפונקציה (כולל stop_on_success) |
callback | function | לא | נקראת לאחר סיום הכלל עם תוצאה true/false |
בתוך params ניתן להוסיף את ה-flag:
| flag | סוג | תיאור |
|---|---|---|
stop_on_success | boolean | אם true והפונקציה מחזירה true, הביצוע של כללים נוספים נעצר |
דוגמה מלאה
var msq_phone_replace_rules = [
{
function: 'referrer_search_and_replace',
params: {
conditions_filter: 'url LIKE "%gclid%" OR referrer LIKE "%google%"',
search_for_number: '055-4300000',
replace_number: '055-4311111',
maskyoo: '055-4311111',
stop_on_success: true
},
callback: function(result) {
console.log('[rule] referrer_search_and_replace =>', result);
}
},
{
function: 'dynamic_search_and_replace',
params: {
dynamic_url: 'https://example.dyn-msq.net/api/',
dynamic_campaign_id: 'CMP-12345',
dynamic_platform: 'google',
search_for_number: '055-4311111',
conditions_filter: 'url LIKE "%utm_campaign=summer%"',
dynamic_static: '055-4322222',
dynamic_interval: 5,
dynamic_ttl: 3600,
dynamic_die_timeout: 1800
}
}
];
הערת תאימות
ב-msq_pixel_2024.js, ה-stop_on_success נקרא מתוך rule.params.stop_on_success (ולא מראש האובייקט). דאגו לכלול אותו בתוך params.
סוגי פונקציות
ה-SDK מספק 13 פונקציות להחלפת מספרים:
פונקציות Referrer
פונקציות אלה מחליפות מספרים על בסיס תנאי referrer/URL:
| פונקציה | תיאור |
|---|---|
| referrer_search_and_replace | החלפה בטקסט ובקישורי tel: |
| referrer_search_and_replace_text | החלפה בטקסט בלבד |
| referrer_search_and_replace_link_tel | החלפה בקישורי tel: בלבד |
| referrer_replace_selector | החלפה לפי CSS selector |
| referrer_replace_selector_text | החלפת טקסט לפי selector |
| referrer_replace_selector_link_tel | החלפת קישורי tel: לפי selector |
פונקציות דינמיות
פונקציות אלה מקצות מספר דינמי מהשרת ומחליפות:
| פונקציה | תיאור |
|---|---|
| dynamic_search_and_replace | הקצאה דינמית + החלפה |
| dynamic_search_and_replace_text | הקצאה דינמית + החלפת טקסט |
| dynamic_search_and_replace_link_tel | הקצאה דינמית + החלפת קישורים |
| dynamic_replace_selector | הקצאה דינמית לפי selector |
| dynamic_replace_selector_text | הקצאה דינמית לטקסט לפי selector |
| dynamic_replace_selector_link_tel | הקצאה דינמית לקישורים לפי selector |
פונקציית Pixel
| פונקציה | תיאור |
|---|---|
| rule_send_pixel | שליחת פיקסל ללא שינוי DOM |
זמנים ושגיאות
- כל כלל מקבל timeout של 5 שניות
- במקרה של timeout או שגיאה, הביצוע ממשיך לכלל הבא
- שגיאות נרשמות ב-console ומדווחות ל-GA4 (אם מוגדר)
המשך קריאה
- פונקציות Referrer - פירוט מלא
- פונקציות דינמיות - פירוט מלא
- כללי פיקסל ותנאים - conditions_filter וכללי פיקסל
השפעות על המערכת
msq_phone_replace_rules מגדיר את הלוגיקה הויזואלית בצד הלקוח:
- החלפה בצד לקוח — הכללים מתבצעים ב‑DOM; הביקור עצמו רואה את המספר החדש אך נתוני ה‑HTML המקוריים (ב‑cache/snapshot) נשמרים
- Referrer לעומת Dynamic — פונקציות Referrer סטטיות ומיידיות; פונקציות Dynamic מושכות מספר מה‑pool של מסקיו עם keep‑alive וטעינה מהשרת
- זמינות ב‑CDR — תג
maskyooשנשמר בכלל מצורף לפיקסל ומאפשר ייחוס שיחות למספר שהוצג stop_on_success— עצירה אחרי כלל שהצליח; מסדרת עדיפות (למשל Google קודם, ואז fallback ל‑Facebook)- זמנים — כל כלל מקבל timeout של 5 שניות; כלל איטי לא יעצור את שאר הכללים
- קמפיינים דינמיים — פונקציות Dynamic נשענות על תשתית Dynamic Campaigns של מסקיו; דורשות קמפיין מוגדר ומספר pool פעיל