Gmail'in hazır yanıt özelliğini kullanarak e-posta adresinde "+ canned.response" ifadesinden kaçınmanın bir yolu var mı


11

Bir filtre ayarlayıp filtrelenmiş bir yanıt gönderirsem, Gmail yanıttaki +canned.responsekullanıcı adımı ekler .

Zaman, bir hazır yanıt göndermek için kurulmuş "me@example.com ve: foo@example.com dan" Örneğin, filtreyi verilen foo@example.combana hazır yanıt geliyor bir e-posta gönderir me+canned.response@example.comyerine me@example.comben a kullanıyorum olduğunu açığa hazır yanıt.

Bundan sakınmanın bir yolu var mı?


4
Gmail ayarlarında bunu kontrol eden hiçbir şey kesinlikle yok. Cevabın "Hayır" olduğunu hissediyorum. Unutmayın: Bu (şu anda) bir Lab özelliğidir ve tam olarak desteklenmemektedir.
ale

Yanıtlar:


3

Gmail için geçerli "hazır yanıt" hakkında hatırlanması gereken şey, "Labs" sekmesinden eklenmesi gerektiğidir.

Bu, seyrek destek olabileceği ve tamamen yok olma potansiyeline sahip olduğu anlamına gelir. Bu özel "Laboratuar", sorunuzun kapsamı dışında kalan başka tuhaflıklara sahiptir, ancak cevabınızın "Hayır" olduğuna inanıyorum.

Görünüşe göre " + canned.response " nedeni , iletinin kendilerine gönderilmesini veya hatta yanıtlanmasını sağlayarak birisinin yanlışlıkla oluşturabileceği bazı e-posta döngülerini önlemektir.

Testimde, bir anahtar kelime içeren bir " Konu " içeren belirli bir " Kimden " e dayalı yanıt için bir filtre kullandım . Doğrudan cevap verdiğim yanıtı hazırladığım sürece, hazır yanıt her seferinde tetiklendi.

Çoğu insanın bu tuhaflıkla yaşayabileceğinden eminim, ancak bunu test ederken karşılaştığım diğer bazı tuhaflıklar Google'ın bu Laboratuvarı çekmesine neden olabilir.


2

Hazır yanıtı ( responsee-posta adresine eklenen teklif dahil ) kullanmamanın, ancak filtrelenmiş e-postalara (alıcılar) hazır yanıtı iletmenin bir yolunu düşündüm . Şöyle görünüyor:

kod

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);    
}

Açıklaması

İlk satırlar, göndermek istediğiniz hazır yanıtın kimliğini belirlemektir. LoggerFonksiyon Kimliği en Draf tüm giriş yapmak için yardımcı olacaktır. Bu belirli bir kimliği getMessageById(Id). Sonraki üç snippet, tüm okunmamış postaları cannedResponseetiketten alacak ve kopyaları kaldıracaktır.
Mevcut e-postalara dayanarak, hazır yanıtlar farklı alıcılara iletilir. Bundan sonra, cannedResponse etiketindeki okunmamış tüm e-postalar okundu olarak işaretlenir.

kullanım

Aşağıdaki URL'ye giderek bu kodu ekleyin: https://script.google.com .
Komut dosyasının ve kullanımının kimliğini doğrulamak için "hata" düğmesine bastığınızdan emin olun. Komut dosyası zamana bağlı bir aralıkta tetiklenebilir. Tetikleyiciyi Resourcesmenüde istediğiniz gibi ayarlayın.
resim açıklamasını buraya girin

Bu durumda, bazı önkoşullar vardır. Adlı bir etikete sahip olmanız cannedResponseve taslak olarak hazır bir yanıt almanız gerekir . Ayrıca, hazır yanıtlar göndermek için bir filtrenin mevcut olması gerekir.

Ekran görüntüsü

resim açıklamasını buraya girin


2

Jacob

Kodunuz tam da aradığım şeydi. Ama olduğum mükemmeliyetçi olarak, kodunuzla ilgili birkaç sorun buldum:

  • Gönderilen e-postalar, yanıtlanmak yerine iletilir. Bu konu satırına bir "İleri" ekler ve muhtemelen alıcının ucunda birkaç kaş kaldırır.
  • Gmail’i (Gmail olmayan) iş e-postamı kontrol etmek için kullanıyorum. Kodunuz bununla iyi çalışmıyor. İş e-postalarıma, alıcının sonunda daha da fazla kaş çıkmasını sağlayacak Gmail adresimle yanıt veriyor.
  • Kurulumunuz için taslaklar klasörümde sabit bir e-posta gerekiyor. Bu beni deli ediyor.

Kodunuzu bunları hesaba katmak için değiştirdim ve işte sürümüm:

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);
}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.