מדריך | שמיעת המיילים בטלפון + צינתוק
-
-
@מנצפכ אתה ראית את הקוד?
-
@מנצפכ אתה ראית את הקוד?
-
@מנצפכ ראיתי ששלחת פה משהו אבל זה לא היה נראה תקין
-
@אבי_770 כן. אני מצרף לך קוד שמתאים לפרייבט.
נ.ב. מי שרוצה יכול להוסיף את זה כמשתנה במקור הקובץ./* Written by: abaye Contact: abaye.ym@gmail.com */ function MailToPhone() { let user = '079999999' // מספר המערכת let pass = '111111' // סיסמא let up = ':' let ph1 = 'ivr2:/' let ph2 = '5' //מס' השלוחה להשמעה let ph3 = '/' let path = (`${ph1}${ph2}${ph3}`) //נתיב let token = (`${user}${up}${pass}`) let tag = 'ToPhone' let tzintuk = '1' let label = GmailApp.getUserLabelByName(tag) let messages = label.getThreads() if (messages.length > 0) { for (let message of messages) { let firstmessage = message.getMessages()[0] let subject = firstmessage.getSubject() let sender = firstmessage.getFrom() let to = firstmessage.getTo() let boddy = firstmessage.getPlainBody() boddy = boddy.replace(/\s{2,}/g, ' ') boddy = boddy.substring(0,2200) + ' עד כאן ההודעה!' boddy = boddy.replace(new RegExp(`"|>|<`, 'g',), '') subject = subject.replace(new RegExp(`"|>|<`, 'g'), '') sender = sender.replace(new RegExp(`"|>|<`, 'g'), '') to = to.replace(new RegExp(`"|>|<`, 'g'), '') let textms = (`להלן הודעת המייל שהתקבלה: מאת "${sender} אל ${to} :הנושא ${subject} גוף ההודעה: ${boddy}"`) let listfile = JSON.parse(UrlFetchApp.fetch(`https://private.call2all.co.il/ym/api/GetIVR2Dir?token=${token}&path=${path}`)); if (listfile.responseStatus === 'OK') { let lastFileName = listfile.files .filter(file => file.fileType === 'AUDIO' || file.fileType === 'TTS') .map(file => file.name.split('.')[0]) .find(fileName => !isNaN(fileName)); let newNumber = Number(lastFileName || -1) + 1; let newName = newNumber.toString().padStart(3, '0'); let filePath = `${path}${newName}.tts`; let data = { 'token': token, 'what': filePath, 'contents': textms }; let options = { 'method' : 'post', 'payload' : data }; let response = UrlFetchApp.fetch('https://private.call2all.co.il/ym/api/UploadTextFile', options); UrlFetchApp.fetch(`https://private.www.call2all.co.il/ym/api/RunTzintuk?token=${token}&phones=tzl:${tzintuk}`) Logger.log(response.getContentText()); message.removeLabel(label) } } } }
@אביי אם אתה יכול לעלות את הקובץ שוב כי אין כרגע מעברי שורות
-
@אביי אם אתה יכול לעלות את הקובץ שוב כי אין כרגע מעברי שורות
-
@מנצפכ תודה רבה אבל משום מה זה עדיין לא עובד מוזר מאד
-
@מנצפכ תודה רבה אבל משום מה זה עדיין לא עובד מוזר מאד
-
@מנצפכ צודק לגמרי אני מעתיק את זה לגוגל סקריפט וכשאני עושה שמור פרוייקט הוא כותב "השמירה נכשלה אפשר לנסות שוב מאוחר יותר"
-
@מנצפכ צודק לגמרי אני מעתיק את זה לגוגל סקריפט וכשאני עושה שמור פרוייקט הוא כותב "השמירה נכשלה אפשר לנסות שוב מאוחר יותר"
-
@מנצפכ צודק לגמרי אני מעתיק את זה לגוגל סקריפט וכשאני עושה שמור פרוייקט הוא כותב "השמירה נכשלה אפשר לנסות שוב מאוחר יותר"
@שלמה-עכסדור אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
@מנצפכ צודק לגמרי אני מעתיק את זה לגוגל סקריפט וכשאני עושה שמור פרוייקט הוא כותב "השמירה נכשלה אפשר לנסות שוב מאוחר יותר"
זה ממש בעיה שנהייתה ביומיים האחרונים, ניסיתי מהרבה מחשבים, ופשוט אין אפשרות לשמור שום שינוי בגוגל סקריפט,
אולי @יוסי-מחשבים יוכל לעזור לנו בנושא? מדוע פתאום אי אפשר לשמור כלום בגוגל סקריפט? @A0533057932 ? -
@שלמה-עכסדור אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
@מנצפכ צודק לגמרי אני מעתיק את זה לגוגל סקריפט וכשאני עושה שמור פרוייקט הוא כותב "השמירה נכשלה אפשר לנסות שוב מאוחר יותר"
זה ממש בעיה שנהייתה ביומיים האחרונים, ניסיתי מהרבה מחשבים, ופשוט אין אפשרות לשמור שום שינוי בגוגל סקריפט,
אולי @יוסי-מחשבים יוכל לעזור לנו בנושא? מדוע פתאום אי אפשר לשמור כלום בגוגל סקריפט? @A0533057932 ? -
@מנצפכ אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
@שלמה-עכסדור אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
משום מה זה לא מסודר ע"פ שורות
אני לא יודע למה זה אבל זה לא בעיה בקוד אלא בפורום, משום מה בזמן האחרון נמחקים המעברי שורות אחרי קצת זמן, והפיתרון הוא לרענן
רעננתי
ואז שואל אותי אם לרענן
והכל זה רעננתי ואז כל הקוד נמחק
יש פיתרון? -
@אלף-שין
כנראה שנטפרי חסמו את האפשרות
בחדרי מחשבים כשאני נכנס לגוגל סקריפט מופיע כך
עד היום עבד רגיל ! -
@אבי_770 לא לכל דבר שמישהו עושה קיים הסבר הגיוני
גם אם מדובר בנטפרי
הרי באותה מידה אפשר לומר שכל השימוש באינטרנט הוא משעמום
כולל מייל@צדיק-תמים צודק...
אני לא מכיר את נטפרי ולא את הסינון שלי, פשוט בתמונה היה את הסיבה ניסי לחשוב מה גורם לשיעמום באתר.
ולגבי שגם מייל וכו' הוא שיעמום, אז מייל וכו' הרבה משתמשים בזה לשימוש נחוץ. ולכן זה לא חסום. אבל אתרים שאין מה לעשות בהם כל כך, והרבה נכנסים לשם אז הם חוסמים כי שמא אנשים נכנסים לשם משיעמום. -
ב"ה
תמיד רציתם לשמוע את המייל שלכם בטלפון ללא צורך בגישה כל פעם למחשב?
הנה הפיתרון!!בעזרת המדריך הזה תוכלו גם אתם לשמוע את המייל דרך הטלפון בהקראה אוטומטית וגם לקבל צינתוק כשהגיע מייל חדש
נחלק את זה לכמה שלבים כדי להקל על ההבנה
נתחיל עם המערכת
שלב א: קודם כל צריך להיות ברשותכם מערכת תוכן של חברת "ימות המשיח"
(באם אין לכם עדיין, התקשרו ל-0773137770 שלוחה 3>1 ופתחו מערכת חדשה. התקשרו מיד למערכת, הכניסו סיסמת מנהל כדי להפעיל את הקו)
עכשיו שימו
לבדוק באיזה שרת נמצא המערכת שלכם, יש שרת פריוט ויש שרת רגיל. כי זה משנה לקוד בהמשך.
שלב ב: הגדרת שלוחת ההשמעה
כדי שתוכלו לשמוע את המיילים צריך להיות במערכת שלוחת השמעת קבצים!
לאורך כל המדריך נלך עם שלוחה 1 כדוגמא להשמעת קבציםיכול להיות שכבר פתוח לכם שלוחה 1 והיא מוגדרת כהשמעת קבצים.
באם לא, ניכנס לאתר ניהול המערכת בשרת הרגיל או שרת הפריוט ניכנס ללשונית "מערכת תוכן" ונלחץ על "צור שלוחה חדשה", כבדוגמא
שלב ג: הגדרת והרשמה לרשימת צינתוקים
כדי שתוכלו לקבל צינתוק בעת הגעת מייל חדש תצטרכו להירשם לרשימת צינתוקים!
איך נרשמים? פותחים שלוחה חדשה, לדוגמא שלוחה 2, כמו שהסברנו לעיל ובמספר שלוחה כותבים 2
עכשיו נכנסים ללשונית "הגדרות מתקדמות", מוחקים את הקוד הקיים -אם קיים- ומניסים את הקוד הבאtype=tzintuk זהו הגדרת סוג השלוחה list_tzintuk=123 וזה שם רשימת הצינתוקים
(שם רשימת הצינתוקים יכול להיות כל מספר וכמה מספרים שתרצו [רק לשנות לפי זה בקוד הבא])
אחרי השמירה מתקשרים למערכת מקישים 2 ומאשרים הרשמה לקבלת צינתוקים
זהו. המערכת מוכנה להשמיע לכם את המיילים ולצנתק לכם על כל מייל חדש
עכשיו רק צריך שמיילים יכנסו לשלוחת השמעת הקבצים שבמערכת שיהיה מה להשמיע! איך עושים את זה?נעבור לשלבי המייל
שלב ד: יצירת והגדרת תווית
ניצור מסנן שכל מייל חדש שנכנס יקבל תווית שהסקריפט ירוץ עליו
איך עושים את זה? ובכן,
כשנכנסים למייל לוחצים על המסומן
ואז נפתח תפריט כזובוחרים לפי המסומן ולוחצים על 'מסנן חדש'
מאשרים את יצירת המסנן ועוברים לשלב הבא
בשלב הזה ממלאים ובוחרים בתווית חדשה, נותנים לה שם, מאשרים, ולוחצים על 'מסנן חדש'(אני נתתי לה שם 'לטלפון' וע"פ זה הקוד להלן)
מעתה, כל מייל חדש שיגיע למייל שלכם יקבל גם תווית.
שלב ה: הקוד וטריגר להפעלה
עכשיו צריך להכניס את הקוד לגוגל סקריפט שיעשה את כל הפעולות ויכניס את המייל למערכת
נכנסים לכאן פותחים 'פרויקט חדש' בצד ימין, נפתח פרויקט חדש עם קטע קוד. מוחקים את הקוד הקיים ומדביקים את הקוד הבאאם המערכת בשרת הפריוט
function mailToPhone() { const url = ('https://private.call2all.co.il/ym/api/'); const token = ('0734567890:1234'); const path = ('ivr2:1/'); const listTzintuk = ('tzl:123'); const label = GmailApp.getUserLabelByName('לטלפון'); let didUpload = false chechForGmails() function chechForGmails() { const threads = GmailApp.search('label:לטלפון'); for (const thread of threads) { const messages = thread.getMessages(); const minuteAgo = new Date(Date.now() - 60000); if (thread.getLastMessageDate() > minuteAgo) { for (const message of messages) { if (message.getDate() > minuteAgo) { const result = sendToYemot(message); didUpload = result || didUpload; } } thread.removeLabel(label); } else { const result = sendToYemot(messages[messages.length - 1]); didUpload = result || didUpload; thread.removeLabel(label); } } if(didUpload === true){ const tzintuk = UrlFetchApp.fetch(`${url}RunTzintuk?token=${token}&phones=${listTzintuk}`); Logger.log(tzintuk) } } function sendToYemot (message) { const ttsString = `הודעה מאת. ${message.getFrom()}. ,נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}`; Logger.log({ ttsString }); const directoryListing = JSON.parse(UrlFetchApp.fetch(`${url}GetIVR2Dir?token=${token}&path=${path}`)); Logger.log(directoryListing) if (directoryListing.responseStatus === 'OK') { const lastFileName = directoryListing.files .filter(file => file.fileType === 'AUDIO' || file.fileType === 'TTS') .map(file => file.name.split('.')[0]) .find(fileName => !isNaN(fileName)); const newFileNumber = Number(lastFileName || -1) + 1; const newFileName = newFileNumber.toString().padStart(3, '0'); const newFilePath = `${path}${newFileName}.tts`; const payload = { token, what: newFilePath, contents: ttsString }; const uploadResult = JSON.parse(UrlFetchApp.fetch(url + 'UploadTextFile?', { payload })); return uploadResult.responseStatus === 'OK'; } } }
אם המערכת בשרת הרגיל
function mailToPhone() { const url = ('https://www.call2all.co.il/ym/api/'); const token = ('0734567890:1234'); const path = ('ivr2:1/'); const listTzintuk = ('tzl:123'); const label = GmailApp.getUserLabelByName('לטלפון'); let didUpload = false chechForGmails() function chechForGmails() { const threads = GmailApp.search('label:לטלפון'); for (const thread of threads) { const messages = thread.getMessages(); const minuteAgo = new Date(Date.now() - 60000); if (thread.getLastMessageDate() > minuteAgo) { for (const message of messages) { if (message.getDate() > minuteAgo) { const result = sendToYemot(message); didUpload = result || didUpload; } } thread.removeLabel(label); } else { const result = sendToYemot(messages[messages.length - 1]); didUpload = result || didUpload; thread.removeLabel(label); } } if(didUpload === true){ const tzintuk = UrlFetchApp.fetch(`${url}RunTzintuk?token=${token}&phones=${listTzintuk}`); Logger.log(tzintuk) } } function sendToYemot (message) { const ttsString = `הודעה מאת. ${message.getFrom()}. ,נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}`; Logger.log({ ttsString }); const directoryListing = JSON.parse(UrlFetchApp.fetch(`${url}GetIVR2Dir?token=${token}&path=${path}`)); Logger.log(directoryListing) if (directoryListing.responseStatus === 'OK') { const lastFileName = directoryListing.files .filter(file => file.fileType === 'AUDIO' || file.fileType === 'TTS') .map(file => file.name.split('.')[0]) .find(fileName => !isNaN(fileName)); const newFileNumber = Number(lastFileName || -1) + 1; const newFileName = newFileNumber.toString().padStart(3, '0'); const newFilePath = `${path}${newFileName}.tts`; const payload = { token, what: newFilePath, contents: ttsString }; const uploadResult = JSON.parse(UrlFetchApp.fetch(url + 'UploadTextFile?', { payload })); return uploadResult.responseStatus === 'OK'; } } }
וכמובן משנים בשורה 3 למספר המערכת והסיסמה שלכם
נותנים לפרויקט שם כרצונכם
לוחצים על שמור.עכשיו נפעיל את הטריגר.
בתפריט הנפתחת מצד ימין לוחצים על 'מפעילים' ואז על 'הוספת טריגר',
נפתח תפריט כזוובוחרים לפי המסומן ולוחצים על שמירה
עכשיו יפתח לנו חלונית חדשה שתבקש שניכנס עם החשבון ג'ימייל שלנו, ואז יופיע אזהרה שגוגל לא אימתה את האפליקציה הזו,
נלחץ על 'מתקדם' ואז על 'כניסה אל... (לא מאובטח)'
(נציין, לאף אחד אין גישה למייל שלך חוץ מהסקריפט שאתה הבעלים עליו ואתה יכול לשנות בכל זמן)
ואז, יפתח עוד חלונית שתבקש אישור שהסקריפט יכול לשנות את המיילים וכו' ואישור על התחברות לשרת חיצוני [ימות המשיח], נאשר
(שוב, הסקריפט לא מוחק ולא משנה שום מייל! אלא שאנחנו צריכים לאשר אפשרות כזו)גמרנו, יש לנו מערכת מוכנה שתצנתק לנו כשיש מייל חדש ותקריא לנו את המיילים שקבלנו
נ.ב. לכל דבר יש חסרונות, וגם למערכת שלנו. ההקראה של טקסט בימות המשיח מוגבלת לכ-100 מילים, ולכן אם המייל שקבלתם גדול יותר, יכול להיות שהמערכת לא יקריא לכם את זה ותשמעו שגיאה [או 'המקש שהוקש שגוי' אם זה ההודעה האחרונה בשלוחה].
אפשר לנסות שוב פעם, יש פעמים שזה עוזר וזה כן מקריא אחרי שתיים שלוש הקשותבהצלחה
-
@צדיק-תמים צודק...
אני לא מכיר את נטפרי ולא את הסינון שלי, פשוט בתמונה היה את הסיבה ניסי לחשוב מה גורם לשיעמום באתר.
ולגבי שגם מייל וכו' הוא שיעמום, אז מייל וכו' הרבה משתמשים בזה לשימוש נחוץ. ולכן זה לא חסום. אבל אתרים שאין מה לעשות בהם כל כך, והרבה נכנסים לשם אז הם חוסמים כי שמא אנשים נכנסים לשם משיעמום.@אבי_770 ממתי אתר שנכנסים אליו סתם הוא סיבה לחסימה?! מי שזה מפריע לו שיעשה מסלול מייל בלבד
ומה בדיוק יש "להיכנס סתם משעמום" לגוגל סקריפט? זה לא אתר חדשות, לא פורום, אין שם שום דבר שמתעדכן - חוץ ממה שאתה בעצמך כותב שם...
שים לב לשם של התגית - "סיכון פוטנציאלי לצעירים/ות ומשועממים/ות"
מה הסיכון בזה שייכנסו לשם סתם? -
@אבי_770 ממתי אתר שנכנסים אליו סתם הוא סיבה לחסימה?! מי שזה מפריע לו שיעשה מסלול מייל בלבד
ומה בדיוק יש "להיכנס סתם משעמום" לגוגל סקריפט? זה לא אתר חדשות, לא פורום, אין שם שום דבר שמתעדכן - חוץ ממה שאתה בעצמך כותב שם...
שים לב לשם של התגית - "סיכון פוטנציאלי לצעירים/ות ומשועממים/ות"
מה הסיכון בזה שייכנסו לשם סתם?