@מייבין-במקצת
אפשר גם??
a775529301@gmail.com
-
RE: קול חדש ימות המשיח
@חזקי-ראזנבערג
אתה אומר מידיעה שיתחילו לגבות יחידות או מהשערה? -
RE: קול חדש ימות המשיח
עוד משהו הקול גם מעלה לשלוחה קובץ שמע
000.wav
ומשם זה משמיע -
קול חדש ימות המשיח
לא יודע אם שמתם לב אבל כל מי שלא מוגדר אצלו קול רובוט - נהיה עכשיו בברירת מחדל קול חדש שנשמע הרבה יותר אנושי אם יש למישהו פרטים נוספים כגון מה ההגדרה של זה ואיך אפשר להשמיע את זה בשלוחת API תודה רבה
-
אשף הגדרות אוטומטי למודל קבלת נתונים והקלטות
בניתי בעזרת גמיני ממשק נחמד עבור המודל המייגע הזה
לפניכם הקוד<!DOCTYPE html> <html lang="he" dir="rtl"> <head> <meta charset="UTF-8"> <title>מחולל הגדרות מקיף - קבלת הקלטות ונתונים</title> <style> body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background: #eef2f5; padding: 20px; color: #333; margin: 0; } .container { max-width: 900px; margin: auto; background: white; padding: 30px; border-radius: 10px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); } h1 { text-align: center; color: #0056b3; margin-bottom: 5px; } p.subtitle { text-align: center; color: #666; margin-bottom: 30px; } .section { background: #f9fbfd; border: 1px solid #e1e5ea; border-radius: 8px; padding: 20px; margin-bottom: 20px; } .section h3 { margin-top: 0; color: #004494; border-bottom: 2px solid #dde4eb; padding-bottom: 10px; } .form-group { margin-bottom: 15px; display: flex; flex-direction: column; } .form-row { display: flex; gap: 15px; margin-bottom: 15px; flex-wrap: wrap; } .form-row > div { flex: 1; min-width: 150px; } .checkbox-group { flex-direction: row; align-items: center; gap: 10px; } label { font-weight: bold; margin-bottom: 5px; font-size: 14px; } input[type="text"], input[type="number"], select { width: 100%; padding: 10px; border: 1px solid #ccd; border-radius: 5px; box-sizing: border-box; font-size: 14px; } input[type="checkbox"] { width: 18px; height: 18px; cursor: pointer; } .note { font-size: 12px; color: #777; margin-top: 3px; } button { background: #0056b3; color: white; border: none; padding: 15px; font-size: 18px; border-radius: 5px; cursor: pointer; width: 100%; font-weight: bold; transition: 0.3s; margin-top: 10px; } button:hover { background: #004494; } .add-btn { background: #28a745; padding: 10px; font-size: 16px; margin-bottom: 15px; width: auto;} .add-btn:hover { background: #218838; } textarea { width: 100%; height: 250px; margin-top: 20px; padding: 15px; font-family: monospace; direction: ltr; text-align: left; border: 2px solid #333; background: #f4f4f4; box-sizing: border-box; font-size: 16px; border-radius: 5px; } .question-list { background: #e9ecef; padding: 10px; border-radius: 5px; margin-bottom: 15px; font-family: monospace; direction: ltr; text-align: left; min-height: 40px; white-space: pre-wrap;} </style> </head> <body> <div class="container"> <h1>מחולל ההגדרות המלא והחכם</h1> <p class="subtitle">מודול: קבלת הקלטות ונתונים + כל ההגדרות + בוני שאלות</p> <form id="generatorForm"> <!-- 1. הגדרות כלליות ומעברים --> <div class="section"> <h3>הגדרות כלליות ומעברים</h3> <div class="form-row"> <div class="form-group"> <label>מה מתבצע קודם?</label> <select name="start_first"> <option value="">הקלטות קודם (ברירת מחדל)</option> <option value="data">הקשות (נתונים) קודם</option> </select> </div> <div class="form-group"> <label>מיקום קבצי השמע (השאר ריק לשלוחה הנוכחית):</label> <input type="text" name="recording_and_entering_data_folder_to_play" placeholder="למשל: /1/2"> </div> </div> <div class="form-row"> <div class="form-group"> <label>מעבר בסיום מוצלח:</label> <input type="text" name="recording_and_entering_data_end_goto" placeholder="/1"> </div> <div class="form-group"> <label>מעבר בשגיאה או חסימה:</label> <input type="text" name="recording_and_entering_data_error_goto" placeholder="/2"> </div> </div> <div class="form-row"> <div class="form-group"> <label>מעבר ביציאה באמצע:</label> <input type="text" name="recording_and_entering_data_exit_goto" placeholder="/3"> </div> <div class="form-group"> <label>מקש יציאה באמצע הרישום:</label> <input type="number" name="skip_key" placeholder="למשל: 0"> </div> </div> <div class="form-group checkbox-group"> <input type="checkbox" name="recording_and_entering_data_say_approval_number" value="no"> <label>בטל השמעת "נרשמת בהצלחה" בסיום</label> </div> </div> <!-- 2. תקשורת: Email, SMS, API --> <div class="section"> <h3>התראות ותקשורת (Email, SMS, API)</h3> <div class="form-group checkbox-group"> <input type="checkbox" name="set_ok_send_mail" value="yes"> <label>שלח דוא"ל בסיום מוצלח</label> </div> <div class="form-group checkbox-group"> <input type="checkbox" name="sms_sending_approval" value="yes"> <label>שלח SMS למאזין עם מספר האישור בסיום</label> </div> <div class="form-group checkbox-group"> <input type="checkbox" name="recording_and_entering_data_ok_sand_api" value="yes"> <label>שדר את אישור ההזמנה ב-API לשרת חיצוני</label> </div> <div class="form-row"> <div class="form-group"> <label>קישור ה-API החיצוני:</label> <input type="text" name="recording_and_entering_data_ok_sand_api_link" placeholder="https://yourdomain.com/api.php"> </div> </div> </div> <!-- 3. בונה שאלות דינמי - הקלטות --> <div class="section"> <h3>בונה שאלות חכם - הקלטות (000-049)</h3> <p class="note">הגדר כאן מאפיינים להקלטות קוליות (זמנים, המרה לטקסט וכו').</p> <div class="form-row"> <div> <label>מספר שאלה:</label> <input type="text" id="qb_rec_num" value="000" placeholder="000"> </div> <div> <label>זמן שקט מקסימלי (שניות):</label> <input type="number" id="qb_rec_silence" placeholder="ברירת מחדל"> </div> <div> <label>אורך הקלטה מקסימלי (שניות):</label> <input type="number" id="qb_rec_max" placeholder="ברירת מחדל"> </div> </div> <div class="form-row"> <div> <label>השמעת ההמרה ללקוח (אם הומרה):</label> <select id="qb_rec_tts"> <option value="">ללא השמעה למאזין</option> <option value="TTS">הקראת טקסט (TTS)</option> <option value="Digits">ספרות בודדות (Digits)</option> <option value="Number">מספר שלם (Number)</option> <option value="Alpha">אותיות באנגלית (Alpha)</option> </select> </div> </div> <div class="form-group checkbox-group"> <input type="checkbox" id="qb_rec_stt"> <label>המר הקלטה לטקסט (STT) - דורש יחידות!</label> </div> <div class="form-group checkbox-group"> <input type="checkbox" id="qb_rec_ask"> <label>שאל את הלקוח אם ההמרה תקינה (ask)</label> </div> <div class="form-group checkbox-group"> <input type="checkbox" id="qb_rec_skip"> <label>אפשר דילוג על השאלה (Skip) במקרה של שתיקה/אי זיהוי</label> </div> <button type="button" class="add-btn" onclick="addRecordQuestion()">+ הוסף שאלת הקלטה לרשימה</button> </div> <!-- 4. בונה שאלות דינמי - הקשות --> <div class="section"> <h3>בונה שאלות חכם - נתונים/הקשות (050-099)</h3> <p class="note">הגדר כאן שאלות מבוססות מקלדת טלפונית, מספרים ותאריכים.</p> <div class="form-row"> <div> <label>מספר שאלה:</label> <input type="text" id="qb_num" value="050" placeholder="050"> </div> <div> <label>סוג קלט:</label> <select id="qb_type"> <option value="Number">מספר שלם (ברירת מחדל)</option> <option value="Digits">הקראת ספרות</option> <option value="HebrewKeyboard">מקלדת עברית</option> <option value="EnglishKeyboard">מקלדת אנגלית</option> <option value="EmailKeyboard">מקלדת דוא"ל</option> <option value="DigitsKeyboard">מקלדת ספרות</option> <option value="Price">מחיר (שקלים ואגורות)</option> <option value="Date">תאריך לועזי</option> <option value="HebrewDate">תאריך עברי</option> <option value="TeudatZehut">תעודת זהות</option> <option value="Phone">מספר טלפון ישראלי</option> <option value="File">השמעת קובץ לפי הקשה</option> <option value="TTS">הקראת טקסט מותאם (TTS)</option> <option value="No">ללא הקראה</option> </select> </div> </div> <div class="form-row"> <div> <label>מקסימום תווים/ספרות:</label> <input type="number" id="qb_max" placeholder="ללא הגבלה"> </div> <div> <label>מינימום תווים/ספרות:</label> <input type="number" id="qb_min" placeholder="ברירת מחדל: 1"> </div> <div> <label>זמן המתנה (בשניות):</label> <input type="number" id="qb_timeout" placeholder="ברירת מחדל: 10"> </div> </div> <div class="form-row"> <div> <label>מקשים מותרים בלבד:</label> <input type="text" id="qb_allowed" placeholder="למשל: 1234567890*#"> </div> <div> <label>ערך מינימלי מותר:</label> <input type="text" id="qb_minval" placeholder="למשל: 50"> </div> <div> <label>ערך מקסימלי מותר:</label> <input type="text" id="qb_maxval" placeholder="למשל: 500"> </div> </div> <div class="form-group checkbox-group"> <input type="checkbox" id="qb_askno"> <label>בטל בקשת אישור (AskNo - מעבר מיידי)</label> </div> <div class="form-group checkbox-group"> <input type="checkbox" id="qb_skip"> <label>אפשר דילוג על השאלה בהקשת *# (Next)</label> </div> <div class="form-group checkbox-group"> <input type="checkbox" id="qb_blockstar"> <label>חסום הקשת כוכבית (BlockStar)</label> </div> <div class="form-group checkbox-group"> <input type="checkbox" id="qb_blockzero"> <label>חסום הקשת אפס (BlockZero - לא ניתן להזין 0)</label> </div> <button type="button" class="add-btn" onclick="addDigitsQuestion()">+ הוסף שאלת נתונים לרשימה</button> </div> <!-- רשימת השאלות שנבנו --> <div class="section"> <label>שאלות שהוגדרו מראש (ניתן לערוך ידנית את הטקסט):</label> <div class="question-list" id="questions_list" contenteditable="true"></div> </div> <button type="button" onclick="generateINI()">יצר קוד הגדרות סופי</button> </form> <textarea id="result" readonly placeholder="הקוד הסופי יופיע כאן..."></textarea> </div> <script> function addRecordQuestion() { let qNum = document.getElementById('qb_rec_num').value.trim() || '000'; let vals = new Array(8).fill(''); vals[0] = document.getElementById('qb_rec_silence').value; vals[1] = document.getElementById('qb_rec_max').value; if(document.getElementById('qb_rec_stt').checked) vals[2] = 'STT'; vals[3] = document.getElementById('qb_rec_tts').value; if(document.getElementById('qb_rec_ask').checked) vals[4] = 'ask'; if(document.getElementById('qb_rec_skip').checked) vals[5] = 'Skip'; while(vals.length > 0 && vals[vals.length-1] === '') { vals.pop(); } let qString = qNum + "-option=" + vals.join('-'); let list = document.getElementById('questions_list'); list.innerText += (list.innerText ? "\n" : "") + qString; let nextNum = parseInt(qNum, 10); if(!isNaN(nextNum)) { document.getElementById('qb_rec_num').value = String(nextNum + 1).padStart(3, '0'); } } function addDigitsQuestion() { let qNum = document.getElementById('qb_num').value.trim() || '050'; let vals = new Array(17).fill(''); vals[0] = document.getElementById('qb_max').value; vals[1] = document.getElementById('qb_min').value; vals[2] = document.getElementById('qb_timeout').value; let qType = document.getElementById('qb_type').value; if(qType !== 'Number') vals[3] = qType; if(document.getElementById('qb_askno').checked) vals[4] = 'AskNo'; vals[5] = document.getElementById('qb_allowed').value; if(document.getElementById('qb_skip').checked) vals[7] = 'Next'; vals[10] = document.getElementById('qb_minval').value; vals[11] = document.getElementById('qb_maxval').value; if(document.getElementById('qb_blockstar').checked) vals[12] = 'BlockStar'; if(document.getElementById('qb_blockzero').checked) vals[13] = 'BlockZero'; while(vals.length > 0 && vals[vals.length-1] === '') { vals.pop(); } let qString = qNum + "-option=" + vals.join('-'); let list = document.getElementById('questions_list'); list.innerText += (list.innerText ? "\n" : "") + qString; let nextNum = parseInt(qNum, 10); if(!isNaN(nextNum)) { document.getElementById('qb_num').value = String(nextNum + 1).padStart(3, '0'); } } function generateINI() { let ini = "type=recording_and_entering_data\n"; const form = document.getElementById('generatorForm'); const inputs = form.querySelectorAll('input[type="text"][name], input[type="number"][name], select[name]'); inputs.forEach(el => { if(el.value.trim() !== '') { ini += el.name + "=" + el.value.trim() + "\n"; } }); const checkboxes = form.querySelectorAll('input[type="checkbox"][name]'); checkboxes.forEach(el => { if(el.checked) { if (el.value === 'yes' || el.value === 'on') { ini += el.name + "=yes\n"; } else { ini += el.name + "=" + el.value + "\n"; } } }); const customQuestions = document.getElementById('questions_list').innerText.trim(); if (customQuestions) { ini += "\n; הגדרות שאלות (הקלטות והקשות):\n" + customQuestions + "\n"; } document.getElementById('result').value = ini; } </script> </body> </html>כמובן יש לשמור בקובץ בסיומת html אשמח להארות
(יש לקחת את הנתונים בעירבון מוגבל) אם מישהו מוצא פשלה שיעדכן! -
RE: האם שלוחת recv_fax עובדת גם כשלוחה פנימית?
@יעקב-יצחק
נראה לי שכן (מה שבדקתי אצלי עובד) אבל תנסה -
RE: האם שלוחת recv_fax עובדת גם כשלוחה פנימית?
@יעקב-יצחק
אתה יכול לשלוח לקידומת 153 (לדוג' 15377222770 -
RE: כותרת אוטומטית
@Hיוסף
תיצור קובץ חדש בשם 001-Title
להחליף את "001" בשם הקובץ הבא שהולך לעלות ותראה אם מוסיף לו כותרת אם מוסיף אתה יכול להעלאות 001 002 003 וכו' -
RE: אשמח לעזרה עם הקלטה וזיהוי דיבור חינמי
@קו-הרהיטים
יכול להיות לפעמים הבדל בשביל זה אתה צריך לשאול את אייל משולש -
RE: כותרת אוטומטית
@Hיוסף
השם של הכותרת הוא:001-Titleאז א. תבדוק מה קורה כשיש כותרת ואין קובץ.
ב. אם כשאין קובץ זה לא משמיע אז אתה יכול להעלות הרבה קבצים קדימה -
RE: דילוג על ערכים בקבלת נתונים בהקשות
@שלוחה-404
תודה רבההההה!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!



-
RE: דילוג על ערכים בקבלת נתונים בהקשות
@שלוחה-404
כלומר
במקום הערך שלא קיים לא צריך לשים כלום? (רק את הפסים שבין לבין) -
דילוג על ערכים בקבלת נתונים בהקשות
איך עושים את זה???
כלומר אני רוצה לרשום את הערך השני בלי הראשון אני עושה עם שני פסים או אחד??? -
RE: מערכת השמעת קבצים קובץ אחד ליום
@203431564
הכוללללללל בשביל לעשות 11 שלוחות?????????????????????????????????????????????? -
RE: אשמח לעזרה עם הקלטה וזיהוי דיבור חינמי
@קו-הרהיטים
לי זה עובד חלק תבדוק שוב שמוגדר ככהשמירת פרטי הקלטה api_add_3=txt=yesותנסה עוד פעם (זה לא עובד למפרע)
אם לא עובד אולי תנסה לשים טוקן אמיתי