Perfect! Let’s now integrate WhatsApp, SMS, and Email follow-ups into your AI-powered multi-user dashboard, so your sales/support team can automatically or manually send messages through multiple channels directly from the interface.
📬 Lesson: Integrating WhatsApp, SMS, and Email Follow-Ups
🎯 Lesson Objective
By the end of this lesson, you’ll be able to:
-
Automatically or manually send personalized follow-ups via WhatsApp, SMS, and Email
-
Use your trained AI agent to generate the messages
-
Log every message sent by each team member for accountability and performance tracking
🔧 Tools You’ll Use
| Channel | Tool/API |
|---|---|
smtplib, Gmail API, or Brevo (Sendinblue) |
|
| 📲 SMS | Twilio or Vonage (easy to start with free credits) |
| Twilio WhatsApp API or Meta Cloud API |
🛠️ Step-by-Step Integration
✅ 1. Prepare Unified Message Generator
Let the AI generate the message based on lead and context:
def generate_followup(name, product, channel):
prompt = f"""Write a short, friendly follow-up message for {channel} to a lead named {name} who was interested in {product}.
Keep it polite, professional, and include a clear next step."""
return agent.run(prompt)
📧 2. Email Follow-Up (via Gmail SMTP or Brevo)
import smtplib
from email.mime.text import MIMEText
def send_email(to_email, subject, message):
msg = MIMEText(message)
msg["Subject"] = subject
msg["From"] = "[email protected]"
msg["To"] = to_email
with smtplib.SMTP("smtp.gmail.com", 587) as server:
server.starttls()
server.login("your_email", "your_password")
server.sendmail(msg["From"], msg["To"], msg.as_string())
✅ You can replace SMTP with Brevo API (free SMTP relay and email tracking dashboard).
📲 3. SMS Follow-Up (via Twilio)
a. Install Twilio:
pip install twilio
b. Send SMS:
from twilio.rest import Client
def send_sms(to_number, body):
account_sid = "YOUR_TWILIO_SID"
auth_token = "YOUR_TWILIO_TOKEN"
client = Client(account_sid, auth_token)
message = client.messages.create(
body=body,
from_="+1234567890", # Your Twilio number
to=to_number
)
return message.sid
🟢 4. WhatsApp Follow-Up (via Twilio WhatsApp API)
✅ Enable WhatsApp in your Twilio console
✅ Format to number as whatsapp:+[countrycode][number]
def send_whatsapp(to_number, body):
account_sid = "YOUR_TWILIO_SID"
auth_token = "YOUR_TWILIO_TOKEN"
client = Client(account_sid, auth_token)
message = client.messages.create(
body=body,
from_="whatsapp:+14155238886", # Twilio’s sandbox number
to=f"whatsapp:{to_number}"
)
return message.sid
🧠 Integrate into the Dashboard
if st.button("Send Email"):
body = generate_followup(name, product, "email")
send_email(email, "Just checking in", body)
st.success("📧 Email sent!")
if st.button("Send SMS"):
body = generate_followup(name, product, "SMS")
send_sms(phone, body)
st.success("📲 SMS sent!")
if st.button("Send WhatsApp"):
body = generate_followup(name, product, "WhatsApp")
send_whatsapp(phone, body)
st.success("🟢 WhatsApp message sent!")
📒 Logging Messages Sent
Log to SQLite or Firebase:
def log_message(user, lead, channel, body):
c.execute("INSERT INTO messages (user, lead, channel, message) VALUES (?, ?, ?, ?)",
(user, lead, channel, body))
conn.commit()
💬 Example Output
| Channel | Message |
|---|---|
| “Hi Sarah, just checking in on your interest in GreenTech’s solar tracking system. Would you like to book a 10-minute demo this week?” | |
| SMS | “Hi Sarah! Just checking in—interested in booking a quick call? Reply YES and I’ll schedule it.” |
| “Hi Sarah 👋 Thanks for your interest in GreenTech! Would you like a quick walkthrough this week? Just reply here 😊” |
✅ Summary
| Step | What You Did |
|---|---|
| 💬 AI-generated follow-up | Personalized per user, product, and channel |
| 📤 Sent via Email, SMS, WhatsApp | Through APIs or SMTP |
| 📒 Logged each message | For tracking, audit, and performance |
| 🧑🤝🧑 Enabled team use | Each user can manage their own leads |
65
