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

    בדיקת קוד פייתון

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

      @ישראללוי
      זה לא קורא טוב את הערכים מה .env
      איך רשמת ב ENV. (בלי סיסמה)

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

        @פיסטוק-פרווה
        YEMOT_USERNAME=************
        YEMOT_PASSWORD=*********
        הטוקן והנתיב צריכים להיות בעדר או בפרמס?

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

          @ישראללוי
          נראה לי שאפשר גם וגם אבל עדיף בפרמס

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

            @ישראללוי כתב בבדיקת קוד פייתון:

            YEMOT_API_USERNAME

            תוסיף פרינט של היוזר והסיסמה בהפעלת הקוד אחרי שזה נמשך מה env

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

              @פיסטוק-פרווה כתב בבדיקת קוד פייתון:

              @ישראללוי כתב בבדיקת קוד פייתון:

              YEMOT_API_USERNAME

              תוסיף פרינט של היוזר והסיסמה בהפעלת הקוד אחרי שזה נמשך מה env

              הדפסתי והערכים תקינים

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

                לא הבנתי למה צריך ffmpeg?, המערכת ממירה לבד את הקובץ

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

                  @פיסטוק-פרווה כתב בבדיקת קוד פייתון:

                  @ישראללוי
                  נראה לי שאפשר גם וגם אבל עדיף בפרמס

                  זה המעודכן

                          with open(local_wav_path, 'rb') as f:
                              # שם הקובץ בהעלאה צריך להיות עם סיומת .wav
                              response = session.post(f"{YEMOT_API_URL}/UploadFile",
                                  params={
                                      "token": f"{YEMOT_API_USERNAME}:{YEMOT_API_PASSWORD}",
                                      "path":"IVR2/8/a.wav"
                                  },
                                  headers={
                                      "files": files
                                  }
                              , timeout=90)
                  
                  

                  תקין?

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

                    @ישראללוי ה-path שוב לא תקין, תחליף ל-ivr/8/a.wav

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

                      @CUBASE כתב בבדיקת קוד פייתון:

                      @ישראללוי ה-path שוב לא תקין, תחליף ל-ivr/8/a.wav

                      זה המעודכן

                              with open(local_wav_path, 'rb') as f:
                                  # שם הקובץ בהעלאה צריך להיות עם סיומת .wav
                                  files = {'file': (f'{remote_filename}.wav', f, 'audio/wav')}
                                  response = session.post(f"{YEMOT_API_URL}/UploadFile",
                                      params={
                                          "token": f"{YEMOT_API_USERNAME}:{YEMOT_API_PASSWORD}",
                                          "path":"ivr/8/a.wav"
                                      },
                                      headers={
                                          "files": files
                                      }
                                  , timeout=90)
                      
                      

                      תקין?

                      עריכה זה המעודכן

                              with open(local_wav_path, 'rb') as f:
                                  # שם הקובץ בהעלאה צריך להיות עם סיומת .wav
                                  files = {'file': (f'{remote_filename}.wav', f, 'audio/wav')}
                                  response = session.post(f"{YEMOT_API_URL}/UploadFile",
                                      params={
                                          "token": f"{YEMOT_API_USERNAME}:{YEMOT_API_PASSWORD}",
                                          "path":"ivr/8/a.wav"
                                      },
                                      files=files,
                                      headers={
                                          "Content-Type": "multipart/form-data"
                                      },
                                      timeout=90
                                  )
                      
                      
                      י תגובה 1 תגובה אחרונה תגובה ציטוט 0
                      • י
                        ישראללוי @ישראללוי נערך לאחרונה על ידי

                        @ישראללוי כתב בבדיקת קוד פייתון:

                        @CUBASE כתב בבדיקת קוד פייתון:

                        @ישראללוי ה-path שוב לא תקין, תחליף ל-ivr/8/a.wav

                        זה המעודכן

                                with open(local_wav_path, 'rb') as f:
                                    # שם הקובץ בהעלאה צריך להיות עם סיומת .wav
                                    files = {'file': (f'{remote_filename}.wav', f, 'audio/wav')}
                                    response = session.post(f"{YEMOT_API_URL}/UploadFile",
                                        params={
                                            "token": f"{YEMOT_API_USERNAME}:{YEMOT_API_PASSWORD}",
                                            "path":"ivr/8/a.wav"
                                        },
                                        headers={
                                            "files": files
                                        }
                                    , timeout=90)
                        
                        

                        תקין?

                        עריכה זה המעודכן

                                with open(local_wav_path, 'rb') as f:
                                    # שם הקובץ בהעלאה צריך להיות עם סיומת .wav
                                    files = {'file': (f'{remote_filename}.wav', f, 'audio/wav')}
                                    response = session.post(f"{YEMOT_API_URL}/UploadFile",
                                        params={
                                            "token": f"{YEMOT_API_USERNAME}:{YEMOT_API_PASSWORD}",
                                            "path":"ivr/8/a.wav"
                                        },
                                        files=files,
                                        headers={
                                            "Content-Type": "multipart/form-data"
                                        },
                                        timeout=90
                                    )
                        
                        

                        זה תקין?

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

                          @ישראללוי

                          from uuid import uuid4
                          
                          import requests    
                          
                          class Yemot:
                              BASE_URL = "https://www.call2all.co.il/ym/api/"
                          
                              def __init__(
                                      self,
                                      user_name: str,
                                      password: str | int,
                              ) -> None:
                                  self.token = f"{user_name}:{password}"
                                  self.params = {
                                      "token": self.token
                                  }
                          
                              def upload_file(self, path: str, blob: bytes, file_name: str, base_path: str = "ivr2:/") -> bool:
                                  total_size = len(blob)
                                  chunk_size = 49 * 1024 * 1024
                                  chunks = [blob[offset:offset + chunk_size] for offset in range(0, total_size, chunk_size)]
                                  if len(chunks) == 1:
                                      return self._upload_small_file(path, blob, file_name, base_path)
                                  else:
                                      return self._upload_large_file(path, chunks, file_name, total_size, base_path)
                          
                              def _upload_small_file(self, path: str, blob: bytes, file_name: str, base_path: str) -> bool:
                                  data = {
                                      "path": f"{base_path}{path}",
                                      "convertAudio": "1",
                                      "autoNumbering": "true",
                                  }
                                  data.update(self.params)
                                  files = {"file": (file_name, blob)}
                                  url = f"{self.BASE_URL}UploadFile"
                                  response = requests.post(url, files=files, data=data).json()
                                  return response["responseStatus"] == "OK"
                          
                              def _upload_large_file(self, path: str, chunks: list[bytes], file_name: str, content_size: int, base_path: str) -> bool:
                                  qquuid = str(uuid4())
                                  offset = 0
                                  for index, chunk in enumerate(chunks):
                                      data = {
                                          "path": f"{base_path}{path}",
                                          "qquuid": qquuid,
                                          "convertAudio": "1",
                                          "autoNumbering": "true",
                                          "uploader": "yemot-admin",
                                          "qqfilename": file_name,
                                          "qqtotalfilesize": content_size,
                                          "qqtotalparts": len(chunks),
                                          "qqchunksize": len(chunk),
                                          "qqpartbyteoffset": offset,
                                          "qqpartindex": index,
                                      }
                                      data.update(self.params)
                                      files = {
                                          "qqfile": chunk,
                                      }
                                      url = f"{self.BASE_URL}UploadFile"
                                      response = requests.post(url, data=data, files=files).json()
                                      if not response["success"]:
                                          print(f"Error uploading chunk {index}: {response}")
                                          return False
                                      offset += len(chunk)
                          
                                  data = {
                                      "path": f"{base_path}{path}",
                                      "uploader": "yemot-admin",
                                      "convertAudio": "1",
                                      "autoNumbering": "true",
                                      "qquuid": qquuid,
                                      "qqfilename": file_name,
                                      "qqtotalfilesize": content_size,
                                      "qqtotalparts": len(chunks),
                                  }
                                  data.update(self.params)
                                  response = requests.post(f"{self.BASE_URL}UploadFile?done", data=data).json()
                                  return response["responseStatus"] == "OK"
                          
                          
                          תגובה 1 תגובה אחרונה תגובה ציטוט 0
                          • פוסט ראשון
                            פוסט אחרון