דילוג לתוכן

רשתות

3.5k נושאים 38.6k פוסטים

קטגוריות משנה


  • 99 נושאים
    1k פוסטים
    צ
    @חיים-גל כתב בבקשת מידע | הפרשי שעות בנטפרי: יש למישהו מושג אם כשאני בחו"ל ויש לי אתרים מסוימים שנפתחים לפי שעות האם זה לפי השעון הישראלי? או כל מדינה והשעון שלה ואם לא איך לשנות זמן שישפיע על זה תודה! לנטפרי יש שרתים בישראל ארהב אנגליה וצרפת אם אתה נמצא במדינות אלו השעון יהיה השעה שלך אחרת זה יהיה אחד מאלו - אם אינני טועה אפשר להגדיר אצלם באיזה VPN להשתמש בכל אופן תוכל לפנות אל התמיכה שלהם (יש להם מוקד מיוחד לחול)
  • 611 נושאים
    5k פוסטים
    ע
    @ע-ה-דכו-ע אז GPT הביא לי תיקון: הבעיה בקוד שלך היא שקריאת execFile היא אסינכרונית, ולכן הפקודה console.log(` התוצאה היא ${textFromSpeech}`); call.id_list_message([...]); מתבצעת לפני שהפונקציה הפנימית של execFile סיימה לרוץ — כלומר, לפני ש־textFromSpeech עודכן בפועל. כדי לתקן זאת, יש לעטוף את execFile ב־Promise ולחכות לה באמצעות await. כך זה צריך להיראות: import { execFile } from 'child_process'; import { promisify } from 'util'; const execFileAsync = promisify(execFile); let textFromSpeech = ""; let ans = await call.read([{ type: 'text', data: "אנא הקלט משהו" }], "record"); console.log("ans:", ans); try { // מריץ את הסקריפט פייתון וממתין לתוצאה const { stdout } = await execFileAsync("python3", [ "/home/node.stamandsefer.co.il/public_html/recognize.py", ans ]); textFromSpeech = stdout.trim(); // הסר רווחים ושורות מיותרות console.log(`התוצאה היא: ${textFromSpeech}`); await call.id_list_message([ { type: 'text', data: `התוצאה היא ${textFromSpeech}` } ]); } catch (error) { console.error("Error:", error); await call.id_list_message([ { type: 'text', data: "אירעה שגיאה בעיבוד האודיו" } ]); } הסבר קצר: promisify(execFile) הופך את הפונקציה לגרסה תואמת ל־await. השורה await execFileAsync(...) גורמת לקוד להמתין עד שפייתון יסיים לעבד את הקלט ויחזיר פלט. לאחר מכן אתה יכול להשתמש בתוצאה בביטחון, בלי שהקוד ירוץ מוקדם מדי. אם תרצה — אפשר להוסיף גם טיפול במקרה שהקלט ans לא מכיל נתיב לקובץ תקין או שההקלטה נכשלה. די כמו שאמרת תודה רבה לכולם