AI voice agents for student support answer enrolled students' routine calls, such as timetables, library hours, Wi-Fi setup and campus office locations, from the institution's own documents. They verify the student with a student ID and date of birth before reading any record detail, and they hand wellbeing or crisis calls to student services staff with fixed, pre-written words.
Key Takeaways
- General questions come from your own documents and need no identity check.
- Read record details only after the student ID and date of birth match.
- Crisis language triggers fixed handoff words the model never writes itself.
This post is part of our guide to AI voice agents for edtech and universities. The guide's section on student support calls after enrollment points out that two kinds of question arrive on the same line. This post builds that line with Dograh, an open-source, self-hostable voice agent platform, and adds the exit every support line needs for a student in distress.
Two kinds of question on one line
A student support line takes two kinds of call, and the agent should treat them differently from the first sentence.
General questions have the same answer for every caller. Examples are the library's Sunday hours, the location of the disability services office, how a laptop joins campus Wi-Fi and the date the add/drop period closes. Record questions depend on who is calling: a class schedule, a hold that blocks registration, a financial aid status or a balance.
General questions get an answer at once, from the institution's own documents. Record questions wait for verification and then come live from the student information system (SIS). A student in distress gets neither treatment, and has its own section below.

The agent answers and records. It never decides a hold, an aid question, a grade appeal or a fee waiver. Those go to the right office, with the details written to that office's system first.
Answering general questions from your own documents
The agent answers general questions only from files the institution loads into its Knowledge Base, so the answer a caller hears matches what the website says.
Dograh's Knowledge Base takes PDF, DOCX, DOC, TXT and JSON files, up to 5 MB each. Good material is the academic calendar, building and library hours, the student services directory and the IT help pages. IT how-to questions fit here too, such as setting up multi-factor authentication on a new phone, because the steps are the same for every student.
An old PDF gives a wrong date in a confident voice, so give each file an owner in the office that publishes it and replace it every term.
When the files have no answer, the agent says so and offers to pass the question on, never answering from the model's general knowledge. An HTTP API tool writes that callback request to the helpdesk's ticket system during the call. A hospital version of the same pattern is in AI Voice Agents for Patient Support Lines: Answer From Your Own Documents.
Open Source Alternative to Vapi / Retell
Self-hosted voice agent platform — no per-minute fees
dograh-hq/dograh
Star on GitHub
Verifying the student before any record detail
Anything from the student's own record waits until the student gives a student ID and a date of birth, and the check runs in the institution's own system.
This section is general information, not legal advice. FERPA, the Family Educational Rights and Privacy Act, sets the duty in 34 CFR 99.31(c): an institution "must use reasonable methods to identify and authenticate the identity of parents, students, school officials, and any other parties to whom the agency or institution discloses personally identifiable information from education records." For a voice agent, that generally means a fixed check before any record detail. Confirm your own method with counsel.
Pre-Call Data Fetch, set to "Inbound calls only" at the bottom of the Start Call node, can look up the calling number when the call connects. That finds a likely record. A phone number never proves who is calling, because roommates share phones and parents call from theirs. So the agent asks for the student ID and the date of birth, and an HTTP API tool sends both to your own endpoint, which replies with a match or no match. The expected answers never enter the agent's prompt. After a match, a second HTTP API tool reads the one detail the student asked about.
A verified student can hear a schedule, whether a hold exists and which office placed it, an aid status, or a balance and its due date, each as the system shows it. Fee reminder calls are a separate design, covered in AI voice agents for fee and payment reminders in education. After two failed checks, the agent keeps to general questions and offers a transfer or a callback.
Password resets are the IT call most campuses want to hand over first, and the easiest to get wrong. A student ID and a date of birth are often known to classmates and family, so they should never be enough to reset a password. The agent can start a reset only when the institution's identity system does the verifying, for example by sending a push to the student's registered authenticator app, through an HTTP API tool. Without such an API, the agent reads the self-service reset steps from the Knowledge Base and hands the rest to the IT helpdesk.
Wellbeing and crisis calls get fixed handoff words
When a caller's words point to distress or danger, the agent plays handoff words the institution wrote in advance and transfers the call to student services staff.
Inside a node, the language model writes its own sentences, so a prompt can never guarantee what it says. Exact wording holds only where Dograh speaks fixed text, and for a crisis that means a pathway's Transition Speech or a pre-recorded clip. So the crisis pathway carries Transition Speech written and approved by the counselling team. Transition Speech cannot include per-caller variables, which suits this moment, because every caller should hear the same words. Text Transition Speech does not play on speech-to-speech models, so on those, record the words as a clip.
A starting point for the counselling team to rewrite:
"It sounds like things are really hard right now, and you should be talking with a person. I'm connecting you to the student wellbeing team now. If you are in danger right now, call 911. You can also call or text 988, the Suicide and Crisis Lifeline, at any time."
Replace it with your own words and your institution's crisis line. The 988 Suicide and Crisis Lifeline takes calls and texts in the US. The number can sit in the fixed text because it never changes.
Then Transfer Call puts the student through to student services. It works on Twilio only and passes no summary, so just before the transfer an HTTP API tool writes a short note to the student services system. If nobody answers within the timeout, 30 seconds by default, the student stays with the agent. That is why the fixed words give 988 and the crisis line before the transfer starts. Out of hours, the pathway plays fixed words with the crisis line and 988, and an HTTP API tool writes a callback request for the morning team.
The agent never assesses risk or counsels. The same limit on a clinic's line is set out in AI Voice Agents for Behavioral Health Intake and Triage: Logistics, Not Care. Choosing the crisis pathway is still the language model reading a written condition, never a hard rule. Write the condition wide, so it covers self-harm, not feeling safe, wanting to disappear and a friend in danger.
Join the Dograh Community
Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.
Before the line goes live
Test the crisis pathway with real phrasings over a real phone call, and keep checking a sample of live calls after launch.
Build the test set with student services, with direct and indirect phrasings such as "I can't do this anymore" or "my roommate said she wants to hurt herself", and include a student who raises it halfway through a Wi-Fi question. Run each phrasing several times, because a language model can answer the same words differently from one call to the next. Run the tests over the phone, since browser test calls cannot run Transfer Call.
After launch, a QA node with a Sample Rate below 100 scores a random share of calls step by step, with summaries in English by default. Read every call that took the crisis pathway, and a sample of the calls that did not. Automated QA for Voice Agents: Grade the Agent, Not the Caller explains the scoring.
Running Dograh self-hosted with self-hosted open-weight models keeps the audio and transcripts on the institution's servers. With your own API keys for a hosted model, the audio still reaches that provider. Dograh has no retention setting, so your policy decides how long recordings and transcripts are kept. Self-hosted Dograh has no per-minute platform fee (servers, any paid model keys and phone minutes still cost); Dograh Cloud has a 1¢-a-minute platform fee.
Start with general questions, add record questions once the identity endpoint has been tested, and keep the crisis pathway in place from the first day.
Glossary
- Knowledge Base
- The files a Dograh agent answers general questions from, such as an academic calendar or IT help pages. It takes PDF, DOCX, DOC, TXT and JSON files up to 5 MB each.
- Education records
- FERPA's term for records directly related to a student and kept by the institution or a party acting for it. A schedule, a hold, an aid status or a balance read out on a call comes from them.
- Transition Speech
- Fixed text or a recorded clip that a pathway plays word for word, with no per-caller variables. It is the place for handoff words that must never change.
- Pathway
- The route from one step of a call to the next. The language model chooses it by reading the pathway's written condition, so a crisis pathway needs a wide condition and testing.

