如何确认我的Gmail邮件投递成功?

3 投票
1 回答
536 浏览
提问于 2025-04-17 18:19

如果你用 Gmail 给一个邮件列表发邮件,你会发现自己发的邮件不会出现在收件箱里,因为它会立刻被归档。很多人对 Gmail 这种行为表示不满,但到现在为止,你也没有办法解决这个问题。

那么,有没有什么办法可以确认你发的邮件是否成功发送呢?

(注意,如果邮件列表的管理员需要一些时间来审核你的邮件,你可能希望在你的邮件被发送给列表的订阅者时得到通知。)

1 个回答

1

仅为自己启用确认功能

在mailman中有一个选项,可以让你知道你的邮件是否已经送达:

我怎么才能让Mailman告诉我我的帖子是否被列表接收了?(确认选项)

[...]

如果你想通过邮件来设置这个功能:

给LISTNAME-request@DOMAIN发一封邮件,内容是设置确认开启(set ack on)或关闭(set ack off)。

通过命令行为所有用户更改设置

如果你是mailman列表的管理员,或者管理着多个mailman列表的服务器,你可能想为列表中的所有gmail用户更改这个选项。在这种情况下,下面的脚本可以帮助你通过命令行自动更改这个选项。

  • 将以下内容保存到 /usr/lib/mailman/bin/ackpostforgmail.py (文件名很重要!将 /usr/lib/mailman 替换为你mailman安装的路径!)
  • cd /usr/lib/mailman/bin/
  • sudo withlist -r ackpostforgmail LISTNAME

    # Call this script with:
    # cd /usr/lib/mailman/bin/
    # withlist -r ackpostforgmail LISTNAME
    
    from Mailman import mm_cfg
    
    def ackpostforgmail(m):
        # m is the maillist object for the list LISTNAME
    
        # We need to lock the list, since we want to change something...
        m.Lock()
    
        print "Setting 'AcknowledgePosts' to True for all gmail adresses of the list..."
        for memb in m.members:
            # If the mailadress memb contains 'gmail'...
            if 'gmail' in memb:
                # ...set the ackpost option...
                prev_state = m.getMemberOption(memb, mm_cfg.AcknowledgePosts)
                m.setMemberOption(memb, mm_cfg.AcknowledgePosts,True)
                after_state = m.getMemberOption(memb, mm_cfg.AcknowledgePosts)
    
                print "%s: %s -> %s" % (memb, prev_state, after_state)
    
        m.Save()
    

如果你想对所有列表运行这个命令,可以在 with_list 命令中加上 -a 选项。否则,你可以使用 list_lists 命令来查看你正在运行哪些列表。

撰写回答