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

    Apps script משהו מכיר? חייב עזרה בזה...

    מתוזמן נעוץ נעול הועבר עזרה הדדית למשתמשים מתקדמים
    76 פוסטים 4 כותבים 24 צפיות 2 עוקבים
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • תגובה כנושא
    התחברו כדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • י מנותק
      יב @nhfk sbhtk
      נערך לאחרונה על ידי

      @nhfk-sbhtk לא אחרי שהתקשרת. תסתכל בעורך של הסקריפט בהפעלות אם הקוד עבד, ומה הלוג שכתוב שם.

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

        @יב 33abb470-9b8d-4586-83c4-0af898b2d56d-image.png

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

          אין יומנים זמינים הוא כותב

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

            @nhfk-sbhtk כשאתה מקיש על הושלמה.
            מה הוא כותב?

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

              @יב אין יומנים זמינים

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

                @nhfk-sbhtk מעניין
                תן לי לחשוב כמה דקות.

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

                  @nhfk-sbhtk תנסה רגע לכתוב בשלוחה רק ככה

                  type=api
                  api_link=כאן הקישור המלא
                  api_hangup_send=no
                  

                  ובסקריפט ככה

                  function doGet(e) {
                    try {
                      Logger.log("--- התחלת ריצה: פונקציית doGet הופעלה ---");
                      
                      // בדיקה אם התקבלו פרמטרים בכלל
                      if (!e || !e.parameter) {
                        Logger.log("אזהרה: לא התקבלו פרמטרים בבקשה (e.parameter ריק)");
                      } else {
                        Logger.log("פרמטרים גולמיים שהתקבלו: " + JSON.stringify(e.parameter));
                      }
                  
                      var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
                      Logger.log("התחברות לגיליון בוצעה בהצלחה: " + sheet.getName());
                      
                      // שליפת הפרמטרים
                      var params = e.parameter || {};
                      var phone = params.ApiPhone || 'חסר';
                      var extension = params.ApiExtension || 'חסר';
                      var apiTime = params.ApiTime || null;
                      var length = params.length || '0';
                      
                      Logger.log("עיבוד נתונים: טלפון=" + phone + ", שלוחה=" + extension + ", זמן_מערכת=" + apiTime);
                      
                      // טיפול בזמן
                      var now = new Date();
                      if (apiTime) {
                        now = new Date(apiTime * 1000);
                        Logger.log("בוצעה המרת זמן מ-ApiTime: " + now.toString());
                      } else {
                        Logger.log("לא התקבל ApiTime, משתמש בזמן הנוכחי של השרת");
                      }
                  
                      var dateString = Utilities.formatDate(now, "Asia/Jerusalem", "dd/MM/yyyy");
                      var timeString = Utilities.formatDate(now, "Asia/Jerusalem", "HH:mm:ss");
                      
                      // הכנת השורה לכתיבה
                      var rowData = [dateString, timeString, phone, extension, length];
                      Logger.log("מנסה לכתוב שורה לגיליון: " + JSON.stringify(rowData));
                      
                      sheet.appendRow(rowData);
                      Logger.log("השורה נכתבה בהצלחה.");
                      
                      return ContentService.createTextOutput("read=t-Success");
                      
                    } catch (error) {
                      Logger.log("שגיאה קריטית בתהליך: " + error.toString());
                      return ContentService.createTextOutput("read=t-Error&error_message=" + encodeURIComponent(error.toString()));
                    }
                  }
                  
                  N תגובה 1 תגובה אחרונה תגובה ציטוט 0
                  • N מנותק
                    nhfk sbhtk @יב
                    נערך לאחרונה על ידי

                    @יב כתב בApps script משהו מכיר? חייב עזרה בזה...:

                    type=api
                    api_link=כאן הקישור המלא
                    api_hangup_send=no

                    תראה את זה:66ee25fd-22f8-43eb-ada5-f741bc011df7-image.png

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

                      @nhfk-sbhtk הרצת ידנית או התקשרת?

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

                        @יב ידנית וגם התקשרתי ולא נרשמו נתונים

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

                          @nhfk-sbhtk מה הלוג של ההתקשרות?
                          אותו דבר?
                          תוכל להעתיק?

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

                            @יב 870c3a71-99d1-4bf2-8d58-750ffe930492-image.png

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

                              @nhfk-sbhtk פריסה מחדש עשית?

                              לפני שאני בודק דברים אחרים

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

                                @יב אתה מתכוון לפתוח פריסה חדשה?

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

                                  @nhfk-sbhtk העתקת את הקוד - לעשות פריסה מחדש (כי זה קוד חדש ממש, יחסית) - להעתיק את הקישור החדש להגדרות בשלוחה.

                                  אם תוכל להעתיק את כל ההגדרות של השלוחה שלך.

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

                                    @יב type=playfile
                                    start=min
                                    last_play_auto=yes
                                    max_recording_length=10800
                                    say_current=yes
                                    ;; DUP type=api
                                    api_link=כאן הקישור
                                    api_hangup_send=no

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

                                      חכה גאון!
                                      זה מתחיל לעבוד...
                                      רק שי ם לב לנתונים החסרים...724d7858-bca2-49fb-a4e4-1027fc2a7801-image.png

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

                                        @nhfk-sbhtk שים לב שאתה לא בשלוחה של api
                                        אתה צריך להגדיר בשלוחה ככה

                                        type=playfile
                                        start=min
                                        last_play_auto=yes
                                        max_recording_length=10800
                                        say_current=yes
                                        after_play=send_to_api
                                        api_link=כאן הקישור
                                        api_hangup_send=no
                                        

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

                                        function doGet(e) {
                                          try {
                                            Logger.log("--- תחילת עיבוד בקשה מימות המשיח ---");
                                            
                                            var params = (e && e.parameter) ? e.parameter : {};
                                            
                                            // אם הפרמטרים ריקים, נכתוב לוג
                                            if (Object.keys(params).length === 0) {
                                              Logger.log("התראה: לא התקבלו פרמטרים בבקשה.");
                                            }
                                        
                                            var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
                                            
                                            var phone = params.ApiPhone || '';
                                            var extension = params.ApiExtension || '';
                                            var apiTime = params.ApiTime || null;   
                                            var fileName = params.what || '';
                                            var playStop = params.PlayStop || '';
                                            
                                            var now = new Date();
                                            if (apiTime) {
                                              now = new Date(apiTime * 1000);
                                            }
                                            
                                            var dateString = Utilities.formatDate(now, "Asia/Jerusalem", "dd/MM/yyyy");
                                            var timeString = Utilities.formatDate(now, "Asia/Jerusalem", "HH:mm:ss");
                                        
                                            // שים לב!! סידור הנתונים לפי סדר העמודות:
                                            // תאריך | שעה | טלפון | שלוחה | משך (לא ידוע לי כרגע איך לחשב את זה) | שם קובץ
                                            var rowData = [
                                              dateString, 
                                              timeString, 
                                              phone, 
                                              extension, 
                                              "",        // כאן אמור להיות משך זמן
                                              fileName
                                            ];
                                            
                                            Logger.log("כתיבת שורה: " + JSON.stringify(rowData));
                                            sheet.appendRow(rowData);
                                            
                                            return ContentService.createTextOutput("read=t-Success");
                                            
                                          } catch (error) {
                                            Logger.log("שגיאה בקוד: " + error.toString());
                                            return ContentService.createTextOutput("read=t-Error");
                                          }
                                        }
                                        

                                        תעשה פריסה מחדש + עם אפשרות למי יש גישה (משהו כזה) תגדיר לכולם) - תאשר שינויים - קישור חדש - הקישור תעתיק לשלוחה.

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

                                          @יב מה נקרא שלוחת API?
                                          כי זו שלוחת האזנה.
                                          את ההגדרות שלי השארת אותו הדבר נכון?
                                          כי לקח לי ג הרבה זמן עד שהצלחתי על ההגדרות האלה😉

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

                                            @nhfk-sbhtk מחקתי שורה אחת

                                            ;; DUP type=api
                                            

                                            לא שיניתי שאר דברים (גם ככה זה לא התייחס אליו, אבל לצורך החיוניות הורדתי).

                                            שלוחה API לא קשור כרגע לצרכים שלך, תמשיך ככה

                                            עריכה: כמובן הוספתי שורה חיונית, שמבלי זה, זה לא יעבוד

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