קבלת הודעה על כל מייל שנכנס לכתובת אחרת
-
שלום וברכה
יש לי מייל שאני מקבל אליו רק מידי פעם מיילים
אני מעוניין שכל מייל שנכנס אני יקבל הודעה לכתובת מייל אחרת עם שם השולח ונושא ההודעה@אוריי שאל זאת כאן ו @chv הפנה אותו לשרשור בנושא אך אין לי כעת ראש להכנס לכל מה שכתוב שם בשרשור
אשמח להכוונה איך לכתוב את הסקריפט ואיך ליצור את הטריגר שיהא רק בעת קבלת מייל חדש, בכדי שלא ישלח בלופ כל הזמן הודעות.
תודה
-
@חייםיודלביץ בדיוק עכשיו כתבתי את זה...
אין דרך להפעיל את הטריגר רק כשיש הודעה חדשה
ומאידך לא מצאתי דרך שהסקריפט ירוץ רק על הודעות חדשות
מה שעשיתי זה ע"י תווית. שכל המיילים הנכנסים יקבלו תווית מיוחדת והסקריפט ירוץ עליהם ויסיר את התווית אחרי השליחה (בדוגמה בקוד בחרתי בתווית 'לשלוח')
הסבר על יצירת תווית למטה בשרשור
זה הקוד שכתבתיfunction newmail() { let sendmail = 'exemple@gmail.com' let sendlabel = GmailApp.getUserLabelByName('לשלוח') let newmessages = GmailApp.search('label:לשלוח newer_than:1D') for (let newmessage of newmessages) { if (newmessage.getLastMessageDate()) { for (let newmessage of newmessages) { let message = newmessage.getMessages()[0] let subjec = message.getSubject() let senderEmail = message.getFrom() let subject = 'יש מייל חדש עם הכותרת= ' + subjec let body = 'יש לך מייל חדש מאת ' + senderEmail MailApp.sendEmail(sendmail, subject, body,) newmessage.removeLabel(sendlabel) } } } }
(כמובן לשנות בשורות 2,3,4 המייל ושם התווית)
או אולי אם תרצה לסמן כנקרא אחרי שליחת ההתרעה תוכל ללא תווית
-
@שאול-נ-י אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
@חייםיודלביץ בדיוק עכשיו כתבתי את זה...
אין דרך להפעיל את הטריגר רק כשיש הודעה חדשה
ומאידך לא מצאתי דרך שהסקריפט ירוץ רק על הודעות חדשות
מה שעשיתי זה ע"י תווית. שכל המיילים הנכנסים יקבלו תווית מיוחדת והסקריפט ירוץ עליהם ויסיר את התווית אחרי השליחה
זה הקוד שכתבתיfunction newmail() { let sendmail = 'exemple@gmail.com' let sendlabel = GmailApp.getUserLabelByName('לשלוח') let newmessages = GmailApp.search('label:לשלוח newer_than:1D') for (let newmessage of newmessages) { if (newmessage.getLastMessageDate()) { for (let newmessage of newmessages) { let message = newmessage.getMessages()[0] let subjec = message.getSubject() let senderEmail = message.getFrom() let subject = 'יש מייל חדש עם הכותרת= ' + subjec let body = 'יש לך מייל חדש מאת ' + senderEmail MailApp.sendEmail(sendmail, subject, body,) newmessage.removeLabel(sendlabel) } } } }
(כמובן לשנות בשורות 2,3,4 המייל ושם התווית)
או אולי אם תרצה לסמן כנקרא אחרי שליחת ההתרעה תוכל ללא תווית
תודה רבה!!
עובד מדהים, בדיוק מה שחפשתי.בשביל מי שיראה וירצה לנסות אח"כ אז אולי תוסיף לפוסט שלך
- שצריך להוסיף תוית בשם 'לשלוח'
- הסבר כיצד לגרום לכל מייל חדש שנכנס לקבל את התוית ' לשלוח'
תבורך!
-
הסבר על הוספת תווית על כל ההודעות הנכנסות
בשביל להוסיף תווית יש צורך בשני דברים: מסנן, ויצירת תווית
אני אסביר איך לעשות את זה ביחד
אז נכנסים במייל (בצד שמאל למאלה) ל>הגדרות>הצגת כל ההגדרות>מסננים וכתובות חסומות>מסנן חדש
[או פשוט יותר, בשורת החיפוש בדואר לוחצים על התפריט בצד שמאל]
בשורה שניה 'אל' מכניסים את כתובת המייל הנוכחית (שאר השורות משאירים ריקים) ולוחצים על 'מסנו חדש'
בחלונית הבאה שנפתחת מסמנים על 'החלת התווית' ובתפריט בוחרים ב 'תווית חדשה'. נפתחת חלונית ששם מקלידים את שם התווית החדשה (אני בחרתי בשם: לשלוח וע"פ זה הקוד דלעיל) לוחצים אישור
וסיימנו בהצלחה, מעתה כל מייל שנכנס יקבל את התווית 'לשלוח' -
@יוסי12345 אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
אפשר לעשות בקלות ולהגדיר בתיבת המייל (שאינה תדירה), שכל הודעה תעבור גם לתיבה נוספת.
נכון, אך אז אני מקבל עותק של הוהודעה וזה ממלא לי את כתובת המייל, ואני רציתי שרק ישלח הודעה בכדי שלא להעמיס על כתובת המייל הראשית שלי.
@שאול-נ-י אפשר לבקש שיפוץ קטן?
א"כ, אז אשמח אם תוכל לשנות בסקריפט, שישלח הודעה רק על דואר שלא נקרא, אבל יסיר את תוית "לשלוח" גם מדואר שנקרא, כי מה שקורה כרגע - גם אם אני נכנס למייל וקורא דברים אני מקבל על כך התראה.
בקיצור, אני ישמח אם הוא ישלח הודעה רק אם:
- יש תוית "לשלוח"
- הדואר לא נקרא.
תודה רבה
-
@חייםיודלביץ אתה יכול בחיפוש נפרד להוריד את התווית מכל ה'נקראו'
ובחיפוש הרגיל להוסיף שיחפש רק הלא נקראו עם התווית, ככהfunction newmail() { let sendmail = 'exemple@gmail.com' let sendlabel = GmailApp.getUserLabelByName('לשלוח') let oldmessages = GmailApp.search('is: read label:לשלוח') for (let oldmessage of oldmessages) { oldmessage.removeLabel(sendlabel) let newmessages = GmailApp.search('is: unread label:לשלוח newer_than:1D') for (let newmessage of newmessages) { if (newmessage.getLastMessageDate()) { for (let newmessage of newmessages) { let message = newmessage.getMessages()[0] let subjec = message.getSubject() let senderEmail = message.getFrom() let subject = 'יש מייל חדש עם הכותרת= ' + subjec let body = 'יש לך מייל חדש מאת ' + senderEmail MailApp.sendEmail(sendmail, subject, body,) newmessage.removeLabel(sendlabel) } } } } }
-
@שאול-נ-י ראשית, תודה רבה על כל העזרה!!
בסקריפט החדש נוצרה בעיה, הוא מוריד את התוית "לשלוח" רק מהמייל הראשון בדואר שלא נקרא, ומכל המיילים שנקראו.
כמו כן שולח הודעה רק על המייל הראשון שלא נקרא, למרות שיש עוד שלא נקראו ועם התוית "לשלוח".תודה!
-
@חייםיודלביץ אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
@שאול-נ-י ראשית, תודה רבה על כל העזרה!!
בסקריפט החדש נוצרה בעיה, הוא מוריד את התוית "לשלוח" רק מהמייל הראשון בדואר שלא נקרא, ומכל המיילים שנקראו.
כמו כן שולח הודעה רק על המייל הראשון שלא נקרא, למרות שיש עוד שלא נקראו ועם התוית "לשלוח".תודה!
יכול להיות שאתה מדבר על מיילים ישנים יותר מיום?
היה מוגדר שיבדוק רק מיילים מהיום האחרון
עכשיו הורדתי את זה ושיניתי עוד משהו, תבדוק עכשיוfunction newmail() { let sendmail = 'exemple@gmail.com' let sendlabel = GmailApp.getUserLabelByName('לשלוח') let oldmessages = GmailApp.search('is: read label:לשלוח') for (let oldmessage of oldmessages) { oldmessage.removeLabel(sendlabel) let newmessages = GmailApp.search('is: unread label:לשלוח') for (let newmessage of newmessages) { let message = newmessage.getMessages()[0] let subjec = message.getSubject() let senderEmail = message.getFrom() let subject = 'יש מייל חדש עם הכותרת= ' + subjec let body = 'יש לך מייל חדש מאת ' + senderEmail MailApp.sendEmail(sendmail, subject, body,) newmessage.removeLabel(sendlabel) } } }
-
@שאול-נ-י אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
@חייםיודלביץ אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
@שאול-נ-י ראשית, תודה רבה על כל העזרה!!
בסקריפט החדש נוצרה בעיה, הוא מוריד את התוית "לשלוח" רק מהמייל הראשון בדואר שלא נקרא, ומכל המיילים שנקראו.
כמו כן שולח הודעה רק על המייל הראשון שלא נקרא, למרות שיש עוד שלא נקראו ועם התוית "לשלוח".תודה!
יכול להיות שאתה מדבר על מיילים ישנים יותר מיום?
היה מוגדר שיבדוק רק מיילים מהיום האחרון
עכשיו הורדתי את זה ושיניתי עוד משהו, תבדוק עכשיוfunction newmail() { let sendmail = 'exemple@gmail.com' let sendlabel = GmailApp.getUserLabelByName('לשלוח') let oldmessages = GmailApp.search('is: read label:לשלוח') for (let oldmessage of oldmessages) { oldmessage.removeLabel(sendlabel) let newmessages = GmailApp.search('is: unread label:לשלוח') for (let newmessage of newmessages) { let message = newmessage.getMessages()[0] let subjec = message.getSubject() let senderEmail = message.getFrom() let subject = 'יש מייל חדש עם הכותרת= ' + subjec let body = 'יש לך מייל חדש מאת ' + senderEmail MailApp.sendEmail(sendmail, subject, body,) newmessage.removeLabel(sendlabel) } } }
תודה!
עובד מעולה!!כן, היה מדובר על מיילים יותר ישנים, בבדיקה נסיתי להעביר כמות של מיילים לדואר נכנס ולראות שהוא עובד כמצופה.
תבורך!
-
@שאול-נ-י
יש אפשרות להוסיף בשליחת המייל השני אל הראשון שלי קישור כלשהו שפותחת את המייל השני ,במצב שאם זה פתוח זה יפתח ואם זה עדיין סגור הוא יגיע מיד לדף של הכנסת הסיסמה ולא נצטרך לצאת לפתוח דף חדש >אימייל>הכנסת שם האימייל וכו'...?
תודה רבה על הסקריפטים הנ"ל זה מאוד עוזר לי!!! -
@מלאכת-מחשבת @שאול-נ-י וכו'
יש אפשרות להכנסת כתובת של דף האימייל שפותח את דף הבית של האימייל האחר שלי והיא ע"י הכנסת שורה זו:https://accounts.google.com/AccountChooser?continue=https://mail.google.com/&Email=youremail@gmail.com
שים לב להחליף את
youremail@gmail.com
בכתובת המייל שלךמקור:
https://www.prog.co.il/articles/להחזיק-מספר-חשבונות-gmail.2042/
הובא כאן (מתמחים). ע"י הניק @איש-נחמד .. -
@שאול-נ-י עכשיו נוצרה בעיה שהוא לא שולח הודעות על הודעות חדשות שהגיעו היום.
אשמח אם יהא לך זמן שתוכל לסדר את זה.
תודה רבה!
הסקריפט הזה מדהים! -
@חייםיודלביץ אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
עכשיו נוצרה בעיה שהוא לא שולח הודעות על הודעות חדשות שהגיעו היום.
מה זה עכשיו? עד עכשיו זה עבד? אם כן זה בעיה במייל שלך או מגבלת מיילים (אפשר לשלוח רק 150 מיילים ליום) תבדוק איפה הבעיה ותעדכן
-
@שאול-נ-י אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
@חייםיודלביץ אמר בקבלת הודעה על כל מייל שנכנס לכתובת אחרת:
עכשיו נוצרה בעיה שהוא לא שולח הודעות על הודעות חדשות שהגיעו היום.
מה זה עכשיו? עד עכשיו זה עבד? אם כן זה בעיה במייל שלך או מגבלת מיילים (אפשר לשלוח רק 150 מיילים ליום) תבדוק איפה הבעיה ותעדכן
ראיתי שאני לא מקבל התרעות אז נכנסתי למייל שלחתי לעצמי הודעה ואז ראיתי שהוא לא שולח על הודעה חדשה, החזרתי הודעה מיום קודם ואז הוא כן שלח.
תודה
עריכה: עכשיו אני רואה משהו מוזר לחלוטין הוא בכלל לא עובד אצלי, אני צריך לבדוק מה קורה שם:
אצלי כתוב כך:
function newmail() { let sendmail = '123456789@gmail.com' let sendlabel = GmailApp.getUserLabelByName('לשלוח') let oldmessages = GmailApp.search('is: read label:לשלוח') for (let oldmessage of oldmessages) { oldmessage.removeLabel(sendlabel) let newmessages = GmailApp.search('is: unread label:לשלוח') for (let newmessage of newmessages) { let message = newmessage.getMessages()[0] let subjec = message.getSubject() let senderEmail = message.getFrom() let subject = ' התקבל מייל חדש מאת ' + senderEmail +' כותרת הנושא: ' + subjec let body = "" MailApp.sendEmail(sendmail, subject, body,) newmessage.removeLabel(sendlabel) } } }
-
@חייםיודלביץ מבדיקה שלי ראיתי שאם אין הודעות שכן נקראו ההודעות לא נשלחו
ותפסתי במה זה קשור, תנסה כך ותגיד רם עובדfunction newmail() { let sendmail = 'exemple@gmail.com' let sendlabel = GmailApp.getUserLabelByName('לשלוח') let oldmessages = GmailApp.search('is: read label:לשלוח') for (let oldmessage of oldmessages) { oldmessage.removeLabel(sendlabel)} let newmessages = GmailApp.search('is: unread label:לשלוח') for (let newmessage of newmessages) { let message = newmessage.getMessages()[0] let subjec = message.getSubject() let senderEmail = message.getFrom() let subject = 'יש מייל חדש עם הכותרת= ' + subjec let body = 'יש לך מייל חדש מאת ' + senderEmail MailApp.sendEmail(sendmail, subject, body,) newmessage.removeLabel(sendlabel) } }
-
-