[PR #719] [MERGED] feat: enhancement to email tool plugin for SES email with reply-to #1511

Closed
opened 2026-02-16 10:23:09 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/langgenius/dify-official-plugins/pull/719
Author: @luke-dingle
Created: 4/15/2025
Status: Merged
Merged: 4/25/2025
Merged by: @crazywoola

Base: mainHead: feat/email-aws-ses-support


📝 Commits (3)

  • 9d68d4e feat: enhancement to email tool plugin for SES email
  • 8c4301b Unbump version from meta section
  • 87d282b Remove debug print

📊 Changes

6 files changed (+87 additions, -35 deletions)

View changed files

📝 tools/email/manifest.yaml (+1 -1)
📝 tools/email/provider/email.yaml (+12 -0)
📝 tools/email/tools/send.py (+23 -17)
📝 tools/email/tools/send_mail.py (+29 -17)
📝 tools/email/tools/send_mail.yaml (+11 -0)
📝 tools/email/tools/send_mail_batch.yaml (+11 -0)

📄 Description

Related Issues or Context

  • Attempting to send emails through AWS's Simple Email Service (SES) was leading to problems.
  • email_account for SES is a non-email SMTP credential set up through AWS.
  • Trying to use just a from address and the SMTP credential password was not passing SES login validation
  • Trying to use the non-email credential in email_account, the tool was also using the non-email credential as the sender address and it was failing regex validation on tool side.

This pull request adds the option to define email_account and sender_address as two separate values so that SES can be used for email sending.

Fix also adds the ability to define a reply_to address so that email replies can go somewhere other than the sender's inbox.

This PR contains Changes to Non-Plugin

  • Documentation
  • Other

This PR contains Changes to Non-LLM Models Plugin

  • I have Run All Tests Relevant to My Changes
image image image

This PR contains Changes to LLM Models Plugin

  • My Changes Affect Message Flow Handling (System Messages and User→Assistant Turn-Taking)
  • My Changes Affect Tool Interaction Flow (Multi-Round Usage and Output Handling, for both Agent App and Agent Node)
  • My Changes Affect Multimodal Input Handling (Images, PDFs, Audio, Video, etc.)
  • My Changes Affect Multimodal Output Generation (Images, Audio, Video, etc.)
  • My Changes Affect Structured Output Format (JSON, XML, etc.)
  • My Changes Affect Token Consumption Metrics
  • My Changes Affect Other LLM Functionalities (Reasoning Process, Grounding, Prompt Caching, etc.)
  • Other Changes (Add New Models, etc.)

Version Control (Any Changes to the Plugin Will Require Bumping the Version)

  • I have Bumped Up the Version in Manifest.yaml (Top-Level Version Field, Not in Meta Section)

Environment Verification (If Any Code Changes)

Local Deployment Environment

  • I have Tested My Changes on Local Deployment Dify with a Clean Environment That Matches the Production Configuration. Dify Version is: 1.2.0

SaaS Environment

  • I have Tested My Changes on cloud.dify.ai with a Clean Environment That Matches the Production Configuration

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/langgenius/dify-official-plugins/pull/719 **Author:** [@luke-dingle](https://github.com/luke-dingle) **Created:** 4/15/2025 **Status:** ✅ Merged **Merged:** 4/25/2025 **Merged by:** [@crazywoola](https://github.com/crazywoola) **Base:** `main` ← **Head:** `feat/email-aws-ses-support` --- ### 📝 Commits (3) - [`9d68d4e`](https://github.com/langgenius/dify-official-plugins/commit/9d68d4e512d7ee4ab513556641524d2304a7c4c1) feat: enhancement to email tool plugin for SES email - [`8c4301b`](https://github.com/langgenius/dify-official-plugins/commit/8c4301bb6993b004fecefb82fc1dc04e6af6d066) Unbump version from meta section - [`87d282b`](https://github.com/langgenius/dify-official-plugins/commit/87d282bf0bc4fe7a4c4688f69d1229684f0d89b2) Remove debug print ### 📊 Changes **6 files changed** (+87 additions, -35 deletions) <details> <summary>View changed files</summary> 📝 `tools/email/manifest.yaml` (+1 -1) 📝 `tools/email/provider/email.yaml` (+12 -0) 📝 `tools/email/tools/send.py` (+23 -17) 📝 `tools/email/tools/send_mail.py` (+29 -17) 📝 `tools/email/tools/send_mail.yaml` (+11 -0) 📝 `tools/email/tools/send_mail_batch.yaml` (+11 -0) </details> ### 📄 Description ## Related Issues or Context - Attempting to send emails through AWS's Simple Email Service (SES) was leading to problems. - `email_account` for SES is a non-email SMTP credential set up through AWS. - Trying to use just a from address and the SMTP credential password was not passing SES login validation - Trying to use the non-email credential in `email_account`, the tool was also using the non-email credential as the sender address and it was failing regex validation on tool side. This pull request adds the option to define `email_account` and `sender_address` as two separate values so that SES can be used for email sending. Fix also adds the ability to define a `reply_to` address so that email replies can go somewhere other than the sender's inbox. ## This PR contains Changes to *Non-Plugin* <!-- Put an `x` in all the boxes that apply by replacing [ ] with [x] For example: - [x] Documentation --> - [ ] Documentation - [ ] Other ## This PR contains Changes to *Non-LLM Models Plugin* - [x] I have Run All Tests Relevant to My Changes <img width="430" alt="image" src="https://github.com/user-attachments/assets/faff1fcc-0b77-4eb0-8a8e-54ac60f99c31" /> <img width="429" alt="image" src="https://github.com/user-attachments/assets/eb66552e-2f5c-49b9-8532-ccda96087c41" /> <img width="431" alt="image" src="https://github.com/user-attachments/assets/ea126c4b-04c0-4044-977f-fc803472d57c" /> ## This PR contains Changes to *LLM Models Plugin* <!-- LLM Models Test Example: --> <!-- https://github.com/langgenius/dify-official-plugins/blob/main/.assets/test-examples/llm-plugin-tests/llm_test_example.md --> - [ ] My Changes Affect Message Flow Handling (System Messages and User→Assistant Turn-Taking) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Tool Interaction Flow (Multi-Round Usage and Output Handling, for both Agent App and Agent Node) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Multimodal Input Handling (Images, PDFs, Audio, Video, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Multimodal Output Generation (Images, Audio, Video, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Structured Output Format (JSON, XML, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Token Consumption Metrics <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Other LLM Functionalities (Reasoning Process, Grounding, Prompt Caching, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] Other Changes (Add New Models, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> ## Version Control (Any Changes to the Plugin Will Require Bumping the Version) - [x] I have Bumped Up the Version in Manifest.yaml (Top-Level `Version` Field, Not in Meta Section) <!-- ⚠️ NOTE: Version Format: MAJOR.MINOR.PATCH - MAJOR (0.x.x): Reserved for Significant architectural changes or incompatible API modifications - MINOR (x.0.x): For New feature additions while maintaining backward compatibility - PATCH (x.x.0): For Backward-compatible bug fixes and minor improvements - Note: Each Version Component (MAJOR, MINOR, PATCH) Can Be 2 Digits, e.g., 10.11.22 --> ## Environment Verification (If Any Code Changes) <!-- ⚠️ NOTE: At Least One Environment Must Be Tested. --> ### Local Deployment Environment - [x] I have Tested My Changes on Local Deployment Dify with a Clean Environment That Matches the Production Configuration. Dify Version is: 1.2.0 <!-- - Python Virtual Env Matching Manifest.yaml & requirements.txt - No Breaking Changes in Dify That May Affect the Testing Result --> ### SaaS Environment - [ ] I have Tested My Changes on cloud.dify.ai with a Clean Environment That Matches the Production Configuration <!-- - Python Virtual Env Matching Manifest.yaml & requirements.txt --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-16 10:23:09 -05:00
yindo closed this issue 2026-02-16 10:23:09 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-official-plugins#1511