• ×”×Ø×©×ž×”
    • התחברות
    • חיפוש
    • דף הבית
    • אינדקה ×§×™×©×•×Ø×™×
    • פוהטים ××—×Ø×•× ×™×
    • ×§×‘×œ×Ŗ התראות מהדפדפן
    • ×ž×©×Ŗ×ž×©×™×
    • חיפוש בהגדרות ×”×ž×Ŗ×§×“×ž×•×Ŗ
    • חיפוש גוגל ×‘×¤×•×Ø×•×
    • ניהול ×”×ž×¢×Ø×›×Ŗ
    • ניהול ×”×ž×¢×Ø×›×Ŗ - שרת private

    šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!

    עזרה הדדית ×œ×ž×©×Ŗ×ž×©×™× ×ž×Ŗ×§×“×ž×™×
    8
    29
    474
    טוען פוהטים נוהפים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • הגיבו כנושא
    התחברו בכדי ×œ×¤×Ø×”× תגובה
    נושא זה נמחק. רק ×ž×©×Ŗ×ž×©×™× עם הרשאות ×ž×Ŗ××™×ž×•×Ŗ יוכלו ×œ×¦×¤×•×Ŗ בו.
    • פ
      פלוה @y6714453 נערך ×œ××—×Ø×•× ×” על ידי

      @y6714453
      אשמח ×œ×™×¦×•×Ø ××™×Ŗ×š קשר בנושא!

      Y תגובה 1 תגובה אחרונה תגובה ציטוט 0
      • Y
        y6714453 @פלוה נערך ×œ××—×Ø×•× ×” על ידי

        @פלוה כתב ×‘šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!:

        @y6714453
        אשמח ×œ×™×¦×•×Ø ××™×Ŗ×š קשר בנושא!

        y6714453@gmail.com

        תגובה 1 תגובה אחרונה תגובה ציטוט 1
        • הוזכר על-ידי  Y y6714453 
        • י
          יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי

          אשמח ×œ×¢×–×Ø×”. עשיתי את הקוד הזה ברנדר.
          מה ××ž×•×Ø ×œ×”×™×•×Ŗ ×ž×•×’×“×Ø בשלוחה של הזיהוי דיבור? (זה קוד ×©××ž×•×Ø לשלוח אלי את ×”×ž×Ø×Ŗ הדיבור של המאזין

          import os
          import tempfile
          import logging
          import requests
          from flask import Flask, request, jsonify
          from pydub import AudioSegment
          import speech_recognition as sr
          
          # ------------------ Logging ------------------
          logging.basicConfig(
              level=logging.INFO,
              format="%(asctime)s | %(levelname)s | %(message)s",
              datefmt="%H:%M:%S"
          )
          
          app = Flask(__name__)
          
          # ------------------ Telegram Config ------------------
          
          TELEGRAM_BOT_TOKEN = "***"
          TELEGRAM_CHAT_ID = "***"
          
          # ------------------ Helper Functions ------------------
          
          def add_silence(input_path: str) -> AudioSegment:
              audio = AudioSegment.from_file(input_path, format="wav")
              silence = AudioSegment.silent(duration=1000)
              return silence + audio + silence
          
          def recognize_speech(audio_segment: AudioSegment) -> str:
              recognizer = sr.Recognizer()
              try:
                  with tempfile.NamedTemporaryFile(suffix=".wav", delete=True) as temp_wav:
                      audio_segment.export(temp_wav.name, format="wav")
                      with sr.AudioFile(temp_wav.name) as source:
                          data = recognizer.record(source)
                      text = recognizer.recognize_google(data, language="he-IL")
                      logging.info(f"Recognized text: {text}")
                      return text
              except sr.UnknownValueError:
                  return ""
              except Exception as e:
                  logging.error(f"Speech recognition error: {e}")
                  return ""
          
          def send_to_telegram(text: str, file_url: str):
              message = f"šŸŽ™ļø הודעה חדשה ×ž×”×ž×¢×Ø×›×Ŗ:\n\n{text}\n\nšŸ”— קובׄ ההקלטה:\n{file_url}"
              url = f"https://api.telegram.org/bot{TELEGRAM_BOT_TOKEN}/sendMessage"
              requests.post(url, data={"chat_id": TELEGRAM_CHAT_ID, "text": message})
          
          # ------------------ API Endpoint ------------------
          
          @app.route("/upload_audio", methods=["GET"])
          def upload_audio():
              file_url = request.args.get("file_url")
              if not file_url:
                  return jsonify({"error": "Missing 'file_url' parameter"}), 400
          
              logging.info(f"Downloading audio from: {file_url}")
              try:
                  response = requests.get(file_url, timeout=15)
                  if response.status_code != 200:
                      return jsonify({"error": "Failed to download audio file"}), 400
          
                  with tempfile.NamedTemporaryFile(suffix=".wav", delete=True) as temp_input:
                      temp_input.write(response.content)
                      temp_input.flush()
          
                      processed_audio = add_silence(temp_input.name)
                      recognized_text = recognize_speech(processed_audio)
          
                      if recognized_text:
                          send_to_telegram(recognized_text, file_url)
                          return jsonify({"recognized_text": recognized_text})
                      else:
                          send_to_telegram(" לא זוהה דיבור.", file_url)
                          return jsonify({"recognized_text": ""})
          
              except Exception as e:
                  logging.error(f"Error: {e}")
                  return jsonify({"error": str(e)}), 500
          
          # ------------------ Run ------------------
          if __name__ == "__main__":
              port = int(os.environ.get("PORT", 5000))
              app.run(host="0.0.0.0", port=port)
          
          Y תגובה 1 תגובה אחרונה תגובה ציטוט 0
          • Y
            y6714453 @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי

            @יעקב-1
            בשלוחה אתה ×¦×Ø×™×š ×œ×”×’×“×™×Ø שישלח את ההקלטה לשרת
            לכן תגדיר כך

            type=api
            api_link=שים את הלינק של השרת
            
            api_000=stockname,no,record,/9,,no,yes
            
            ביטול השליחה בניתוק (מומלׄ)
            api_hangup_send=no
            
            ×ž×¢×‘×Ø בהיום
            api_end_goto=/שים את הנתיב ×œ×ž×¢×‘×Ø
            

            ואל תשכח ×œ×”×¢×œ×•×Ŗ קובׄ שמע בשם 000 לשלוחה ×©××•×ž×Ø משהו כמו "אנא הקלט את ×”×•×“×¢×Ŗ×š, ובהיום הקש ×”×•×œ×ž×™×Ŗ"

            י תגובה 1 תגובה אחרונה תגובה ציטוט 0
            • י
              יעקב 1 @y6714453 נערך ×œ××—×Ø×•× ×” על ידי יעקב 1

              @y6714453 תודה!

              Y C 2 תגובות תגובה אחרונה תגובה ציטוט 0
              • Y
                y6714453 @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי y6714453

                @יעקב-1
                בשביל למנוע שגיאה - ×Ŗ×—×œ×™×£ בהגדרות השלוחה במקום

                api_000=stockname,no,record,/9,,no,yes
                

                את זה:

                api_000=file_url,no,record,/9,,no,yes
                

                בגלל שבקוד - הוא מחפש ×¤×Ø×ž×˜×Ø בשם file_url

                לפי השורה הזאת בקוד

                    file_url = request.args.get("file_url")
                

                י תגובה 1 תגובה אחרונה תגובה ציטוט 0
                • C
                  CUBASE @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי

                  @יעקב-1 ×”×¦×œ×—×Ŗ ×œ×”×Ŗ×§×™×Ÿ ffmpeg על Render בלי שהוא קרה ×‘×Ŗ×”×œ×™×š הבנייה??

                  י Y 2 תגובות תגובה אחרונה תגובה ציטוט 0
                  • י
                    יעקב 1 @CUBASE נערך ×œ××—×Ø×•× ×” על ידי

                    @CUBASE כתב ×‘šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!:

                    ffmpeg

                    לא קרה

                    תגובה 1 תגובה אחרונה תגובה ציטוט 0
                    • י
                      יעקב 1 @y6714453 נערך ×œ××—×Ø×•× ×” על ידי

                      @y6714453 יש לי ×‘××ž×Ŗ שגיאות בגלל נתיב שגוי
                      מה זה ה9 בשורה הזאת?
                      api_000=file_url,no,record,/9,,no,yes

                      Y תגובה 1 תגובה אחרונה תגובה ציטוט 0
                      • Y
                        y6714453 @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי y6714453

                        @יעקב-1
                        איפה ההקלטה × ×©×ž×Ø×Ŗ
                        ציטוט מהאשכול של המודול:

                        ×”×¢×Ø×š הרביעי (הקלטה)
                        ×‘×¢×Ø×š זה × ×™×Ŗ×Ÿ ×œ×”×’×“×™×Ø היכן ×Ŗ×™×©×ž×Ø ההקלטה ×‘×ž×¢×Ø×›×Ŗ
                        ברירת מחדל זה × ×©×ž×Ø בתיקייה ×©×ž×•×’×“×Ø×Ŗ ב-api_dir
                        × ×™×Ŗ×Ÿ ×œ×”×’×“×™×Ø מיקום שונה
                        לדוגמה
                        /8 (הלש שמונה)
                        ×‘×ž×§×Ø×” כזה ההקלטה ×Ŗ×™×©×ž×Ø בשלוחה 8
                        הערה: חובה לשים / ×‘×”×Ŗ×—×œ×”. אהור לשים / בהוף

                        י תגובה 1 תגובה אחרונה תגובה ציטוט 1
                        • Y
                          y6714453 @CUBASE נערך ×œ××—×Ø×•× ×” על ידי

                          @CUBASE כתב ×‘šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!:

                          @יעקב-1 ×”×¦×œ×—×Ŗ ×œ×”×Ŗ×§×™×Ÿ ffmpeg על Render בלי שהוא קרה ×‘×Ŗ×”×œ×™×š הבנייה??

                          למה שיקרוה? זה נחשב הפריה כבדה, או לא × ×Ŗ×ž×›×Ŗ??

                          C תגובה 1 תגובה אחרונה תגובה ציטוט 0
                          • י
                            יעקב 1 @y6714453 נערך ×œ××—×Ø×•× ×” על ידי

                            @y6714453 ××ž×•×Ø×” ×œ×”×™×•×Ŗ ×Ø×©×•×ž×” שם השלוחה שבה ההקלטה ×Ŗ×™×©×ž×Ø או שממנה יקח את ההקלטה ×œ×”×ž×Ø×”? הוא כל הזמן ×ž×—×–×™×Ø שגיאה שלא מוצא את הנתיב 6&file_url=/9/000.wav

                            Y תגובה 1 תגובה אחרונה תגובה ציטוט 0
                            • Y
                              y6714453 @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי y6714453

                              @יעקב-1 כתב ×‘šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!:

                              @y6714453 ××ž×•×Ø×” ×œ×”×™×•×Ŗ ×Ø×©×•×ž×” שם השלוחה שבה ההקלטה ×Ŗ×™×©×ž×Ø או שממנה יקח את ההקלטה ×œ×”×ž×Ø×”? הוא כל הזמן ×ž×—×–×™×Ø שגיאה שלא מוצא את הנתיב 6&file_url=/9/000.wav

                              השלוחה שבה ההקלטה ×Ŗ×™×©×ž×Ø - בלי קשר למה שהשרת מקבל, (אתה יכול גם ×œ×”×©××™×Ø את ×”×¢×Ø×š ריק ואז ההקלטה ×Ŗ×™×©×ž×Ø בתיקייה api_dir).
                              זה לא ההיבה לשגיאה.

                              ×Ŗ×¢×œ×” פה את השגיאה שאתה מקבל

                              י תגובה 1 תגובה אחרונה תגובה ציטוט 0
                              • י
                                יעקב 1 @y6714453 נערך ×œ××—×Ø×•× ×” על ידי יעקב 1

                                @y6714453
                                -כתבתי בשלוחה במקום 9 - 9715, והוא לא מוצא נתיב
                                11:18:22 | מידע | ×ž×•×Ø×™×“ אודיו מ: https://www.call2all.co.il/ym/ivr2/9715/000.wav
                                11:18:23 | שגיאה | הורדת הקובׄ נכשלה , הטטוה: 404
                                11:18:23 | מידע | 127.0.0.1 - - [21/××•×§×˜×•×‘×Ø/2025 11:18:23] " קבל /upload_audio?ApiCallId=41c5197c930a84efea2dd8376b949af8994aa0cc&ApiYFCallId=6e6431b4-32d1-4b97-931b-f908c52a096d&ApiDID=&ApiRealDID=&ApiPhone=&ApiExtension=9713&ApiTime=1761045496&file_url=/9715/000.wav HTTP/1.1 " 400 -
                                .

                                C תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                • C
                                  CUBASE @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי CUBASE

                                  @יעקב-1 הכתובת אינה נכונה, זה ××ž×•×Ø ×œ×”×™×•×Ŗ

                                  https://www.call2all.co.il/ym/api/DownloadFile?token=$token&path=ivr2:/9715/000.wav
                                  
                                  י תגובה 1 תגובה אחרונה תגובה ציטוט 1
                                  • C
                                    CUBASE @y6714453 נערך ×œ××—×Ø×•× ×” על ידי

                                    @y6714453 כתב ×‘šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!:

                                    @CUBASE כתב ×‘šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!:

                                    @יעקב-1 ×”×¦×œ×—×Ŗ ×œ×”×Ŗ×§×™×Ÿ ffmpeg על Render בלי שהוא קרה ×‘×Ŗ×”×œ×™×š הבנייה??

                                    למה שיקרוה? זה נחשב הפריה כבדה, או לא × ×Ŗ×ž×›×Ŗ??

                                    בעבר × ×™×”×™×Ŗ×™ ×œ×”×Ŗ×§×™×Ÿ את זה ולא הלך לי, ג׳ימיני טען שזו הפריה כבדה מידי, כנראה ×”×™×Ŗ×” בעיה אחרת וג׳ימיני ×—×Ø×˜×˜ ×Ŗ×³×ž×•×— (כמו כל פעם שאין לו מה ×œ×•×ž×Ø..)

                                    @y6714453 כתב ×‘šŸŽ™ļøšŸŽÆ זיהוי דיבור בעברית – חינם, איכותי, מדויק!!:

                                    ואז ההקלטה ×Ŗ×™×©×ž×Ø בתיקייה api_dir

                                    ×˜×¢×•×Ŗ, ההקלטה ×Ŗ×™×©×ž×Ø איפה ×©×ž×•×’×“×Ø ב-api_dir שזו הגדרה מאיפה ייקח את הקבצים בשביל ה-api, לדוג אם ב-api_dir ×ž×•×’×“×Ø /1 אז כשתדפיה id_list_message=f-000 זה ישמיע את הקובׄ /1/000.wav ולא את הקובׄ 000 מהשלוחה הנוכחית

                                    י תגובה 1 תגובה אחרונה תגובה ציטוט 1
                                    • י
                                      יעקב 1 @CUBASE נערך ×œ××—×Ø×•× ×” על ידי

                                      @CUBASE תודה ! עובד לי מעולה
                                      יש אפשרות ×œ×”×’×“×™×Ø שאחרי ×”×”×ž×Ø×” ישמיע למאזין את הטקהט ×©×”×•×ž×Ø והוא יבחר אם לאשר?
                                      או לכה"פ אפשרות שישמע את ההקלטה ×”×Ø×’×™×œ×” שלו ויבחר אם לאשר, כי כרגע ×‘×”×•×œ×ž×™×Ŗ זה מיד ×ž××©×Ø

                                      C 2 תגובות תגובה אחרונה תגובה ציטוט 0
                                      • C
                                        CUBASE @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי

                                        @יעקב-1 אין לי מושג ×‘×¤×™×™×Ŗ×•×Ÿ

                                        תגובה 1 תגובה אחרונה תגובה ציטוט 1
                                        • C
                                          CUBASE @יעקב 1 נערך ×œ××—×Ø×•× ×” על ידי

                                          @יעקב-1

                                          תבקש מ-gpt או gemini שאת ×”×Ŗ×ž×œ×•×œ ידפיה כך:

                                          id_list_message=t-{the text without '-' '.' '"'}&read=m-3230=confirm,,1,1,,NO,,,,12,,,,,no
                                          

                                          ואם ×”×Ŗ×§×‘×œ ×¤×Ø×ž×˜×Ø confirm ×©×”×¢×Ø×š שלו הוא 1 אז ×”×Ŗ×ž×œ×•×œ ×ž××•×©×Ø ואם 2 אז יש ×œ×Ŗ×ž×œ×œ מחדש ולהדפיה שוב את ×”×Ŗ×ž×œ×•×œ כדלעיל

                                          תגובה 1 תגובה אחרונה תגובה ציטוט 1
                                          • י
                                            יעקב 1 @CUBASE נערך ×œ××—×Ø×•× ×” על ידי יעקב 1

                                            תודה! עובד מעולה

                                            תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                            • פוהט ×Ø××©×•×Ÿ
                                              פוהט ××—×Ø×•×Ÿ