• הרשמה
    • התחברות
    • חיפוש
    • דף הבית
    • אינדקס קישורים
    • פוסטים אחרונים
    • קבלת התראות מהדפדפן
    • משתמשים
    • חיפוש בהגדרות המתקדמות
    • חיפוש גוגל בפורום
    • ניהול המערכת
    • ניהול המערכת - שרת private

    שליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט

    פורום מפתחים API
    4
    14
    63
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • הגיבו כנושא
    התחברו בכדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • ה
      הללוהו נערך לאחרונה על ידי הללוהו

      תגובה: מודל תור - שליחה לשרת חיצוני של סטטוס סיום הלקוח בתור

      המערכת תשלח מיד לאחר יציאת לקוח מהתור את כל הפרטים שהיה בתור
      אותם פרטים שנמצאים בקובץ LogQueueAll.ymgr
      ערכי חובה
      queue_api_send=yes
      queue_api_link=abc.co.il
      ברירת מחדל get ניתן לשנות שליחה לpost
      queue_api_url_post=yes

      אני מנסה לעשות שישלח לגוגל סקריפט,
      עשיתי פריסה, הכנסתי את הקישור, ומשום מה הוא לא מתחבר אשמח לעזרה בענין.

      א תגובה 1 תגובה אחרונה תגובה ציטוט 0
      • א
        אביי ורבא @הללוהו נערך לאחרונה על ידי

        @הללוהו הגדרת פונקציית doGet? הפריסה זמינה לכולם או רק לך?

        ה תגובה 1 תגובה אחרונה תגובה ציטוט 0
        • ה
          הללוהו @אביי ורבא נערך לאחרונה על ידי

          @אביי-ורבא האם צריך להגדיר בפריסה ולשנות את 'סוג הפרויקט' ל"ניתן להפעלה דרך ממשק API"?

          א תגובה 1 תגובה אחרונה תגובה ציטוט 0
          • א
            אביי ורבא @הללוהו נערך לאחרונה על ידי

            @הללוהו לא. זה צריך להיות אפליקציית אינטרנט, אבל לא ענית האם יש לך פונקציה מתאימה

            ה תגובה 1 תגובה אחרונה תגובה ציטוט 0
            • ה
              הללוהו @אביי ורבא נערך לאחרונה על ידי הללוהו

              @אביי-ורבא כן

              function doPost(e)
              

              ובמערכת הגדרתי ככה:

              queue_api_send=yes
              queue_api_url_post=yes
              queue_api_link=https://script.google.com/macros/s/מזהה הפריסה/exec
              
              א תגובה 1 תגובה אחרונה תגובה ציטוט 0
              • א
                אביי ורבא @הללוהו נערך לאחרונה על ידי

                @הללוהו ובלוג הפעלות של גוגל סקריפט מה מופיע?

                ה תגובה 1 תגובה אחרונה תגובה ציטוט 0
                • ה
                  הללוהו @אביי ורבא נערך לאחרונה על ידי הללוהו

                  @אביי-ורבא כתב בשליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט:

                  @הללוהו ובלוג הפעלות של גוגל סקריפט מה מופיע?

                  "נכשלה".
                  איני מבין בלוג..

                  א תגובה 1 תגובה אחרונה תגובה ציטוט 0
                  • א
                    אביי ורבא @הללוהו נערך לאחרונה על ידי

                    @הללוהו אז זה לא הבעיה, זה מתחבר מצויין, יש לך שגיאה כלשהי בסקריפט, תנסה לדבג עם פרמטרים לדוגמה בהפעלה רגילה ותוכל לראות בדיוק איפה זה נתקע

                    ה תגובה 1 תגובה אחרונה תגובה ציטוט 0
                    • ה
                      הללוהו @אביי ורבא נערך לאחרונה על ידי הללוהו

                      @אביי-ורבא כתב בשליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט:

                      יש לך שגיאה כלשהי בסקריפט,

                      מצו"ב הסקריפט המלא :

                      
                      function doPost(e) {
                        try {
                          // פרס את הנתונים שנשלחו בפורמט JSON
                          Logger.log("מתחיל לעבד נתונים...");
                          var data = JSON.parse(e.postData.contents);
                          Logger.log("נתונים שנקלטו: " + JSON.stringify(data));
                          
                          // קבע את הגיליון שבו יוכנסו הנתונים
                          var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("גיליון8");
                          
                          
                          // הכנס את התוכן שהתקבל לתא A12 - כדי שאדע אם התוכן בכלל מגיע - בינתיים זה לא עבד ולא נכנס לכאן כלום זה אומר שהתוכן משום מה לא הגיע ...
                          sheet.getRange("A12").setValue(JSON.stringify(data));
                          
                          // הפוך את הנתונים לשורה חדשה
                          var newRow = [];
                          var folderName = "";
                      
                          // המרה של Folder למיקום טקסטי
                          switch(data.Folder) {
                            case "1":
                              folderName = "פיצה";
                              break;
                            case "2":
                              folderName = "פלאפל";
                              break;
                            default:
                              folderName = "לא ידוע"; 
                          }
                      
                          // הוסף את הנתונים לשורה החדשה
                          newRow.push(folderName);               // עמודה A
                          newRow.push(data.Phone);               // עמודה B
                          newRow.push(data.Date);                // עמודה C
                          newRow.push(data.Time);                // עמודה D
                          newRow.push(data.QueueStatus);         // עמודה E
                          newRow.push(data.AnswerNumber);        // עמודה F
                          newRow.push(data.QueueRecordPath);     // עמודה G
                      
                          // הכנס את השורה החדשה לגיליון בשורה 2
                          sheet.insertRowBefore(2);
                          sheet.getRange(2, 1, 1, newRow.length).setValues([newRow]);
                          
                          Logger.log("נתונים הוכנסו בהצלחה.");
                          return ContentService.createTextOutput(JSON.stringify({ status: 'success' }));
                        } catch (error) {
                          Logger.log("שגיאה: " + error.message);
                          return ContentService.createTextOutput(JSON.stringify({ status: 'error', message: error.message }));
                        }
                      }
                      

                      @אביי-ורבא כתב בשליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט:

                      תנסה לדבג עם פרמטרים לדוגמה בהפעלה רגילה ותוכל לראות בדיוק איפה זה נתקע

                      כשניסתי להריץ אותו מגוגל סקריפט עצמו כך:

                      function testDoPost() {
                      
                      var e = {
                      
                      postData: {
                      
                      contents: JSON.stringify({ Phone: "123456789", Date: "2023-10-01", Time: "10:00", Folder: "1", QueueStatus: "נמצא בתור", AnswerNumber: "5", QueueRecordPath: "/path" })
                      
                      }
                      
                      };
                      
                      doPost(e);
                      
                      }
                      
                      

                      הוא עבד כמו שצריך.

                      @אביי-ורבא כתב בשליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט:

                      אז זה לא הבעיה, זה מתחבר מצויין,

                      בלוג אני רואה שהסקריפט מופעל בכל ניתוק שיחה, אבל בפועל שום דבר לא זז בשיטס.

                      ע ה 2 תגובות תגובה אחרונה תגובה ציטוט 0
                      • ע
                        עידו @הללוהו נערך לאחרונה על ידי

                        @הללוהו אולי תנסה להוסיף את זה
                        Logger.log("e.postData: " + JSON.stringify(e.postData));

                        א תגובה 1 תגובה אחרונה תגובה ציטוט 0
                        • ה
                          האדם החושב @הללוהו נערך לאחרונה על ידי האדם החושב

                          @הללוהו למיטב זכרוני השליחה מימות כpost לא שולחת את הנתונים במבנה json אלא כפרמטרים מופרדים ב& ו =
                          אגב, למה אתה לא שולח בget?

                          א תגובה 1 תגובה אחרונה תגובה ציטוט 1
                          • א
                            אביי ורבא @עידו נערך לאחרונה על ידי

                            @עידו כתב בשליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט:

                            @הללוהו אולי תנסה להוסיף את זה
                            Logger.log("e.postData: " + JSON.stringify(e.postData));

                            בהרצה כאפליקציית אינטרנט לא ניתן לראות את הלוגים, אא"כ מקשרים לפרויקט בGCP, ואז ניתן לראות את הלוגים דרך שם,

                            תגובה 1 תגובה אחרונה תגובה ציטוט 0
                            • א
                              אביי ורבא @האדם החושב נערך לאחרונה על ידי

                              @האדם-החושב כתב בשליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט:

                              למה שלא תשלח בget?

                              זה לא משנה, שפשוט יתקן את הקוד שלו בהתאם,

                              @הללוהו תשמור את כל postData לשדה בגוגל שיטס, ואז תראה את המבנה שבו זה מתקבל

                              ה תגובה 1 תגובה אחרונה תגובה ציטוט 0
                              • ה
                                הללוהו @אביי ורבא נערך לאחרונה על ידי הללוהו

                                @אביי-ורבא כתב בשליחת הסטטוס בסיום לקוח בתור - לגוגל סקריפט:

                                @הללוהו תשמור את כל postData לשדה בגוגל שיטס, ואז תראה את המבנה שבו זה מתקבל

                                איך אני עושה זאת?
                                בינתיים אני לא רואה שום תזוזה בגוגל שיטס בענין.
                                מה שמאוד מוזר ששמתי לב זה שבלוג אני רואה שהסקריפט הושלמה ומנגד אפילו פעולה פשוטה שתכניס לתוך תא מסוים את המילים "מעבד נתונים" בתחילת הרצת הסקריפט הוא לא עושה, אשמח למי שיחכים אותי בענין.
                                עשיתי כך:

                                
                                function doPost(e) {
                                
                                  // קבע את הגיליון שבו יוכנסו הנתונים
                                 
                                    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("גיליון8");
                                    
                                    sheet.getRange("A12").setValue("מתחיל לעבד נתונים...");
                                
                                

                                ולא מופיע בתא A12 כלום...
                                ובלוג
                                ab55b046-f521-4791-a0dc-9529e171773c-image.png

                                עריכה: שמתי לב שגם כשאין שם סקריפט בכלל בלוג מופיע שהופעלה סקריפט זה והושלמה זה אומר שבאמת לא מופעל הסקריפט בכלל השאלה מה הסיבה לכך ומה הפתרון.

                                תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                • פוסט ראשון
                                  פוסט אחרון