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

    UploadFile - העלאת קובץ בAPI

    פורום מפתחים API
    5
    25
    498
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • הגיבו כנושא
    התחברו בכדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • א
      אופיר @Freund נערך לאחרונה על ידי

      @Freund בלי מפתח
      רק לא לשכוח לציין בכותרת multipart/form-data

      יש לי דוגמה בVBA לא נראה לי שיעזור לך

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

        @אופיר זה כל הBODY בעצם?

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

          @Freund כן
          אשמח לדעת אם הסתדרת

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

            @אופיר לא הסתדרתי. לא הבנתי איזה פרמטרים בדיוק משרשרים בURL.. תודה!

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

              @Freund
              token path וכו'
              לדוגמה:

              https://www.call2all.co.il/ym/api/UploadFile?token=077266666666:123546&path=ivr2:4/000.wav
              
              F תגובה 1 תגובה אחרונה תגובה ציטוט 0
              • F
                Freund @אופיר נערך לאחרונה על ידי

                @אופיר עדיין מקבלת הודעת שגיאה:

                {
                "responseStatus": "ERROR",
                "message": "System error",
                "messageCode": 105,
                "yemotAPIVersion": 6,
                "success": false
                }
                זה הURL ששלחתי:
                https://www.call2all.co.il/ym/api/UploadFile?token=0231313XX:XXXX&path=ivr2:/100/000.wav

                עם כותרתContent-Type multipart/form-data

                ובbody את הcontent שהתקבל מget file content

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

                  יש מישהו? תודה מראשש

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

                    @eliyahu יכול אולי לעזור? תודה גדולה מראש

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

                      @Freund באיזו שפה את כותבת?

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

                        @אופיר multipart/form-data אבל לא ברור לי בדיוק איזה פרמטרים צריך לשלוח.... ובינתיים שום קריאה לא הצליחה

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

                          @Freund תוסיפי בתחילת הPOST:

                          Content-Disposition: form-data; name="file"; filename=
                          

                          ושם הקובץ עם גרשיים. מעבר שורה ו:

                          Content-Type: application/octet-stream
                          

                          מעבר שורה ותוכן הקובץ (ניסיתי עכשיו אצלי)

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

                            @אופיר תוכל לשלוח את כל הקריאה? לא הבנתי בדיוק ... אני שולחת דרך POWER AUTOMATE [ברעיון כמו MAKE] תודה רבה

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

                              @Freund כתב בUploadFile - העלאת קובץ בAPI:

                              POWER AUTOMATE

                              אני לא מכיר, אבל הנה הקוד ב-VBA. אפשר להעלות אותו ל-chatGPT ולבקש שיעשה לך את ההתאמה עבור הפלטפורמה הרצויה.

                              
                              Sub SendFileViaPost()
                                  Dim http As Object
                                  Dim fileStream As Object
                                  Dim boundary As String
                                  Dim data As String
                                  Dim url As String
                                  Dim filePath As String
                                  Dim fileName As String
                                  Dim fileContent As String
                              
                                  ' הגדרת כתובת ה-URL
                                  url = "https://call2all.co.il/ym/api/UploadFile?token=077**מערכת*:**סיסמה**&path=ivr2:002.wav"
                              
                                  ' הגדרת נתיב הקובץ
                                  filePath = "C:\Users\User\Desktop\בין כוכבים.wav"
                                  fileName = "בין כוכבים.wav"
                              
                                  ' קריאת תוכן הקובץ
                                  Set fileStream = CreateObject("ADODB.Stream")
                                  fileStream.Type = 1 ' adTypeBinary
                                  fileStream.Open
                                  fileStream.LoadFromFile filePath
                                  fileContent = fileStream.Read
                                  fileStream.Close
                                  Set fileStream = Nothing
                              
                                  ' יצירת גבול multipart
                                  boundary = "------------------------" & Format(Now, "YYYYMMDDHHMMSS")
                              
                                  ' יצירת תוכן הבקשה
                                  data = "--" & boundary & vbCrLf
                                  data = data & "Content-Disposition: form-data; name=""file""; filename=""" & fileName & """" & vbCrLf
                                  data = data & "Content-Type: application/octet-stream" & vbCrLf & vbCrLf
                                  data = data & fileContent & vbCrLf
                                  data = data & "--" & boundary & "--"
                              
                                  ' יצירת אובייקט HTTP
                                  Set http = CreateObject("MSXML2.XMLHTTP")
                                  http.Open "POST", url, False
                                  http.setRequestHeader "Content-Type", "multipart/form-data; boundary=" & boundary
                              
                                  ' שליחת הבקשה
                                  http.Send data
                              
                                  ' בדיקת התשובה
                                  If http.Status = 200 Then
                                      MsgBox "ההעלאה הצליחה: " & http.responseText
                                  Else
                                      MsgBox "Failed to upload file. Status: " & http.Status & " - " & http.statusText
                                  End If
                              
                                  ' שחרור אובייקט
                                  Set http = Nothing
                              End Sub
                              
                              
                              F א 2 תגובות תגובה אחרונה תגובה ציטוט 0
                              • F
                                Freund @אופיר נערך לאחרונה על ידי

                                @אופיר לא רואה פה את המקום של הcontent - אם אני לא מעלה מהמחשב אלא מהענן לא הבנתי איפה להכניס את התוכן של הקובץ ...

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

                                  @אופיר כתב בUploadFile - העלאת קובץ בAPI:

                                  data = data & fileContent & vbCrLf

                                  זה הCONTENT

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

                                    @Freund אפשר קישור לאתר שאת עובדת?

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

                                      @אופיר POWER AUTOMATE

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

                                        @Freund להלן קוד שעובד להעלאת קובץ:

                                        <?php
                                        
                                        $url = "https://www.call2all.co.il/ym/api/UploadFile";
                                        
                                        // Prepare multipart form data
                                        $data = [
                                            "token" => "$username:$password",
                                            "path" => "ivr2:14/test.wav",
                                            "file" => new CURLFile("audio/test.wav", "audio/wav", "test.wav") // File upload
                                        ];
                                        
                                        // Make the request
                                        $response = curl_post_request($url, $data);
                                        
                                        echo "Response: " . $response;
                                        
                                        
                                        # POST request helper function
                                        function curl_post_request(string $url, $data, array $headers = [])
                                        {
                                            // Initialize cURL
                                            $ch = curl_init();
                                        
                                            // Set cURL options
                                            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
                                            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
                                            curl_setopt($ch, CURLOPT_URL, $url);
                                            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                                            curl_setopt($ch, CURLOPT_POST, true);
                                            curl_setopt($ch, CURLOPT_POSTFIELDS, $data); // Multipart data
                                        
                                            // Set headers (DO NOT manually set Content-Type for multipart)
                                            curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
                                        
                                            // Execute request
                                            $response = curl_exec($ch);
                                        
                                            // Handle errors
                                            if (curl_errno($ch)) {
                                                throw new Exception(curl_error($ch));
                                            } else {
                                                return $response;
                                            }
                                        }
                                        
                                        תגובה 1 תגובה אחרונה תגובה ציטוט 1
                                        • פוסט ראשון
                                          פוסט אחרון