邮件收发错误

ERPNext 中,您可以自定义入站和出站电子邮件网关。保存电子邮件账户时,ERPNext 会尝试与您的电子邮件网关建立连接。如果您的 ERPNext 账户能够正常连接,则电子邮件账户会成功保存。如果无法连接,您可能会收到如下错误提示。

这表明,使用电子邮件账户中提供的登录凭据和其他电子邮件网关详细信息,ERPNext 无法连接到您的电子邮件服务器。请确保您为电子邮件网关输入了有效的电子邮件凭据。成功配置电子邮件账户后,您应该能够正常从 ERPNext 账户发送和接收电子邮件。

注意:默认情况下,您的 ERPNext 账户已连接到 ERPNext 电子邮件服务器。如果您不想使用自己的电子邮件服务器,可以继续使用 ERPNext 电子邮件服务器发送电子邮件,无需在电子邮件账户中进行任何配置。

在ERPNext中配置Sendgrid SMTP邮件

SMTP,即简单邮件传输协议,是一种快速简便的电子邮件发送方式,用于在服务器之间传输邮件。SendGrid 提供 SMTP 服务,允许您通过我们的服务器而不是您的客户端或服务器来发送电子邮件。ERPNext 内置了配置好的电子邮件客户端,因此您可以在 ERPNext 中发送和接收电子邮件,并在需要时将其附加到文档中。

集成 SendGrid 的 Web API

SendGrid 的 SMTP API 允许开发人员通过在邮件中插入 X-SMTPAPI 头来指定自定义的处理指令。

步骤 1:您需要创建一个 API 密钥来验证您的应用程序。在本例中,是 ERPNext。在此处了解有关通过 SMTP 集成 SendGrid 的更多信息。

点击 SMTP 中继

生成一个 API 密钥

步骤 2:创建 API 密钥后,您需要在您的 ERPNext 账户中进行配置 > 创建一个新的 电子邮件账户

电子邮件地址: 您的电子邮件地址

服务:选择 “SendGrid

勾选“使用不同的电子邮件 ID”

备用电子邮件 ID: apikey

密码:

外发服务器:

端口:

对于 SSL 连接,取消勾选“使用 TLS”选项

现在保存此信息,您已成功在 ERPNext 中配置了 SendGrid SMTP 电子邮件。

祝您成功!




配置回复邮箱地址

“回复地址”电子邮件地址是根据所需电子邮件账户中的“默认接收”复选框设置的。

前提条件:

您必须在“电子邮件账户”文档类型中为所需电子邮件地址创建一个电子邮件地址记录,例如,‘[email protected]’。

步骤:

在“电子邮件账户”文档类型中为电子邮件地址‘[email protected]’创建的记录中,启用“启用接收”复选框,然后启用“默认接收”复选框。启用“默认接收”复选框后,此电子邮件将被设置为“回复地址”中的电子邮件(示例截图如下)。

有关电子邮件账户的更多信息,请点击此处。

在通知邮件中包含文档链接

ERPNext 中发送电子邮件通知时,很多时候我们需要将单据 ID 作为链接包含在邮件消息中。例如,如果我们为每个新的物料需求单设置了提醒(通知),那么我们希望新物料需求单的链接也能通过电子邮件发送给我们。要进行设置,请按照以下步骤操作:

  1. 前往通知列表,点击新建。

  2. 为任意单据类型创建新通知。在本例中,我们以创建每个新物料需求单时发送电子邮件通知为例,如下所示。

  3. 要将关联记录的单据 ID 作为链接发送,请在邮件消息中复制以下代码片段:

    <a href="{{frappe.utils.get_url_to_form(doc.doctype, doc.name)}}">{{doc.name}}</a>

  4. 现在,当创建新的物料需求单时,由于上述设置的通知,您将收到以下电子邮件。

    点击链接后,您将跳转到新的物料需求单。

短信设置

您可以订阅短信服务商,向手机号码发送短信。

要在 ERPNext 中集成短信功能,请寻找提供 HTTP API 的短信网关服务商。他们会为您创建一个账户,并提供唯一的用户名和密码。

要访问短信设置,请前往:

首页 > 设置 > 短信设置

要在 ERPNext 中配置短信设置,请查找他们的 HTTP API(一份描述如何从第三方应用程序访问其短信接口的文档)。在这份文档中,您会得到一个用于通过 HTTP 请求发送短信的 URL。使用此 URL,您可以在 ERPNext 中配置短信设置。

示例短信网关 URL:

http://instant.smses.com/web2sms.php?username=&password;=&to;=&sender;=&message;=消息>发送者ID>手机号码>密码>用户名>

注意:对于短信网关 URL,只包含 “?” 之前的字符串。

示例:

http://instant.smses.com/web2sms.php?username=abcd&password;=abcd&to;=9900XXXXXX&sender; =DEMO&message;=THIS+IS+A+TEST+SMS

上述 URL 将从账户 abcd 向手机号码 9900XXXXXX 发送短信,发送者 ID 为 DEMO,文本消息为 “THIS IS A TEST SMS”。

请注意,URL 中的某些参数是静态的。您将从短信服务商处获得静态值,例如用户名、密码等。这些静态值应输入到静态参数表中。

如何使用 Voip.ms 配置 ERPNext

第一步是登录您的 voip.ms 账户。然后前往主菜单SOAP 和 REST/JSON API。启用 API,设置密码,并将您的服务器 IP 地址加入白名单。

然后前往 DID,在用于发送短信的号码上启用短信功能。

将短信网关设置为 https://voip.ms/api/v1/rest.php

将消息参数设置为 message

将接收者参数设置为 dst

创建 4 个新的静态参数:

  • api_username(voip.ms 账户用户名)

  • api_password(几分钟前配置的 API 密码)

  • method 将值设置为 sendSMS

  • did(用于发送短信的 10 位 DID 号码)

然后前往短信中心测试一切是否正常工作。

  1. 电子邮件账户
  2. 通知

单据跟踪

在 v12 版本中引入

文档关注是一项功能,允许用户通过电子邮件通知跟踪文档的变更。

1. 如何激活文档关注

  1. 前往:设置 > 我的设置
  2. 在“文档关注”部分,勾选“为我关注的文档发送通知”复选框。
  3. 设置您希望接收电子邮件的频率。
  4. 现在,您就可以接收所关注文档的电子邮件了。

1.1 如何关注文档

  1. 打开任意文档,您会看到关注该文档的选项。
  2. 点击“关注”。

  1. 关注后,您也可以取消关注某个文档。

  2. 请注意,您只能关注那些已开启跟踪变更的文档。

  3. 要启用跟踪变更,请前往 菜单 > 自定义 > 勾选“跟踪变更”复选框

1.2 自动关注

在激活文档关注后,以下情况文档会被自动关注:

  • 当您创建新文档时。
  • 当您修改文档时。
  • 当您使用心形图标点赞文档时。
  • 当其他用户与您共享文档或将您指派给某个文档时,您将自动关注该文档。

文档关注的电子邮件通知示例如下:

  1. 将电子邮件链接到文档
  2. 通知

通知

您可以在系统中配置各种通知,以提醒您重要的活动。

  1. 任务的完成日期。
  2. 销售订单的预计交货日期。
  3. 预计付款日期。
  4. 跟进提醒。
  5. 当收到或发出的订单超过特定金额时。
  6. 合同到期通知。
  7. 任务的完成/状态变更。

要访问通知设置,请前往:

首页 > 设置 > 通知

  1. 设置警报

要设置通知:

  1. 在“发送警报于”下定义您要监控的事件。事件包括:

    1. 新建:当创建所选类型的新文档时。
    2. 保存/提交/取消:当保存、提交或取消所选类型的文档时。
    3. 天数前/天数后:在参考日期之前或之后的几天触发此警报。要设置天数,请设置天数前或天数后。这有助于提醒您即将到来的截止日期,或提醒您跟进某些潜在客户或报价。
    4. 值变更:当所选类型中的特定值发生变化时。
    5. 方法:当触发特定方法时发送通知。例如:before_insert。
    6. 自定义:向选定的电子邮件账户发送通知。
  2. 选择您要监控变更的文档类型。从版本16开始,如果“发送警报于”设置为天数前天数后,您还可以选择子文档类型。

  3. 如果需要,设置附加条件。

  4. 设置此警报的收件人。收件人可以是文档的字段,也可以是固定的电子邮件地址列表。

  5. 编写消息。

  6. 保存。

1.1 设置主题

您可以通过使用 doc.[field_name] 来获取特定字段的数据。要在主题/消息中使用它,您必须用 {% raw %}{{ }}{% endraw %} 将其包围。这些被称为 Jinja 标签。例如,要获取文档的名称,您可以使用 {% raw %}{{ doc.name }}{% endraw %}。以下示例在保存任务时发送一封电子邮件,主题为“TASK#### 已创建”。

1.2 设置条件

通知允许您根据文档中的字段数据设置条件。例如,如果您希望在潜在客户保存为“感兴趣”状态时收到电子邮件,您可以在条件文本框中输入 doc.status == "Interested"。您还可以通过使用运算符 andor 组合它们来设置更复杂的条件。

以上示例将在保存状态为“开放”且“预期结束日期”等于或早于保存日期的任务时发送通知。

1.3 设置消息

您可以在消息文本框中同时使用 Jinja 标签 ({% raw %}{{ doc.[field_name] }}{% endraw %}) 和 HTML 标签。

{% raw %}<h3>Order Overdue</h3>

交易 {{ doc.name }} 已超过截止日期。请采取必要措施。

{% if comments %} 最后评论:{{ comments[-1].comment }} 由 {{ comments[-1].by }} 发表 {% endif %}

Details

  • 客户:{{ doc.customer }}
  • 金额:{{ doc.total_amount }}

{% endraw %}

1.4 设置警报发送后的值

有时,为了确保通知不会多次发送,您可以定义一个自定义属性(通过自定义表单),例如“通知已发送”,然后通过设置警报后设置属性字段,在警报发送后设置此属性。

然后,您可以将其用作条件规则中的条件,以确保不会多次发送电子邮件。

1.5 示例

  1. 定义标准
  2. 设置收件人和消息

  1. Slack 通知

如果您希望将通知发送到专用的 Slack 频道,您还可以在频道选项中选择“Slack”,并选择相应的 Slack Webhook URL。

2.1 Slack Webhook URL

Slack Webhook URL 是直接指向 Slack 频道的 URL。

要生成 Webhook URL,您需要创建一个新的 Slack 应用:

  1. 前往 https://api.slack.com/slack-apps。
  2. 点击“创建 Slack 应用”。
  3. 为您的应用命名并选择正确的工作区。应用创建后,前往“传入 Webhook”部分,并添加一个新的 Webhook 到工作区。
  4. 复制创建的链接,返回 ERPNext 并在集成 > Slack Webhook URL 中使用它来创建新的 Slack Webhook URL。
  5. 在通知的频道和 Slack 频道字段中选择 Slack 和您的 Slack 频道。

2.2 消息格式

与电子邮件消息不同,Slack 不支持 HTML 格式。

相反,您可以使用 Markdown 格式:Slack 文档

示例:{% raw %} 订单逾期

Transaction {{ doc.name }} has exceeded Due Date. Please take the necessary action.

{% if comments %}
Last comment: {{ comments[-1].comment }} by {{ comments[-1].by }}
{% endif %}

*Details*

• Customer: {{ doc.customer }}
• Amount: {{ doc.grand_total }}
{% endraw %}


  1. 系统通知

版本12中,我们引入了针对分配提及共享文档能量点的系统通知。这些通知显示在导航栏右上角的通知下拉菜单中。

版本 13中,我们引入了一个额外的渠道来发送提醒 – 系统通知

选择此渠道后,当触发通知时,将发送系统通知,而不是电子邮件或 Slack 通知。

点击通知会跳转到通知日志文档,其中包含配置的主题、消息以及附件(如果设置了“附加打印”):

如果同时需要电子邮件/Slack 提醒和系统通知,可以将主渠道设置为电子邮件或 Slack,并勾选此选项:

  1. WhatsApp

版本 13中,我们引入了一个额外的渠道来发送提醒 – WhatsApp

如果您希望将通知发送到 WhatsApp 号码,您还可以在渠道选项中选择“WhatsApp”选项,并选择相应的 Twilio 号码。Twilio 号码可以添加到 Frappe 的 Twilio 设置中。WhatsApp 消息只能发送到包含国家代码的号码。

4.1 Twilio 设置

要配置 Twilio 设置,您需要先从您的 Twilio 账户设置中获取 Twilio 凭据。您只能添加那些已在您的 Twilio 账户中激活并具有 WhatsApp 访问权限的电话号码。

4.2 消息格式

WhatsApp 允许其用户仅向客户发送那些已预先批准的消息模板。未能遵守此规定可能会导致您的 Twilio 账户受到限制。

  1. 短信

版本 13中,我们引入了一个额外的渠道来发送提醒 – 短信

要使用此渠道,您需要完成短信设置的配置。

  1. 短信设置
  2. 文档关注

7. 一次性提醒

注意:此功能目前仅在夜间版本中可用。

由于设置通知是一个相当复杂的过程,Frappe 框架还提供了一种在文档上设置一次性提醒的方法。此类通知的示例是“提醒我在 4 小时后跟进此线索”。

要在文档上设置一次性提醒:

  1. 打开您要设置提醒的文档
  2. 点击菜单(三个点)> “提醒我”
  3. 选择时间并为自己添加描述,然后点击“创建”
  4. 系统将在您配置的时间附近向您发送一条系统通知,提醒描述作为主题。

自动邮件报告

自动邮件报告会自动发送所选文档的报告。

您可以设置自动邮件报告,以定期发送报告。这些报告必须是已保存的任何类型(报表生成器、脚本或查询报告)的报告。

您可以在以下位置找到自动邮件报告:

首页 > 设置 > 自动邮件报告

  1. 如何创建自动邮件报告

  1. 转到自动邮件报告列表,点击新建。
  2. 选择您要为其生成邮件的报告。
  3. 选择您要为其创建此报告的用户(权限将应用于此用户)。
  4. 设置您希望接收此报告的电子邮件地址以及报告的发送频率。邮件将在午夜发送。如果是每周/每月/每年频率,日期将重复。

5. 保存。

您可以通过点击“下载”或“立即发送”来测试报告。以下是您将收到的总分类账报告的邮件示例:

  1. 功能

2.1 筛选数据

  • 仅在有数据时发送:如果启用,当报告中没有数据时,将不会发送邮件。
  • 仅发送过去 X 小时内更新的记录:如果设置为 24,邮件将仅包含过去 24 小时内更新的记录。
  • 行数:邮件中要发送的行数。最大值为 500。

2.2 报告筛选条件

如果您的报告有筛选条件,您将能够看到它们。点击表格进行编辑:

例如,如果邮件是关于报告“项目计费摘要”,请选择项目。这里的日期范围是“项目计费摘要”的日期范围。

2.3 消息

还可以添加一条消息与邮件报告一起发送。例如,“这是您的月度项目计费摘要报告:”

您还可以更改创建报告的文件格式。可用选项包括 HTML、XLSX 和 CSV。

  1. 邮件摘要
  2. 文档关注

从任意文档发送邮件

ERPNext 中,您可以通过打开任意文档后,点击菜单 > 电子邮件,将该文档作为电子邮件(附带 PDF 附件)发送。

注意: 您需要先设置好发件邮箱账户才能使用此功能。

点击发送后,邮件会被添加到邮件队列中。它将处于“正在发送”状态,直到发送成功。邮件的状态会显示在队列中;如果发送失败,可以点击“立即发送”重新发送。

发送电子邮件时,有以下选项可供使用:

  • 收件人: 邮件的接收者。
  • 发件人: 如果用户有多个发件邮箱账户,可以选择使用哪一个。多个发件邮箱账户可以通过在用户文档的“用户邮箱”表中添加来配置。
  • 抄送: 邮件的副本。当您希望某人了解对话内容,但不需要直接向其发送邮件时,此功能很有用。
  • 密送: 密件抄送与抄送类似,但邮件线程中的其他人都看不到邮件也发送给了密送收件人。当您向许多互不相识的人发送邮件时,此功能可用于隐藏某些人的电子邮件地址。
  • 邮件模板: 您可以创建预设模板来发送标准回复。系统中已提供发货通知、请假状态通知和请假审批通知的邮件模板。您可以通过“自定义表单”设置默认邮件模板。
  • 发送副本给我: 这会将邮件副本发送到您的邮箱地址。这有助于确保邮件已无误发送。
  • 发送已读回执: 勾选此复选框后,如果收件人已阅读邮件,您将收到通知。如果有多个收件人,即使只有一人阅读了邮件,您也会收到通知。
  • 附加文档打印件: 附加您通过电子邮件发送的文档的 PDF 文件。
  • 选择附件: 可以在此处添加任何其他附件。

以下两个字段是打印屏幕上显示的字段:

  • 选择打印格式: 文档的打印格式。在此处了解有关打印格式的更多信息。
  • 选择语言: 生成 PDF 时使用的语言。
  1. 邮件域名
  2. 邮件账户
  3. 邮件收件箱