משא ומתן עם השרת
-
@795501400 אין לי מושג בפייתון, אולי תנסה לפרט יותר מה הבעיה שלך בתקווה שאוכל לעזור...
-
@CUBASE כיון שמודל שעון נוכחות לא עובד כמו שצריך
אני בונה כזה עצמאי אצלי על השרת
אני מנסה לטפל מה קרה אם הדיווח לא תקין
למשל דיווח נוסף על כניסה או דיווח נוסף על יציאה (כלומר חוסר בדיווח קודם)
כיצד אני בעצם פותח דו שיח נוסף עם השרת אחרי שהוא דיווח לי על יציאה
באופן רגיל אני עונה לו את ההודעה התקבל דיווח בהצלחה
אבל פה אני בעצם רוצה לומר לו יש בעיה
מה לעשות?
א. ב. או ג?
כיצד אני עושה את זה? -
@795501400 אתה מחזיר לו read עם ההודעה שיש בעיה בדיווח ונותן לו להקיש את הפרטים הנצרכים, אתה יכול גם להחזיר id_list_message עם הודעת שגיאה ולשרשר אחריו read עם האפשרויות להקשה, היתרון בכך הוא שניתן לדלג על ההודעה ובכל זאת לשמוע את התפריט של אפשרויות ההקשה (הכוונה שלא ניתן לשרשר ב-read זה אחריו,** לפני** read כן ניתן לשרשר)
לפי איך שזה נראה אתה הבנת שאחרי שענית read אז לא ניתן להמשיך את הדו שיח, הכוונה שלא ניתן לשרשר פעולות נוספות כמו id_list_message או go_to_folder ע"י כתיבת הפעולות בתשובה עצמה, כלומר לא תוכל לענות כך:read=f-000=foo,yes,8,4,7,Number,yes,no,*/&read=f-001=bar,yes,8,4,7,Number,yes,no,*/&
או כך:
read=f-000=foo,yes,8,4,7,Number,yes,no,*/&go_to_folder=hangup
-
@CUBASE אני יכול להחזיר עוד read ועוד ועוד?
-
@795501400 כן, אבל כמו שכתבתי לא בתשובה אחת אלא אתה מחזיר read, מקבל את הקשת המשתמש ומחזיר לו read חדש
-
@CUBASE ראשית מתנצל על הבורות. שנית, איך אני מממש את המשא ומתן הזה? אם לקחתי מידע מהמאזין, הכנתי ממנו שאילתא למסד נתונים ועכשיו אני רוצה לשאול את המאזין איזה מבין הנתונים שחזרו מהמסד נתונים הוא רוצה, אז לשאול זה לא בעיה (דרך הread) השאלה איך אני גורם לשרת לזכור אילו נתונים נמצאו? הרי כל קריאה לשרת מריצה את הקוד מחדש לא? ואם 2 יתקשרו במקביל/בסמוך, איך השרת ידע לא "להתבלבל" בין הבקשות שלהם ולעשות לכל אחד את מה שצריך לעשות לו?
-
@795501400 @עידו מניסוח השאלות אני מבין שאתם כותבים/לומדים עם AI, לכן אני ממליץ לכם ללמוד כבר להשתמש בnode-js עם הספריה https://github.com/ShlomoCode/yemot-router2 במקום עם py, זה עולם אחר לחלוטין של תקשורת עם המערכת ואין צורך להתעסק בהפניית הבקשות read ושאר ירקות, רק לכתוב קוד בצורה מסודרת ונקיה,
(יש כאן גם טמפלייט פשוט וקליל לאפליקציית node כזו)
-
@אביי-ורבא האמת אני משתמש בphp והייתי מעדיף את C#
-
@אביי-ורבא כתב במשא ומתן עם השרת:
@795501400 @עידו מניסוח השאלות אני מבין שאתם כותבים/לומדים עם AI, לכן אני ממליץ לכם ללמוד כבר להשתמש בnode-js עם הספריה https://github.com/ShlomoCode/yemot-router2 במקום עם py, זה עולם אחר לחלוטין של תקשורת עם המערכת ואין צורך להתעסק בהפניית הבקשות read ושאר ירקות, רק לכתוב קוד בצורה מסודרת ונקיה,
(יש כאן גם טמפלייט פשוט וקליל לאפליקציית node כזו)
נראה מעניין מאוד, אבל איך זה עוזר בעניין המשא ומתן ו"שאר ירקות"? לא כ"כ הבנתי מה הולך שם ואיך זה עובד.
-
@עידו אתה מכיר קצת nodejs + express?
אם לא תשאל את GPT על הקוד של הטמפלייט, הוא יוכל להסביר לך על מבנה הראוטר עצמו
בקובץ src/callHandler.js תוכל לראות לוגיקה בסיסית (של תגובה עם id_list_message) שאר המתודות די דומות, תעבוד עם התיעוד ברדמי של הספריה + GPT, מהר מאוד תבין מי נגד מי,
אם תסתבך, אתה יכול לשאול בפורום ואשתדל לעזור
-
@אביי-ורבא הבעיה היא שמה שאני מכיר הוא פייתון
NODE לא זכיתי לדעת
וודאי שלא לשלב את זני אלו בפרוייקט אחדהחלק של שעון הנוכחות זה רק חלק ממערכת שלמה שכתובה בשפת פייתון כך שאינני יכול לשנות אותם לNIDE
-
@עידו כתב במשא ומתן עם השרת:
@CUBASE ראשית מתנצל על הבורות. שנית, איך אני מממש את המשא ומתן הזה? אם לקחתי מידע מהמאזין, הכנתי ממנו שאילתא למסד נתונים ועכשיו אני רוצה לשאול את המאזין איזה מבין הנתונים שחזרו מהמסד נתונים הוא רוצה, אז לשאול זה לא בעיה (דרך הread) השאלה איך אני גורם לשרת לזכור אילו נתונים נמצאו? הרי כל קריאה לשרת מריצה את הקוד מחדש לא? ואם 2 יתקשרו במקביל/בסמוך, איך השרת ידע לא "להתבלבל" בין הבקשות שלהם ולעשות לכל אחד את מה שצריך לעשות לו?
כל בקשת read מבצעת פניה חדשה לשרת עם כל הנתונים שהתקבלו עד עכשו בתוספת הנתון האחרון, כך שהמערכת מבצעת את הפעולה כאילו פנית מראש עם כל הנתונים, אתה יכול לראות את זה בצורה מאד ברורה ב LogApi שנמצא בתיקיית Log במערכת, תראה שם את הפניה הראשונה לשרת, תשובת השרת - read, ובשורה הבאה פניה חוזרת לשרת עם כל הנתונים פלוס הנתון האחרון.