Customer Support Management System with AI-Assisted ResponsesCustomer Support Management System with AI-Assisted Responses
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started
SupportFlow AI is a customer support management system built with Python, PySide6, FastAPI and PostgreSQL.
It helps teams manage customer requests, assign priorities and responsibilities, track conversations, and generate AI-assisted response suggestions while keeping a human in control of the final reply.
I built the application structure, interface, backend integration, database workflows, API layer and automated testing.
Post image
Andrei's avatar
How do you handle a new customer message arriving while someone is reviewing an AI draft? Does the suggestion stay tied to the conversation version it was generated from, or get refreshed before they send it?
ivan's avatar
Great question, the AI suggestion is generated from the conversation state at the moment the request is made and if a new customer message arrives while the draft is being reviewed, the current implementation doesn’t automatically version-lock or refresh that suggestion yet.
A...
Andrei's avatar
That makes sense. Flagging the draft when a new message comes in would be useful, especially if someone’s halfway through editing it. Thanks for explaining where things stand!
Simone's avatar
The conversation-revision idea sounds useful. I would also check that revision on the server when accepting the send, so a message arriving between review and click cannot slip through. Mark the draft stale while keeping the human edits visible. Two useful regression cases: a...
ivan's avatar
Oh yeah!!! I especially like the idea of validating the conversation revision again server-side at send time, since checking only when the draft is generated would still leave a race condition between review and send.
Keeping the human-edited draft visible but marking it as stale...
Simone's avatar
Thanks, Ivan — that discussion prompted a small self-initiated failure lab. I reproduced stale approvals, concurrent duplicate submissions and a worker exiting after the mock receiver commits, before the sender records success.
The key distinction: a stable request ID needs to...
Back to feed
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started