שיתוף | מייל לפלאפון הכשר
-
@ישראל10 אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
@מנצפכ דרך אגב.
לא עבד לי הסקריפט עוד פעם ועוד פעם.
עד שפשוט נכנסתי למפעילים ועשיתי לו טריגר חדש, [היה רשום שאין שום טריגר] וזה התחיל לעבוד...יש בעיה מסויימת בגוגל סקריפט ועדכנתי את הבעיה למעלה
@מנצפכ אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
שימו לב
אם לא קיבלתם הודעה קופצת בצד שמאל למטה שהסקריפט הופעל - הסקריפט לא הופעל ויש להפעילו שוב@ישראל10 אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
@מנצפכ איך אפשר לשנות אחד מהקטגוריות אחרי הרצת הסקריפט?
הקובץ נמצא בגוגל דרייב. אפשר לפתוח מתוך הדרייב ולשנות את ההגדרות
-
@ישראל10 אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
לפי כמה תווים זה מחולק?
אם הבנתי אותך נכון 2400
@אבוב אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
כשאני מפעיל את גירסה 6.4 אוטומטי נמחק לי הגרסאות הקודמות או שאני עכשיו אקבל 2 מיילים (בטלפון) על כל מייל?
תצטרך למחוק את הקובץ הקודם מגוגל דרייב (או למחוק את הטריגר)
@אבוב אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
כבר גירסא 6.4 ולא מוחק לי קישורים...
לי זה מוחק תבדוק אם מחקת את הגירסא הקודמת
@אבוב אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
כמו כן, האם יש את הקוד הזה גם בקו להדביק בגוגל סקריפט (יותר נח לי)
לפני הרצת הקוד צריך שהתווית נשלח לפלאפון תהיה קיימת
function mailToPhone() { const number = '07********'; const pass = '******'; const extension = '1'; const tzl = '123'; const tag = 'נשלח לפלאפון'; const searchwording = 'is: inbox'; const cnsender = 'הודעה מאת'; const cnsubject = ' ,נושא,'; const cnbody = 'גוף ההודעה'; const cnend = '. סוף ההודעה'; const url = ('https://www.call2all.co.il/ym/api/'); const token = (number + ':' + pass); const path = ('ivr2:' + extension + '/'); const listTzintuk = ('tzl:' + tzl); const label = GmailApp.getUserLabelByName(tag); let didUpload = false chechForGmails() function chechForGmails() { const threads = GmailApp.search(searchwording + ' newer_than:1h -{label:' + tag + '}'); 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.addLabel(label); } else { const result = sendToYemot(messages[messages.length - 1]); didUpload = result || didUpload; thread.addLabel(label); } if(didUpload === true){ const tzintuk = UrlFetchApp.fetch(`${url}RunTzintuk?token=${token}&phones=${listTzintuk}`); Logger.log(tzintuk) } } function sendToYemot (message) { const subjectTranslate = LanguageApp.translate(message.getSubject(), '', 'iw') ; const bodyTranslate = LanguageApp.translate(message.getPlainBody(), '', 'iw') ; const ttsStringSimple = `${cnsender}. ${message.getFrom()}. ${cnsubject}. ${subjectTranslate}. ${cnbody}. ${bodyTranslate}`; const ttsString1 = ttsStringSimple.replace(new RegExp (/(?:(?:https?|ftp):\/\/|\b(?:[a-z\d]+\.))(?:(?:[^\s()<>]+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))?\))+(?:\((?:[^\s()<>]+|(?:\(?:[^\s()<>]+\)))?\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))?/, 'g',), ' '); const ttsString2 = ttsString1.replace(new RegExp (/"|>|<|\*|\)|\(|`/, 'g',), ''); const ttsString3 = ttsString2.replace(new RegExp(/@|\n|-/, 'g',), ' '); const ttsString4 = ttsString3.replace(new RegExp(/\s{2,}/, 'g',), ' '); const ttsString = ttsString4.substring(0,2200) + cnend 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'; } } } }
-
יש אופציה לעשות שתהיה אפשרות לכתוב תגובה? (מבוסס על הסקריפט של @מיכאלוש כאן ) וכך לחסוך את הצורך ההקלדה מייגעת של כתובת המייל?
בתור התחלה ההגדרה למעבר לשלוח אחרת תוך כדי שמיעת קובץ היאcontrol_play3=go_to_folder playfile_control_play_3_goto=/7
וכך בדוגמא כשמקישים 3 מנותבים לשלוחה 7 ,עדיין צריך למצוא דרך להעתיק את הכתובת מייל
(אמנם זה לא יופיע במייל בתור תשובה ,אבל לענ"ד זה אמור להיות יותר פשוט כי אתה סה"כ מתעסק עם המערכת של ימות ולא עם גוגל) -
@האדם-החושב אמר במדריך | שליחת נוסח הודעת המייל לפלאפון + שליחת צינתוק:
עדיין צריך למצוא דרך להעתיק את הכתובת מייל
זה לא אפשרי
-
לבקשת כמה מהמשתמשים אני מצרף קישור לגיטהאב של הסקריפט שכתבתי למיילים לטלפון, כולל תרגום של המיילים שאינם בעברית ועם אופציה לשליחת מיילים מהטלפון.
https://github.com/YOSSI263/mail-to-phone-v3.4
מצורף גם source code ניתן להשתמש בשמחה.
אגב, התרגום אפשר לעשות גם ישירות עם הAPI של גוגל טרנסלייט, אבל זה יותר מוגבל בבקשות וגם צריך בשביל זה חשבון בGCP, אז העדפתי לעשות באצמעות השיטס.