מדריך | שמיעת המיילים בטלפון + צינתוק
-
@מנצפכ
לא עובד לי לא שולח לי צינתוק וגם בקו אני שומע "בשלוחה זו עדיין אין השמעות"
אשמח לעזרה או פה או במייל שלי uri100@mail.com
תודה מראש -
@מנצפכ
לא עובד לי לא שולח לי צינתוק וגם בקו אני שומע "בשלוחה זו עדיין אין השמעות"
אשמח לעזרה או פה או במייל שלי uri100@mail.com
תודה מראש@123456789101112
אתה עשית מחדר מחשבים, זאת אומרת סינון של "חותם"?
כי שם זה לא עובד בגלל השלב האחרון שהוא חסום. -
@123456789101112
אתה עשית מחדר מחשבים, זאת אומרת סינון של "חותם"?
כי שם זה לא עובד בגלל השלב האחרון שהוא חסום. -
מ מיכאלוש התייחס לנושא זה ב
-
מ משה 144 התייחס לנושא זה ב
-
יש אפשרות גם לדעת למי נשלחה ההודעה?
יש לי כמה מיילים ואני עשיתי את כולם לאותו מספר, אבל אני רוצה לדעת לאיזה מייל שלחו את זה
תודה רבה -
יש אפשרות גם לדעת למי נשלחה ההודעה?
יש לי כמה מיילים ואני עשיתי את כולם לאותו מספר, אבל אני רוצה לדעת לאיזה מייל שלחו את זה
תודה רבה@zalmensmok תחליף את השורה הזאת:
const ttsString = `הודעה מאת. ${message.getFrom()}. ,נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}`;
בזה:
const ttsString = `הודעה מאת. ${message.getFrom()}. אל. ${Session.getActiveUser().getEmail()}., נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}`;
-
@zalmensmok תחליף את השורה הזאת:
const ttsString = `הודעה מאת. ${message.getFrom()}. ,נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}`;
בזה:
const ttsString = `הודעה מאת. ${message.getFrom()}. אל. ${Session.getActiveUser().getEmail()}., נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}`;
@צדיק-תמים
האם יש אפשרות לשמוע האם מצורף קבצים למייל וכמה ? כמו בוירטואל מייל -
@צדיק-תמים
האם יש אפשרות לשמוע האם מצורף קבצים למייל וכמה ? כמו בוירטואל מייל -
משהו כזה במקום השורה הראשונה בפונקציה
sendToYemot
[בקוד שבפוסט הראשון בשרשור זה] אמור לעבוד - לא ניסיתיconst attachments = message.getAttachments(); const attachmentsNames = []; for (const attachment of attachments) { attachmentsNames.push(attachment.getName()); } const ttsString = `הודעה מאת. ${message.getFrom()}. ,נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}. ${attachmentsNames.length ? `קבצים מצורפים. ${attachmentsNames.join(', ')}` : 'אין קבצים מצורפים.'}`;
-
משהו כזה במקום השורה הראשונה בפונקציה
sendToYemot
[בקוד שבפוסט הראשון בשרשור זה] אמור לעבוד - לא ניסיתיconst attachments = message.getAttachments(); const attachmentsNames = []; for (const attachment of attachments) { attachmentsNames.push(attachment.getName()); } const ttsString = `הודעה מאת. ${message.getFrom()}. ,נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}. ${attachmentsNames.length ? `קבצים מצורפים. ${attachmentsNames.join(', ')}` : 'אין קבצים מצורפים.'}`;
@צדיק-תמים אתה יכול אולי להסביר באיזו שורה צריך לשים את הפונקציה
-
משהו כזה במקום השורה הראשונה בפונקציה
sendToYemot
[בקוד שבפוסט הראשון בשרשור זה] אמור לעבוד - לא ניסיתיconst attachments = message.getAttachments(); const attachmentsNames = []; for (const attachment of attachments) { attachmentsNames.push(attachment.getName()); } const ttsString = `הודעה מאת. ${message.getFrom()}. ,נושא,. ${message.getSubject()}. גוף ההודעה. ${message.getPlainBody()}. ${attachmentsNames.length ? `קבצים מצורפים. ${attachmentsNames.join(', ')}` : 'אין קבצים מצורפים.'}`;
@צדיק-תמים אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
במקום השורה הראשונה בפונקציה sendToYemot [בקוד שבפוסט הראשון בשרשור זה]
השורה הזאת היא מספר 37 כעת
-
-
@055678 אמר במדריך | שליחת מייל מהפלאפון:
@מיכאלוש
יש מצב שאתה עושה אקסל שכולל החרגה של קידומי מכירות
ושיגיד את מס' הקבצים המצורפים (כמו שדיבו על זה פה ) ???אם אתה רוצה את זה באקסל בצורה קלה עדיף שתתייג את @מנצפכ אבל בעיקרון זה משהוא כמו לערוך בסקריפט שבתוך האקסל בשורה 79 תשנה איפה שכתוב בה עכשיו
const ttsString = `${cnsender}. ${message.getFrom()}. ${cnsubject}. ${message.getSubject()}. ${cnbody}. ${body}`;
תשנה ל:const ttsString = `${cnsender}. ${message.getFrom()}. ${cnsubject}. ${message.getSubject()}. ${cnbody}. ${body}. ${attachmentsNames.length ? `קבצים מצורפים. ${attachmentsNames.join(', ')}` : 'אין קבצים מצורפים.'}`;
ובשורה שעכשיו 46 תדביק את זה
const attachments = message.getAttachments(); const attachmentsNames = []; for (const attachment of attachments) { attachmentsNames.push(attachment.getName()); }
-
מ מיכאלוש התייחס לנושא זה ב
-
מ מנצפכ התייחס לנושא זה ב
-
האמת שככה יותר יפה
const attachmentsNames = message.getAttachments().map(file => file.getName());
לבקשת כמה מהמשתמשים אני מצרף קישור לגיטהאב של הסקריפט שכתבתי למיילים לטלפון, כולל תרגום של המיילים שאינם בעברית ועם אופציה לשליחת מיילים מהטלפון.
https://github.com/YOSSI263/mail-to-phone-v3.4
מצורף גם source code ניתן להשתמש בשמחה.
-
ב"ה
תמיד רציתם לשמוע את המייל שלכם בטלפון ללא צורך בגישה כל פעם למחשב?
הנה הפיתרון!!בעזרת המדריך הזה תוכלו גם אתם לשמוע את המייל דרך הטלפון בהקראה אוטומטית וגם לקבל צינתוק כשהגיע מייל חדש
נחלק את זה לכמה שלבים כדי להקל על ההבנה
נתחיל עם המערכת
שלב א: קודם כל צריך להיות ברשותכם מערכת תוכן של חברת "ימות המשיח"
(באם אין לכם עדיין, התקשרו ל-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 מילים, ולכן אם המייל שקבלתם גדול יותר, יכול להיות שהמערכת לא יקריא לכם את זה ותשמעו שגיאה [או 'המקש שהוקש שגוי' אם זה ההודעה האחרונה בשלוחה].
אפשר לנסות שוב פעם, יש פעמים שזה עוזר וזה כן מקריא אחרי שתיים שלוש הקשותבהצלחה
@שאול-נ-י אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
כשיו נפעיל את הטריגר.
בתפריט הנפתחת מצד ימין לוחצים על 'מפעילים' ואז על 'הוספת טריגר',
נפתח תפריט כזו ובוחרים לפי המסומן ולוחצים על שמירהמאז מגיע אליי הודעות על כשל בטריגר
ואני לא מצליח למחוק את ההודעות
שים לב כמה הודעות הגיעו מהשעה 6:41
-
@שאול-נ-י אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
כשיו נפעיל את הטריגר.
בתפריט הנפתחת מצד ימין לוחצים על 'מפעילים' ואז על 'הוספת טריגר',
נפתח תפריט כזו ובוחרים לפי המסומן ולוחצים על שמירהמאז מגיע אליי הודעות על כשל בטריגר
ואני לא מצליח למחוק את ההודעות
שים לב כמה הודעות הגיעו מהשעה 6:41
-
@שאול-נ-י אמר במדריך | שמיעת המיילים בטלפון + צינתוק:
כשיו נפעיל את הטריגר.
בתפריט הנפתחת מצד ימין לוחצים על 'מפעילים' ואז על 'הוספת טריגר',
נפתח תפריט כזו ובוחרים לפי המסומן ולוחצים על שמירהמאז מגיע אליי הודעות על כשל בטריגר
ואני לא מצליח למחוק את ההודעות
שים לב כמה הודעות הגיעו מהשעה 6:41