צורת זרימת קוד לIVR
-
איך אתם כותבים את הקוד?
הרי יש הרבה הסתעפויות, לדוגמא:
לX הקש 1 לY הקש 2.
1 -> לX הקש 1 לY הקש 2.
וכו'בין אם ההסתעפות מתבצעת בIF ובין אם בסוויטצ', כך או כך נהיה בלאגן...
ולממש פונקציה לכל אופציה גם כן לא נוח ולא קריא בעליל.
איך אתם עושים את זה?
-
@עידו
אני חושב שהדרך הנורמלית היא כן לשים פונקציה לכל הקשה (במידה וההקשה שלו דורשת טיפול מהשרת, ולא רק לחזור אחורה וכדו')
אינ עושה ככה,
כל פונקציה אני שם בקובץ נפרד שמטפל בה, ובקובץ הראשי, אני קורא לפונקציה הזו
כלומר יש פונקציה ראשית שמחזירה למאזין את השאלה עם האופציות להקשה, ואז אני מייצר עוד פונקציות לכל הקשה שדורשת טיפול מהשרת.
כמובן שכל הקשה גם שם הפרמטר שלה הוא שונה,
ואז בעצם כמעט כל הקשה שהיא (שזה בעצם פרמטר שמתקבל מהמשתמש) יש לה שם בנפרד, ואז הקוד יודע איזה פונקציה הוא אמור להפעיל. -
@y6714453 אבל זה חתיכת בלאגן לעשות פונקציה לכל הקשה, במיוחד אם יש כמה הסתעפויות אחד בתוך השני, כמו if מקוננים.
-
@עידו
ככה עובדים,
הקוד לא חייב להיות קוד אחד ארווך (כמו שAI אוהבים לעשות...)
עושים לכל פונקציה קובץ בנפרד שמעבד אותה, או לכל סדרת פונקציות קבצים בתוך תיקייה,
ואז בכל קובץ קוראים לפונקציה המתאימה,
למשל הקובץ הראשי, משמיע בקשה מסויימת, ומעביר לפי ההקשה לפונקציות אחרות, ושם אפשר לשרשר את זה לעוד פונקציות
אם זה מסודר בקבצים נפרדים זה לא כל כך מבולבל, ומבולגן...שוב אם לכל הקשה זה להעביר אותו לעוד עיבוד וכו'
אם זה רק חזרה / מעבר / דברים קבועים, אפשר להכניס באותה פונקציה,
לפי הפרמטר שמתקבל.