Hey! We ran into the same issue recently. It looks like endOfCallMessages is deprecated, and endOfCallPhrases under toolIds doesn’t always work reliably depending on the assistant configuration. A couple things to check:
Confirm toolIds includes "endofcallphrases" — sounds like you did this already, but worth double-checking.
Make sure your function/tool returns is_final: true if using a custom tool to end the call.
Assistant settings — if you’re using the new Assistants API, the instructions or response_format might override or ignore the tool's signal unless explicitly set to allow call-ending behavior.
Use force_end_conversation: true in your tool definition if possible (some internal versions support this flag).
If none of that works, you might be hitting a bug or undocumented limitation. In that case, best bet is to open a support ticket or post with your assistant config snippet — happy to take a look if you share it.