Inspiration

  • Customer experience teams often miss timely responses to customer inquiries received via SMS.
  • In critical industries like healthcare, retail, and support services, delayed responses result in lost opportunities and frustrated users.
  • I wanted to build a simple but robust AI-powered SMS auto-responder that can instantly acknowledge customer requests, log them, and reply in real-time - no matter the time zone or staff availability.

What it does

OmniCare CX Agent acts as an intelligent auto-responder for inbound SMS messages.

  • A customer texts a virtual number (Vonage Toll-Free).
  • The inbound message is captured and sent through a FastAPI service.
  • The system logs the message and sends an automated acknowledgement reply back to the sender.
  • Responses are flexible and can be extended with AI/NLP for contextual replies.

The result: Customers always receive an instant response, ensuring they feel heard and supported.

How we built it

  • Vonage APIs: Used the SMS API to handle inbound/outbound messages.
  • FastAPI: Built a lightweight backend server to process inbound messages and send automated responses.
  • ngrok: Created a secure public tunnel to expose the FastAPI server and connect Vonage webhooks.
  • Environment configuration: Stored API keys, secrets, and numbers in a .env file.
  • Testing: Verified using curl and actual test phone numbers, with detailed SMS logs in the Vonage dashboard.

Challenges we ran into

  • Webhook setup: Ensuring the inbound webhook correctly forwarded messages via ngrok.
  • Carrier restrictions: Some outbound replies showed as failed in logs due to 10DLC/AT&T carrier rules, even though the app worked fine in simulation.
  • Environment setup: Ngrok was flagged by Windows Defender, which required troubleshooting to run safely.
  • Library mismatches: Vonage Python SDK deprecations caused adjustments to how SMS messages were sent.

Accomplishments that we're proud of

  • Successfully built a fully functional end-to-end SMS pipeline: inbound message → FastAPI → outbound reply.
  • Logs show real-time message capture and attempted auto-replies.
  • The project is modular - it can be extended with AI/NLP for smart contextual responses.
  • Deployed a system that mirrors what enterprise CX teams need: reliability, speed, and automation.

What we learned

  • Hands-on experience with Vonage APIs, webhook routing, and SMS compliance.
  • The importance of testing across multiple layers (carrier logs, webhook, server logs, ngrok tunnels).
  • FastAPI is extremely efficient for lightweight API-based integrations.
  • Carrier delivery rules (e.g., AT&T, T-Mobile, 10DLC verification) can affect production rollouts and need to be considered early.

What's next for OmniCare CX Agent – AI-Powered SMS Auto-Responder

  • Add NLP sentiment detection to tailor responses (e.g., urgent issues flagged for escalation).
  • Integrate with databases (e.g., PostgreSQL, MongoDB) to persist conversations.
  • Connect with CRM tools (Salesforce, HubSpot, Zendesk) for workflow automation.
  • Deploy on cloud platforms (AWS, Azure, GCP) for scalable real-world use.
  • Add multi-channel support: WhatsApp, Viber, Facebook Messenger, etc., via Vonage Messages API.

Team

Solo: Sweety Seelam

Built With

  • curl
  • dotenv
  • fastapi
  • localhost-ngrok
  • ngrok
  • python
  • vonage-messages-api
  • vonage-sms-api
Share this project:

Updates