Spaces:
Runtime error
Runtime error
from agency_swarm.tools import BaseTool | |
from pydantic import Field | |
import os | |
import smtplib | |
from email.mime.multipart import MIMEMultipart | |
from email.mime.text import MIMEText | |
class CollaborationTool(BaseTool): | |
""" | |
Facilitates document sharing, report generation, and communication between the ExpertDataAnalyst agent and the SalesManagerCEO. This tool leverages document manipulation for report generation and email for real-time communication. | |
""" | |
email_recipient: str = Field( | |
..., description="The email address of the recipient for communication.") | |
document_content: str = Field( | |
..., description="The content of the document/report to be shared.") | |
def run(self): | |
# Setup email client | |
sender_email = os.getenv("AGENCY_EMAIL") | |
password = os.getenv("AGENCY_EMAIL_PASSWORD") | |
# Create MIME message | |
message = MIMEMultipart() | |
message['From'] = sender_email | |
message['To'] = self.email_recipient | |
message['Subject'] = "Collaboration Tool Report Sharing" | |
# Attach the document content | |
message.attach(MIMEText(self.document_content, 'plain')) | |
# Sending the email | |
with smtplib.SMTP_SSL('smtp.gmail.com', 465) as server: | |
server.login(sender_email, password) | |
server.sendmail(sender_email, self.email_recipient, message.as_string()) | |
# Return a confirmation message | |
return f"Email successfully sent to {self.email_recipient} with the report." | |