다른 주소로 발신 메시지 사본 보내기


12

전송 된 메시지의 복사본이 할 수있는 방법이 있습니까 에서 다른 주소로 보내 Gmail 계정은?

내가 앞으로 어떤 메시지를 가지고 다른 복사 내 주소를 (볼 이 질문에 필터를 설정하는 것은 다른 것입니다, 하나 개의 솔루션에 대한),하지만 난 아직 자동으로 복사 메시지를 아웃 바운드가 할 수있는 방법을 발견하지 않았습니다.

방법이 있습니까?


조건에 전달 규칙을 설정해 볼 수는 from:me있지만 이전에는 시도한 적이 없습니다.
dnbrv

from:me필터가 인바운드 메시지를 트리거하기 때문에 필터는 아마 (다만 그것을 시도) 작동하지 않습니다.
ale

1
동의합니다. 작동하지 않습니다.
Doug Harris

Gmail 인터페이스를 통해 사본을 저장하거나 보내면 좋을 것입니다. 가장 쉬운 방법은 숨은 참조 필드를 사용하는 것입니다. 항상 새 주소를 입력하는 것은 쉽지 않지만 그 방법은 효과적입니다.
JW8

Google 그룹스의 기능인 공동 작업받은 편지함을 살펴보세요. 웹 사이트에서 한 사람에게 보내는 이메일 대신 그룹으로 전달하십시오. 공동 작업받은 편지함 기능을 통해 처리 된 요청을 쉽게 확인할 수 있습니다. 참조 support.google.com/a/bin/answer.py?hl=en&answer=167430
VIDAR S. Ramdal

답변:


3

필터가 아닌 모든 발신 메일에 레이블을 적용하도록 필터를 설정합니다 (보낸 사람 : yourID@gmail.com은 "발신"레이블을 가져옵니다).

제한 사항 :

필터 만 사용하여이 작업을 수행하려고하면 전달이 수행되지 않습니다. 전달 탭에서 모든 메일을 원하는 수신자 ( "관리자")에게 전달할 수 있어야합니다. 기본 수신자 주소를 사용하여 메일을 여러 대상으로 분할하지 않으면이 방법으로 여러 주소로 전달할 수 없습니다. 들어오고 나가는 모든 메일이 전달됩니다.


4
이 지침을 따르려고 노력하고 있지만 어떻게해야하는지 잘 모르겠습니다. 따라서 나가는 필터를 만든 다음 설정»전달로 이동하여 Gmail에 모든 메일을 내 대상으로 전달하도록 지시 한 다음 무엇을합니까?
Geoffrey Booth

예, 지시 단계를보다 자세히 설명해주십시오
Richard

1
작동하지 않습니다. 시간을 낭비하지 마십시오. 발신 메시지에는 필터가 작동하지 않음
Robert Sinclair

1
@RobertSinclair, 실제로 작동하지만 모든 작업에 적용되는 것은 아닙니다. 예 : 발신 메일에 라벨을 지정해도 작동하지만 전달은 작동하지 않습니다. 그리고 물론 시간 낭비에 관한 첫 번째 진술에 전적으로 동의합니다.
dess

3

https://script.google.com으로 확실히 할 수 있습니다 .

제한은 아마도 복사가 즉시 발생하지 않고 시간 기반 트리거에서 발생한다는 것입니다. 보유한 계정 종류 및 발신 이메일 양에 따라 5 분 이상 지연 될 수 있습니다.

이 작업을 수행 할 수있는 사전 작성된 스크립트를 모르지만 여기에서 허용되는 답변에 해당 스크립트를 적용 할 수 있습니다. 라벨이 적용될 때 Gmail 이메일을 자동으로 전달하려면 어떻게해야합니까?

특히, 지난 1 시간 동안 사용자 레이블 또는 사용자가 생성 한 레이블없이 레이블 : 보낸 전자 메일을 검색 한 다음 해당 메시지를 스크립트와 함께 전달할 수 있습니다. 그런 다음 already_sent 레이블을 추가하여 전달되지 않도록하십시오. 그런 다음 1 분, 5 분, 10 분 또는 사용자 계정이 가질 수있는 모든 것을 실행하도록 코드를 트리거하십시오.

이 스크립트의 저자는 시도하지는 않았지만 원하는 것을 할 수 있다고 주장합니다 : https://www.labnol.org/internet/auto-forward-gmail-messages/20665/


2

보낸 이메일을 다른 계정으로 자동 전달할 수있는 방법은 없습니다.

옵션 메일 클라이언트를 사용하여 보낸 메일을 한 계정에서 다른 계정으로 끌어다 놓거나 일괄 처리하는 것입니다. Thunderbird에 적합한 플러그인을 사용하면 특정 폴더를 자동 전달할 수 있습니다.


2

Greasemonkey에 Gmail 자동 숨은 참조 를 사용하십시오 .

/* This greasemonkey script automatically BCCs (or CCs) outgoing email from 
 * a gmail address to a specified email address
 *
 * Author: Jaidev K Sridhar mail<AT>jaidev<DOT>info
 * Version: v20130510-1
 * 
 * Copyright (c) 2005-2011, Jaidev K Sridhar
 * Released under the GPL license version 2.
 * http://www.gnu.org/licenses/gpl-2.0.html
 */

// ==UserScript==
// @name        Gmail Auto BCC
// @namespace   http://jaidev.info/home/projects/gmailAutoBcc
// @description This greasemonkey script automatically BCCs (or CCs) outgoing email from a gmail address to a specified email address. This version is for the "new" version of gmail (Nov 2007).
// @include     http*://mail.google.com/mail/*
// @include     http*://mail.google.com/a/*
// @version     v20130510-1
// ==/UserScript==

// Control parameters -- tweak in about:config
// gBccMail = email Address : Email address to BCC to
// gBccEnabled = true / false
// gBccPopup = true / false : Pops up a confirmation prompt before adding BCC
// gBccHeader = "bcc" : Header to add. By default BCC. Can be set to "cc".
// gBccMapFromAddress = true / false : Use different addresses for different
//                                     identities or different gmail accounts
// gBccLogging = 0-3 : Set log level (0-Disable, 1-Errors, 2-Warnings, 3-Verbose)
//

var redo_copy = 0;
var force_popup = false;        /* For non-firefox users */
var gmail = null;
var logging = 0;
var L_ERR = 1;
var L_WAR = 2;
var L_VER = 3;
var ga_retries = 0;
var TOCLS = "dK nr";
var TOLISTCLS = "am";
var REBTN1 = "T-I J-J5-Ji T-I-Js-IF aaq T-I-ax7 L3";
var REBTN2 = "mG";
//var FWBTN2 = "XymfBd mD";
var RABTN = "b7 J-M";
var SENDTOOLTIP = "Send";

function gBccLog (level, logmsg) {
    if (logging == 0) {
    logging = GM_getValue ('gBccLogging');
    if (logging == undefined) {
        logging = 1;
        GM_setValue ('gBccLogging', logging);
    }
    }
    if (logging >= level) {
    var d = new Date();
    GM_log ("<" + level + ">[" + d.toLocaleTimeString() + "] " + logmsg);
    }
}

function addBcc (tgt, oD) {
    var enabled = GM_getValue('gBccEnabled');
    if (enabled == false) {
    gBccLog (L_VER, "Script disabled");
    return;
    }
    else if (enabled != true) {
    /* We're probably running for the first time */
    GM_setValue('gBccEnabled', true);
    GM_setValue('gBccPopup', false); // FALSE by default
    GM_setValue('gBccMapFromAddress', true); // TRUE by default 
    GM_setValue ('gBccLogging', 1);
    enabled = true;
    }
    var form;
    var forms = oD.getElementsByTagName ('form');
    for (var i = 0; i < forms.length; i++) {
    if (forms[i].elements.namedItem ('bcc')) {
        form = forms[i];
        break;
    }
    }
    //if (tgt.form) {
    //  form = tgt.form;
    //}
    //else {
    //  if (tgt.getAttribute ('class') == REBTN) {
    //    form = tgt.parentNode.parentNode.nextSibling.firstChild.firstChild.firstChild.nextSibling.lastChild.firstChild.lastChild.firstChild.firstChild.firstChild.nextSibling.firstChild;
    //  }
    //  else if (tgt.getAttribute ('class') == RABTN) {
    //    form = tgt.parentNode.parentNode.nextSibling.firstChild.firstChild.lastChild.lastChild.firstChild.lastChild.firstChild.firstChild.firstChild.nextSibling.firstChild;
    //  }
    //}
    if (!form) {
    gBccLog (L_ERR, "No form");
    return;
    }
    var header = GM_getValue ('gBccHeader');
    if (!header || !(header == "cc" || header == "bcc")) {
    header = "bcc";
    GM_setValue ('gBccHeader', "bcc");
    }
    gBccLog (L_VER, "Header = " + header);
    var dst_field;
    if (header == "cc")
    dst_field = form.elements.namedItem('cc');
    else 
    dst_field = form.elements.namedItem('bcc');
    if (!dst_field) {
    gBccLog (L_ERR, "No dst");
    return;
    }
    var gStatus = dst_field.getAttribute ('gid');
    dst_field.setAttribute ('gid', "gBccDone");
    /* Get the address to cc/bcc to */
    var mapFrom = GM_getValue ('gBccMapFromAddress');
    var remove = false;
    if (form.elements.namedItem ('from')) {
    var from = form.elements.namedItem('from').value;
    }
    else {
    from = GM_getValue ('gBccCU');
    }
    if (mapFrom == true && from) {
    gBccLog (L_VER, "Mapping identities");
    var email = GM_getValue ('gBccMail_' + from);
    if (gStatus == "gBccDone" && redo_copy == 0) {
        if (tgt.nodeName == 'SELECT') {
        var lue = GM_getValue ('gBccLU');
        if (lue == null) {
            remove = false;
        }
        else if (lue == email) {
            gBccLog (L_VER, "Already copied");
            return;
        }
        var lu = new RegExp (lue + "(, )?");
        remove = true;
        }
        else {
        return;
        }
    }
    if (email == "disabled") {
        gBccLog (L_VER, "Disabled for sender " + from);
        if (remove == false)
        return;
        email = "";
    }
    if (!email) {
        email = prompt("gmailAutoBcc: Where do you want to bcc/cc your outgoing gmail sent from identity: " + from + "?\n\n Leave blank to disable gmailAutoBcc for this identity.");
        if (email == false) {
        GM_setValue ('gBccMail_' + from, "disabled");
        gBccLog (L_VER, "Disabling for sender " + from);
        if (remove == false)
            return;
        email = "";
        }
        else {
        GM_setValue ('gBccMail_' + from, email);
        gBccLog (L_VER, "Enabling for sender " + from + "; Copying " + email);
        }
    }
    }
    else {
    gBccLog (L_VER, "Not mapping");
    if (gStatus == "gBccDone" && redo_copy == 0) {
        /* Don't insert again! */
        gBccLog (L_VER, "Already copied");
        return;
    }
    var email = GM_getValue('gBccMail');
    if (!email) {
        email = prompt("gmailAutoBcc: Where do you want to bcc/cc all your outgoing gmail?");
        if (email == null || email == "" ) 
        return;
        GM_setValue('gBccMail', email);
        gBccLog (L_VER, "Enabling default, copying " + email);
    }
    if (mapFrom != false) 
        GM_setValue('gBccMapFromAddress', true); // TRUE by default
    }
    /* Should we confirm? */
    redo_copy = 0;
    var popup = GM_getValue ('gBccPopup');
    if ((popup == true || force_popup == true) && email != "" ) {
    if (confirm("Do you want to add BCC to " + email + "?") == false) {
        gBccLog (L_VER, "Not copying");
        return;
    }
    }
    else if (popup != false) {
    GM_setValue ('gBccPopup', false); // FALSE by default
    }
    if (dst_field.value) {
    if (remove) {
        var bcc_str = dst_field.value;
        if (bcc_str.match (lu)) {
        /* Remove old email */
        var new_bcc_str = bcc_str.replace (lu, "");
        var end = new RegExp ("(, )?$");
        dst_field.value = new_bcc_str.replace (end, "");
        gBccLog (L_VER, "Replaced " + lue + " with " + email);
        }
    }
    }
    if (email == "")
    return;
    if (dst_field.value) {
    dst_field.value = dst_field.value+", " +email;
    }
    else {
    dst_field.value = email;
    }
    gBccLog (L_VER, "Copied " + email);
    /* Don't repeat */
    GM_setValue ('gBccLU', email);
}

function gBccInit () 
{
    try {
    if (typeof (GM_getValue) != 'function')  {
            GM_log ("gmailAutoBcc: Greasemonkey function not available. If on Google Chrome or Chromium, re-install the script through TamperScript.");
    }
    var root = document;
    if (unsafeWindow.GLOBALS) {
            GM_setValue ('gBccCU', unsafeWindow.GLOBALS[10]);
    }
    root.addEventListener ("blur", function(event) {
        if (typeof (event.target.getAttribute) == 'function') {
        var tg_cl = event.target.getAttribute ("class");
        if (!tg_cl) return;
        if (tg_cl.match (TOCLS)) {
            gBccLog (L_VER, "Trigger = field");
            window.setTimeout (addBcc, 500, event.target, event.target.ownerDocument);
        }
        else if (tg_cl.match (REBTN1) || 
             tg_cl.match (RABTN)) {
            gBccLog (L_VER, "Trigger = timeout");
            window.setTimeout (addBcc, 500, event.target, event.target.ownerDocument);
        }
        else {
            //gBccLog (L_VER, "blur: " + tg_cl);
            return;
        }
        }
    }, true);
    root.addEventListener ("change", function (event) {
        if (event.target.getAttribute ('name') == 'from') {
        gBccLog (L_VER, "Trigger = sender change");
        addBcc (event.target, event.target.ownerDocument);
        }
        else if (event.target.getAttribute ('name') == 'to') {
        gBccLog (L_VER, "Trigger = to");
        window.setTimeout (addBcc, 500, event.target, event.target.ownerDocument);
        }
    }, true);
    root.addEventListener ("click", function (event) {
        if (typeof (event.target.getAttribute) == 'function') {
        var tg_cl = event.target.getAttribute ("class");
        if (tg_cl && tg_cl.match (REBTN2))
        {
            gBccLog (L_VER, "CLICK: " + tg_cl);
            redo_copy = 1;
            window.setTimeout (addBcc, 500, event.target, event.target.ownerDocument);
        }
        else {
            //gBccLog (L_VER, "CLICK: " + tg_cl);
        }
        var tip = event.target.getAttribute("data-tooltip");
        if (tip && tip.match (SENDTOOLTIP)) {
            addBcc(event.target, event.target.ownerDocument);
        }
        }
    }, true);

    gBccLog (L_VER, "Initialized Script");
    }
    catch (ex) {
    GM_log ("gmailAutoBcc: Exception '"+ ex.message);
    if (ga_retries < 3) {
        ga_retries ++;
        window.setTimeout (gBccInit, 250);
    }
    }
} /* gBccInit */

window.setTimeout (gBccInit, 750);

1

내가 아는 한, 두 가지 방법이 있습니다. 그중 하나는 배포 목록을 작성하고 모든 전자 메일을 여기에 추가하며 모든 회신을 수행해야하거나 Greasemonkey 스크립트를 설치 하면 원하는 종류의 작업을 수행 할 수 있습니다.


1

그냥 그렇게하기 위해 PHP 라이브러리를 만들었습니다 : fog

웹 서버에서 파일을 복사하고 use.php 파일을 사용자 정의한 후 MyWebCron에서 cron또는 webcron이와 유사한 페이지를 호출 하면됩니다.

$hostname변수의 폴더 이름 부분은 받은 편지함 이름과 일치하도록 사용자 정의해야합니다.


내 질문은 다른 몇 달 전에 있었기 때문에 다른 질문은 중복 될 것이라고 생각합니다. 그러나 답을 알려 주셔서 감사합니다.
Doug Harris

당신이 옳습니다. 그래서 나는 대답을 여기에 넣었습니다
Ka.

카, 나는 자동으로 다른 메일로 보낸 메일의 사본을 수신 할 수있는 방법, 매우 기술 아니라고 감사 (모두 Gmail 계정 있다고 가정)

@yousuf, 나는 그것을하는 기존의 서비스를 모른다.하지만 당신이 정말로 그것을 필요로한다면, 메일 (ka@weedo.fr)로 저에게 연락하십시오, 나는 당신에게 제안을 보낼 것이다. 주변에 개발자가 있으면 내 코드를 사용하고 개선 할 수도
있습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.