Integraties

E-mail versturen vanuit AutoGen

Registreer WeSender als tool in een multi-agent AutoGen-gesprek en laat agents e-mails versturen tijdens hun samenwerking.

Agent-framework Python Webhooks

Vereisten

  • WeSender-account met geverifieerd domein en API-sleutel
  • Een modelsleutel voor het LLM naar keuze
  • Python 3.10 of nieuwer
  • pip install autogen wesender

Stap 1: Installeer de pakketten

Voeg AutoGen (AG2) en de WeSender Python SDK toe aan je project.

pip install autogen wesender

Stap 2: Definieer de tool en maak de agents

Schrijf send_email als Python-functie. Maak een assistant-agent die beslist en een executor-agent die uitvoert. Zo scheid je beslissen en handelen.

import os
from autogen import ConversableAgent, register_function
from wesender import Wesender

client = Wesender(api_key=os.environ["WESENDER_API_KEY"])

def send_email(to: str, subject: str, html: str) -> str:
    """Verstuur een transactionele e-mail via WeSender."""
    result = client.emails.send(
        from_="agent@jouwdomein.nl",
        to=to,
        subject=subject,
        html=html,
    )
    return f"E-mail verstuurd, id: {result.id}"

assistant = ConversableAgent(name="assistant", llm_config={"model": "gpt-4o"})
executor  = ConversableAgent(name="executor",  human_input_mode="NEVER")

Stap 3: Registreer de tool

Koppel send_email aan de juiste agents. De assistant bepaalt wanneer de tool nodig is, de executor voert hem daadwerkelijk uit.

register_function(
    send_email,
    caller=assistant,
    executor=executor,
    description="Verstuur een transactionele e-mail via WeSender",
)

Stap 4: Start het gesprek

De executor opent het gesprek. De agents wisselen berichten uit totdat de taak afgerond is en de e-mail verstuurd.

executor.initiate_chat(
    assistant,
    message="Mail een welkomstbericht naar nieuwe@klant.nl",
)

Volledig voorbeeld

Hier is de volledige implementatie in main.py:

import os
from autogen import ConversableAgent, register_function
from wesender import Wesender

client = Wesender(api_key=os.environ["WESENDER_API_KEY"])

def send_email(to: str, subject: str, html: str) -> str:
    """Verstuur een transactionele e-mail via WeSender."""
    result = client.emails.send(
        from_="agent@jouwdomein.nl",
        to=to,
        subject=subject,
        html=html,
    )
    return f"E-mail verstuurd, id: {result.id}"

assistant = ConversableAgent(
    name="assistant",
    llm_config={"model": "gpt-4o"},
)
executor = ConversableAgent(
    name="executor",
    human_input_mode="NEVER",
)

register_function(
    send_email,
    caller=assistant,
    executor=executor,
    description="Verstuur een transactionele e-mail via WeSender",
)

executor.initiate_chat(
    assistant,
    message="Mail een welkomstbericht naar nieuwe@klant.nl",
)

Bezorgstatussen via webhooks

AutoGen kan bezorg-, bounce- en klachtsignalen ontvangen via webhooks. Configureer een webhook-endpoint in je AutoGen-workflow dat POST-verzoeken van Wesender accepteert. Zie Webhooks instellen voor de volledige configuratiestappen en het payload-formaat.

Veelgestelde vragen

Welke agent verstuurt de mail?

De executor voert de tool uit nadat de assistant hem heeft aangewezen. Zo scheid je beslissen en uitvoeren, wat de controleerbaarheid van je multi-agent systeem vergroot.

Werkt dit ook met groepsgesprekken?

Ja. Registreer de tool bij de juiste agents in je groepsgesprek. De GroupChatManager stuurt de beurt naar de agent die de e-mail moet versturen.

Kan ik een mens laten goedkeuren?

Ja. Zet human_input_mode op 'ALWAYS' of 'TERMINATE' bij de executor om bevestiging te vragen voordat de tool wordt uitgevoerd.

Volgende stappen