@1668 ???
יש לך תשובה עניינית?
-
RE: איך עושים? 🙂↔️😕
תודה על כיוון החשיבה, אבל שללתי לחלוטין ערבוב Threads בשרת שלי. השרת רץ בארכיטקטורת Stateless מלאה בתוך Node.js (סביבת single-threaded עם Event Loop אסינכרוני), וכל בקשה נכנסת מקבלת Context מבודד לחלוטין בזיכרון (Scoped Instance). אין שום משתנה גלובלי משותף שיכול לגרום ל-Race Condition בצד השרת.
יתרה מכך, הלוגים מראים שה-UUID של השיחה (אני משתמש בפרמטר ApiCallId שנשלח מימות המשיח) מוצמד בצורה סטרקטורלית (Structured Logging) לכל תגובה שיוצאת מהשרת. הנתונים נשלחים חזרה עם ה-Token הנכון של השיחה הספציפית.
החשד שלי הוא שבגלל ששלוחת ה-API מחזירה פקודות דינמיות (כמו read או go_to_folder), ה-Parser של ימות המשיח בצד ה-Client (המרכזייה עצמה) לא מבצע הקצאת זיכרון דינמית נפרדת לכל ApiCallId ברמת ה-Scope של ה-IVR, אלא משתמש ב-Buffer משותף פר שלוחה.
אם שני מחייגים פונים לשרת באותו מילי-שנייה:- שרת ה-API מחזיר שני אובייקטים נפרדים ותקינים לחלוטין.
- ימות המשיח מקבלת את שניהם, אבל ה-VXML Interpreter של המרכזייה דורס את המשתנה [Read_Variable] של מחייג א' עם הערך של מחייג ב', עוד לפני שהסשן של מחייג א' הספיק לבצע את ה-Evaluation של ה-go_to_folder.
בגלל שאין לי גישה ל-Low-level Engine של ימות המשיח, אני שוקל לעקוף את המגבלה הזו:
במקום להחזיר פקודות ישירות ב-Response של ה-API, אני אעביר את המערכת למוד אסינכרוני (Webhook-based). ה-API רק ירשום את השיחה ב-Redis DB שלי ויחזיר מיד לשלוחה פקודת המתנה (play_file), ובמקביל שירות רקע (Worker) יבצע פולטריגר ישיר באמצעות API חיצוני (כמו UpdateExtension) כדי להזריק את הערך ישירות לתוך קובץ ה-ext.ini הזמני של אותה שיחה באופן ממוקד.
מישהו פה ניסה לעבוד בטופולוגיה כזו מול ה-API של ימות כדי לפתור בעיות Memory Leak או דריסת Buffers בזמני עומס?
-
איך עושים? 🙂↔️😕
אני נתקל בבאג די מוזר בשלוחה שמשלבת נתונים משרת חיצוני ומעבירה אותם הלאה לשלוחה אחרת, ואשמח לעזרת המומחים כאן.
תיאור המקרה:
הגדרתי שלוחה ראשית (נניח 1) כ-type=api. היא פונה לשרת שלי, מקבלת חזרה קובץ הגדרות זמני ומבצעת read למשתמש.
בקובץ ה-ext.ini של השלוחה מוגדר:type=api api_link=https://myserver.com api_add_id_list_message=yes api_timeout=5השרת מחזיר בהצלחה את הפרמטרים ויוצר משתנה גלובלי (לדוגמה [Read_Variable]). מיד לאחר מכן, המערכת אמורה להעביר את המחייג לשלוחה 2 (שהיא שלוחת תפריט רגילה type=menu) לצורך ניתוב מבוסס משתנה באמצעות go_to_folder.
הבעיה:
בכ-15% מהשיחות (בעיקר בזמני עומס), נראה שיש Race Condition (תחרות ריצה) במערכת. המשתנה [Read_Variable] מגיע לשלוחה 2 כשהוא ריק או שהוא מכיל את הערך של המחייג הקודם בתור (כאילו ה-Session לא נסגר בזמן והתבצעה דריסת זיכרון).
במערכת הלוגים של השרת שלי (API Logs) אני רואה סטטוס 200 OK מלא, והנתונים נשלחים תוך פחות מ-200 מילישניות, כך שזה לא קשור ל-Timeout.
האם מישהו נתקל בתופעה הזו?
האם יש דרך לאלץ Flush או Clear למאגר המשתנים הדינמיים של ה-IVR לפני המעבר לשלוחה הבאה, או שחובה לעבוד כאן עם Bridge ייעודי כדי לשמור על ה-Token של השיחה הנוכחית?
תודה מראש לכל העוזרים! -
RE: כל מה שאנחנו צריכים לדעת על הקול החדש 📽️🗣️🤖
גם לכם מרגיש שהקול קצת נשי?
אם עובדים דרך בינה בשנייה אחת מביאים קול קרייני מקצועי משהו טוב. לא? -
RE: כל מה שאנחנו צריכים לדעת על הקול החדש 📽️🗣️🤖
(אולי מישהו ינדב כאן קישור או שניים).
-
RE: קו "עולם המוזיקה" 🎸 הקו העדכני לשירים הכי טובים! 🎤 האם אתם מוכנים?😜
שיחה-ממתינה כתב:
אגב, עם כל כך הוצאות, יש גם הכנסות? או שזה גם סודי?
אשמח מאוד לדעת.ומה עם זה?
-
RE: קו "עולם המוזיקה" 🎸 הקו העדכני לשירים הכי טובים! 🎤 האם אתם מוכנים?😜
התקשרתי - וזה נשמע קו ממש, אבל ממש מושקע.
רואים שחשבת על הכל.
תודה.
אגב, עם כל כך הוצאות, יש גם הכנסות? או שזה גם סודי?
אשמח מאוד לדעת. -
RE: קו "עולם המוזיקה" 🎸 הקו העדכני לשירים הכי טובים! 🎤 האם אתם מוכנים?😜
@שואל-שאלה
הקו שלך כ"כ סודי?
לא מפרסם את זה ולא מפרסם מי הקריין.
מעניין.
רוצים להצליח כמוך... -
RE: קו "עולם המוזיקה" 🎸 הקו העדכני לשירים הכי טובים! 🎤 האם אתם מוכנים?😜
קודם כול אני בטוח שאתם יודעים שיותר אין פרסומות בקו שלנו "עולם המוזיקה"!
בכמה עלה להוריד?
9.90 או יותר? -
RE: לייק / דסלייק - ושכלולים נוספים!! 👍🎀🏅✨
@אA
מתי ימות יבינו שזה פיתוח חשוב? מאיזה שלב הם מבינים שצריך להיענות לבקשה. מה שאני רואה כאן זה ביקוש עצום לדבר הזה. לא זכור לי עוד פיתוח כזה יפה שכ"כ רצו אותה. למה זה לא מגיע מצד ימות? מה עוד צריך לעשות שיבינו שהציבור רוצה את זה ודורש את זה? -
RE: לייק / דסלייק - ושכלולים נוספים!! 👍🎀🏅✨
@אA
אז למה זה נתקע? איך מתקדמים מכאן? -
RE: ✨👑 כל מה שרציתם לשאול על פורום פלוס ❓💡🏆
אבל תידע אם ברשימת צינתוקים רגילה למשל שעולה הודעה בפורום אתה עונה ולוחץ 9 זה חוסם אותך ללא אפשרות להצטרף בשנית.
וזה ממש חבל!
למה עשו את זה כך!
וגם לא הודיעו ע"ז!
אני בטעות התנתקתי מהצינטוק של התא קולי שלי -
ואין לי אפשרות לחזרה!! -
RE: לייק / דסלייק - ושכלולים נוספים!! 👍🎀🏅✨
בעבר כבר נערך ע"ז התרמה, ואף אספו סכום של 200 ש"ח
כאן
https://tickchak.co.il/29179אולי שיבואו לכאן.
אני גם מעוניין בפיתוח החשוב!! -
RE: הזדמנות לכסף קל. לרצינים ומתאימים בלבד
גם אם משעמם לכם, זה לא סיבה להקפיץ דברים לא רלוונטים...
רציתי קצת דסלייק.
זה הכל.
תודה.
תן עוד. -
RE: עריכת הפרופיל, איך?
@שלוחה-404
לפחות מישהו אחד נורמלי גם כותב ולא מדסלק.
תודה והערכה.
ולאחר חידש התחייה, למה שלא יחיו גם את העריכה של הפרופיל?
זה הכל. -
RE: הזדמנות לכסף קל. לרצינים ומתאימים בלבד
לכל מצביעי הדיסלייק. הבנו. אתם יודעים לדסלייק.
חוץ מזה, אתם גם יודעים לענות?ותעשו לי כאן עוד דיס... זה בסדר
-
RE: עריכת הפרופיל, איך?
אבל איך החלפתה תמונה
החלפתי את התמונה בהתחלה כשעוד היה אפשר.
למה לא מחזירים את זה?