@שואל-שאלה
הפיתרון הוא
הפקודה - CallExtensionBridging
הפוסטים הטובים ביותר שנוצרו על ידי 772250096
-
RE: הפעלת קמפיין דרך סקריפט
פוסטים אחרונים שנוצרו על ידי 772250096
-
RE: הפעלת קמפיין דרך סקריפט
@שואל-שאלה
הפיתרון הוא
הפקודה - CallExtensionBridging -
הפעלת קמפיין דרך סקריפט
יש לי קוד להעלאה של קבצים לימות המשיח המערכת מקבלת את הקובץ בשלוחה הנכונה, משמעיה אותו כשמחייגם ומקישים על השלוחה הנכונה אך כשהמערכת מפעילה את הקמפיין דרך הסקריפט היא שותקת, למרות שהגדרתי את הקמפיין לשלוחה הנכונה
const YEMOT_SYSTEM_PHONE = '07****'; // מספר המערכת שלך בימות המשיח const YEMOT_PASSWORD = '****'; // הסיסמה שלך לימות המשיח const SHEET_NAME = 'avodot'; // שם הלשונית המדויק באקסל const RANGE_NAME = 'A1'; // התא ממנו המערכת קוראת את הטקסט // כתובות ה-API של ימות המשיח const YEMOT_UPLOAD_URL = "https://www.call2all.co.il/ym/api/UploadFile"; const YEMOT_DIAL_URL = "https://www.call2all.co.il/ym/api/RunCampaign"; function triggerOutgoingCall() { const TARGET_PHONE = '05****'; // מספר הטלפון אליו תרצי שהמערכת תחייג const textToSay = 'עבודות לביצוע בדיקה סופית בהצלחה'; // 1. הדביקי כאן את הטוקן המלא והתקין שלך (השאירי את הגרשיים) const TOKEN = '*****'; // הגדרת נתיב התיקייה בלבד (בלי שם הקובץ) const folderPath = "ivr2:6"; try { // שלב א': יצירת קובץ שמע מהטקסט באמצעות גוגל תרגום logMessage("מייצר קובץ שמע מהטקסט..."); const ttsUrl = "https://translate.google.com/translate_tts?ie=UTF-8&tl=he&client=tw-ob&q=" + encodeURIComponent(textToSay); const audioBlob = UrlFetchApp.fetch(ttsUrl).getBlob().setName("000.wav"); // שלב ב': העלאת הקובץ עם הפרמטרים המופרדים שהשרת דורש uploadSmallFile(audioBlob, TOKEN, folderPath); // שלב ג': הפעלת חיוג הקמפיין והפניה לשלוחה 6 logMessage("מפעיל את חיוג הקמפיין..."); const dialPayload = { token: TOKEN, template: '426588', phones: TARGET_PHONE, blending: 'no', extension: 'ivr2:6' // מפנה ישירות לתוך שלוחה 6 בשרת ivr2 }; const dialOptions = { method: 'post', payload: dialPayload, muteHttpExceptions: true }; const dialResponse = UrlFetchApp.fetch(YEMOT_DIAL_URL, dialOptions); logMessage("תשובת שרת חיוג סופית: " + dialResponse.getContentText()); } catch (error) { logMessage(`שגיאה בתהליך המשולב: ${error.toString()}`, 'error'); } } /** * פונקציית העלאה מתוקנת לפי דרישות השרת לפרמטר path */ function uploadSmallFile(blob, token, path) { logMessage(`מעלה קובץ שמע כ-000.wav לתיקייה: ${path}`); try { const options = { method: 'post', payload: { token: token, convertAudio: 'true', path: path, // ⭐️ התיקון: שליחת התיקייה בלבד (למשל ivr2:6) qqfile: blob, qqfileName: "000.wav" // הגדרת שם הקובץ הסופי שייווצר בשרת }, muteHttpExceptions: true }; const response = UrlFetchApp.fetch(YEMOT_UPLOAD_URL, options); logMessage(`תשובת שרת העלאה: ${response.getContentText()}`); if (response.getResponseCode() !== 200 || response.getContentText().includes('"responseStatus":"ERROR"')) { throw new Error(`העלאת הקובץ נכשלה: ${response.getContentText()}`); } logMessage(`הקובץ 000.wav הועלה ועודכן בהצלחה בשרת!`); } catch (error) { logMessage(`שגיאה בפונקציית העלאת קובץ: ${error.toString()}`, 'error'); throw error; } } // פונקציית עזר לרישום לוגים function logMessage(message, type) { Logger.log(`[${type || 'info'}] ${message}`); } -
RE: הקלטה ושליחה לשרת את הנתיב של קובץ ההקלטה
@BEN-ZION
רק פעם אחת נשמר לי בתקייה שציינת
בניסיונות נוספים לא נשמרת ההקלטה . למה? -
RE: הקלטה ושליחה לשרת את הנתיב של קובץ ההקלטה
טעות - המערכת מקליטה אך דורסת את ההקלטה הקודמת , אני רוצה שתייצר לי בכל פעם הקלטה חדשה.
-
RE: הקלטה ושליחה לשרת את הנתיב של קובץ ההקלטה
מה שקורה כעת המערכת משמיעה את קובץ שהוקלט ומחכה להקשה, אח"כ משמיעה ביפ ואח"כ נא הקליטו את הודעתכם... וחוזרת מיד לתפריט הראשי
ללא שמירת הודעה בשלוחה4 -
הקלטה ושליחה לשרת את הנתיב של קובץ ההקלטה
אני רוצה שהמשתמש יקליט את ההודעה ושהשרת יקבל את הנתיב של קובת ההקלטה שנוכל לפתוח את השמע דרך השרת
ype=api
api_link=https://EST.nywhere.com/yemot_action
api_add_0=action=note
api_000=ZAW,no,record,/4,file_name.wav,no,yes,noapi_hangup_send=no
היכן הטעות שלי?
-
RE: השמעת הקלטה ואז הכנסת קלט API
@יב תודה תודה עזרת לי מאוד!!!!!!!!!!
הצליח!! -
RE: השמעת הקלטה ואז הכנסת קלט API
כתב בהשמעת הקלטה ואז הכנסת קלט API:
מה הטעות כאן ?
type=api
api_link=https://ESTYG.pythonanywhere.com/yemot_action
api_add_0=action=kmהגדרת השאלה:
val = שם הפרמטר שהשרת יקבל
1 = מינימום ספרות (כדי שלא יגיד שלא הקשת)
10 = מקסימום ספרות
0101 = קובץ שמע של "נא הקש קילומטראז'"
7 = כמות ניסיונות
yes = להשמיע את מה שהוקש לאישור
api_000=val,1,10,0101,7,yes,No, -
RE: השמעת הקלטה ואז הכנסת קלט API
בהודעה נאמר "הקש מס' קילומטרים ולסיום #" וזה מה שהמשתמש צריך לעשות. אך כשמקישים המערכת אומרת
" לא הקשתם את מינימום הספרות הנדרשות"
אם לא מקישים בכלל המערכת אומרת
"לא הוקשה בחירה" -
RE: השמעת הקלטה ואז הכנסת קלט API
הנתונים נשלחים לגיליון שיטס. בשלוחה זו המערכת מבקשת מהמשתמש מס' קילומטרים , אך המערכת לא מתייחסת להקשות וישנה הודעה "לא הקשתם את מינימום הספרות הנדרשות", ובמקום שיכנס לשיטס מס קילומטרים נכנסת השעה כמו בשלוחות אחרות במערכת.