Sample Email Service Code

DEX502 - Module 14: Apex and Integration

📄 第 612 页 🎬 视频课程

课程章节介绍

今天我们来聊聊Salesforce中的电子邮件服务,特别是如何设置一个入站电子邮件服务来处理收到的邮件。这个功能非常有用,比如你可以用它来自动创建Ideas(想法)记录,或者处理其他类型的请求。 首先,我们需要创建一个Apex类来处理这些入站邮件。这个类会实现`Messaging.InboundEmailHandler`接口,这样Salesforce就知道这个类是用来处理邮件的。 ```apex global class IdeaEmailService implements Messaging.InboundEmailHandler { global Messaging.InboundEmailResult handleInboundEmail(Messaging.InboundEmail email, Messaging.InboundEnvelope envelope) { Messaging.InboundEmailResult result = new Messaging.InboundEmailResult(); // 创建一个新的Idea记录 Idea newIdea = new Idea(); newIdea.Title = email.subject; // 使用邮件主题作为Idea的标题 newIdea.Description = email.plainTextBody; // 使用邮件正文作为Idea的描述 try { insert newIdea; // 将新的Idea记录插入数据库 result.success = true; } catch (Exception e) { result.success = false; result.message = '创建Idea时出错: ' + e.getMessage(); } return result; } } ``` 接下来,我们需要在Salesforce中设置一个电子邮件服务。这个服务会指向我们刚刚创建的Apex类。 1. 进入“设置” -> “开发” -> “电子邮件服务”。 2. 点击“新建电子邮件服务”。 3. 填写服务名称和描述。 4. 在“Apex类”字段中,选择我们刚刚创建的`IdeaEmailService`类。 5. 设置其他选项,比如是否接受附件、是否接受HTML邮件等。 6. 保存设置。 最后,我们需要为这个电子邮件服务生成一个唯一的电子邮件地址。这个地址就是用来接收邮件的。 1. 在电子邮件服务的详情页面,点击“新建电子邮件地址”。 2. 填写相关信息,比如电子邮件地址的名称和描述。 3. 保存设置。 现在,当有人发送邮件到这个地址时,Salesforce会自动调用我们的Apex类来处理邮件,并创建一个新的Idea记录。 这就是一个简单的入站电子邮件服务的设置过程。希望这个例子能帮助你理解如何在Salesforce中处理入站邮件。如果有任何问题,随时问我哦!