มีวิธีหลีกเลี่ยง“ + canned.response” ในที่อยู่อีเมลโดยใช้คุณลักษณะการตอบกลับสำเร็จรูปของ Gmail หรือไม่


11

หากฉันตั้งค่าตัวกรองและส่งการตอบกลับสำเร็จรูป Gmail +canned.responseจะต่อท้ายชื่อผู้ใช้ของฉันในการตอบกลับ

ตัวอย่างเช่นกำหนดตัวกรอง "จาก: foo@example.com เป็น: me@example.com" ตั้งค่าให้ส่งการตอบกลับสำเร็จรูปเมื่อfoo@example.comส่งอีเมลถึงฉันการตอบกลับสำเร็จรูปมาจากme+canned.response@example.comแทนการme@example.comเปิดเผยว่าฉันใช้ การตอบกลับสำเร็จรูป

มีวิธีหลีกเลี่ยงสิ่งนี้หรือไม่?


4
ไม่มีอะไรแน่นอนในการตั้งค่าของ Gmail ที่ควบคุมสิ่งนั้น ฉันรู้สึกว่าคำตอบคือ "ไม่" จำไว้ด้วย: นี่คือ (ปัจจุบัน) คุณสมบัติห้องทดลองและไม่ได้รับการสนับสนุนอย่างสมบูรณ์
เบียร์

คำตอบ:


3

สิ่งที่ต้องจำเกี่ยวกับ "การตอบกลับสำเร็จรูป" ปัจจุบันสำหรับ Gmail คือต้องเพิ่มจากแท็บ "Labs"

ซึ่งหมายความว่าอาจมีการสนับสนุนเบาบางและมีศักยภาพที่จะหายไปอย่างสมบูรณ์ "แล็บ" โดยเฉพาะนี้มีนิสัยใจคออื่น ๆ อีกมากมายที่อยู่นอกขอบเขตของคำถามของคุณ แต่ฉันเชื่อว่าคำตอบของคุณคือ "ไม่"

ดูเหมือนว่าสาเหตุของ " + canned.response " คือการป้องกันอีเมลบางวงที่บางคนอาจสร้างโดยไม่ได้ตั้งใจโดยมีข้อความที่ส่งไปยังตัวเองหรือแม้กระทั่งเพียงแค่ตอบกลับ

ในการทดสอบของฉันฉันใช้ตัวกรองสำหรับการตอบสนองตาม " จาก " เฉพาะกับ " หัวเรื่อง " ที่มีคำหลัก การตอบกลับสำเร็จรูปถูกยิงทุกครั้งยกเว้นเมื่อฉันตอบกลับไปยังการตอบกลับสำเร็จรูปโดยตรง

ฉันแน่ใจว่าคนส่วนใหญ่สามารถใช้ชีวิตร่วมกับการเล่นโวหารนี้ได้ แต่สิ่งอื่นที่ฉันพบในการทดสอบนี้อาจทำให้ Google ดึงแล็บนี้


2

ฉันคิดถึงวิธีที่จะไม่ใช้การตอบกลับสำเร็จรูปเช่นนี้ (รวมถึงresponseข้อความที่เพิ่มในอีเมล) แต่เพื่อส่งต่อการตอบกลับสำเร็จรูปไปยังอีเมลที่ถูกกรอง (ผู้รับ) นี่คือลักษณะ:

รหัส

function doGet(e) {
  // retrieve Id's from canned response  
  var drafts = GmailApp.getDraftMessages();
  for(var i in drafts) {
    Logger.log(drafts[i].getId() + " " + drafts[i].getSubject());
  }

  // set canned response mail
  var canned = GmailApp.getMessageById('1410f11ab42ca12d');

  // get all messages
  var eMails = GmailApp.getMessagesForThreads(
    GmailApp.search("label:cannedresponse label:unread"))
      .reduce(function(a, b) {return a.concat(b);})
      .map(function(eMails) {
    return eMails.getFrom() 
  });

  // sort and filter for unique entries  
  var aEmails = eMails.sort().filter(function(el,j,a)
    {if(j==a.indexOf(el))return 1;return 0}); 

  // forward canned response
  for(var j in aEmails) {
    canned.forward(aEmails[j]);
  }

  // mark all as read
  var threads = GmailApp.search("label:cannedresponse label:unread");
  GmailApp.markThreadsRead(threads);    
}

อธิบาย

บรรทัดแรกคือการกำหนดรหัสของการตอบกลับสำเร็จรูปที่คุณต้องการส่งออก Loggerฟังก์ชั่นที่จะช่วยให้การเข้าสู่ระบบทั้งหมดของ Id draf getMessageById(Id)เพิ่มหมายเลขหนึ่งโดยเฉพาะนี้ลงใน ตัวอย่างสามรายการถัดไปจะได้รับอีเมลที่ยังไม่ได้อ่านทั้งหมดจากcannedResponseป้ายกำกับและลบรายการที่ซ้ำ
การตอบกลับสำเร็จรูปจะถูกส่งต่อไปยังผู้รับที่แตกต่างกัน หลังจากนั้นอีเมลที่ยังไม่ได้อ่านทั้งหมดในฉลาก cannedResponse จะถูกทำเครื่องหมายว่าอ่านแล้ว

การใช้

เพิ่มรหัสโดยการท่องไปยัง URL ต่อไปนี้: https://script.google.com
ตรวจสอบให้แน่ใจว่าได้กดปุ่ม "ข้อบกพร่อง" เพื่อตรวจสอบสิทธิ์สคริปต์และการใช้งาน สคริปต์สามารถถูกเรียกใช้ในช่วงเวลาตามเวลา ตั้งค่าทริกเกอร์ในResourcesเมนูตามที่คุณต้องการ
ป้อนคำอธิบายรูปภาพที่นี่

ในกรณีนี้มีข้อกำหนดเบื้องต้นบางประการ คุณต้องมีป้ายชื่อcannedResponseและต้องมีการตอบกลับสำเร็จรูปเป็นแบบร่าง นอกจากนี้ต้องมีตัวกรองเพื่อส่งคำตอบสำเร็จรูป

ภาพหน้าจอ

ป้อนคำอธิบายรูปภาพที่นี่


2

ยาโคบ

รหัสของคุณเป็นเพียงสิ่งที่ฉันกำลังมองหา แต่ในฐานะที่เป็นนักอุดมคติ แต่สมบูรณ์แบบที่ฉันเป็นฉันพบปัญหาเล็กน้อยเกี่ยวกับรหัสของคุณ:

  • อีเมลที่ส่งออกไปจะถูกส่งต่อแทนที่จะตอบกลับ สิ่งนี้จะเพิ่ม "Fwd:" ลงในหัวเรื่องและอาจเพิ่มคิ้วสักสองสามจุดที่ปลายของผู้รับ
  • ฉันใช้ Gmail เพื่อตรวจสอบอีเมลที่ทำงาน (ไม่ใช่ Gmail) รหัสของคุณใช้งานไม่ได้กับสิ่งนี้ มันตอบกลับอีเมลที่ทำงานของฉันด้วยที่อยู่ Gmail ของฉันซึ่งจะทำให้คิ้วเพิ่มมากขึ้นในตอนท้ายของผู้รับ
  • การตั้งค่าของคุณต้องการอีเมลคงที่ในโฟลเดอร์ร่างของฉัน นั่นจะทำให้ฉันบ้า

ฉันแก้ไขรหัสของคุณเป็นบัญชีสำหรับสิ่งเหล่านี้และนี่คือรุ่นของฉัน:

function RespondEmail(e) {

  // set response mail
  var response = GmailApp.getMessageById('1452e6aef2c5c09f');
  var responsebody = response.getBody();

  //send response email
  var aliases = GmailApp.getAliases()
  var threads = GmailApp.search("label:respondemail label:unread");
  for (var i = 0; i < threads.length; i++) {
    threads[i].reply("", {htmlBody: responsebody, from: aliases[0]});}

  // mark all as read
  var threads = GmailApp.search("label:respondemail label:unread");
  GmailApp.markThreadsRead(threads);
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.