You are correct that you would not be able to call directly from that phone, but if you call through a Voip server it may be able to translate codecs for you and make it work.
Thanks for answer are there a Voip server for HA? I have it on Haos in an Asus box.
I don’t think there is any specific officially supported HA Voip server, though there may be add-ons? I personally use Asterisk, and wrote a little bit about it here Voice over IP Integration - Call from Any SIP Softphone - #38 by jaminh
Thanks for support but I have to give up on this tho complicated!
Tried with FreePBX - my VOIP phone does not support Opus and I had to fiddle with codecs more due to the errors in the log:
[2025-02-17 21:02:26] WARNING[3362] channel.c: Unable to find a codec translation path: (ulaw) -> (opus)
[2025-02-17 21:02:26] WARNING[3362] channel.c: Unable to find a codec translation path: (opus) -> (ulaw)
Also I wonder if it’s okay to not be able to hear the responses from HA most of the time - I hear the initial beep and then hear it only sometimes (looks like it get worse over time). Configured with cloud subscription.
It often sounds like the responses are incomplete.
Hmm, posting some pictures of my configuration as well in case someone sees something wrong or missing.
I will try to see what the logs on 3CX side’s show at the same time too
Hello! I have an on-prem 3cx server with a sip trunk to HA and I have the same exact issue as drthanwho, including the crash!
Here is the same in the log:
2025-02-26 19:30:58.401 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140213480658192] from 10.90.49.225 (Home Assistant/2025.1 (io.robbie.HomeAssistant; build:2025.1073; iOS 18.3.1)): Unexpected error inside websocket API
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/http.py", line 341, in async_handle
connection = await self._async_handle_auth_phase(auth, send_bytes_text)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/websocket_api/http.py", line 378, in _async_handle_auth_phase
await send_bytes_text(AUTH_REQUIRED_MESSAGE)
File "/usr/local/lib/python3.13/site-packages/aiohttp/_websocket/writer.py", line 125, in send_frame
raise ClientConnectionResetError("Cannot write to closing transport")
aiohttp.client_exceptions.ClientConnectionResetError: Cannot write to closing transport
This doesnt seem to work for me, it gives me ‘Service Unavailable’ in my Yealink phone. Not sure what to do next, any ideas?
Working with this addon. It looks good, would love to connect it to my FreePBX but I have an issue. My PBX is outside my firewall, and HA inside the firewall. Now I can tell my firewall to forward port 5060 to HA. This has the obvious effect of causing all my extensions to die. You can imagine how well that went over.
Question, is it possible somewhere in VOIP integration to listen to a different port?
Greg
“SIP Port” is a configuration option for the Voice over IP integration.
I have looked at this add-on. does not work for me, as my PBX is cloud hosted and outside my firewall. When I configure and enable this all communications between my PBX and phones crashs.
Ideally something like this, but operating like an extention/phone would be better. Configure PBX to talk to add-on and instantly available to all phones.
Greg
Hello @wixoff a firmware update for the base solved this problem for me. Turns out I was quite behind as it was not configured to update automatically.
Thanks for the reply! Unfortunately – as the base and handset are already up-to-date – my problem must lie elsewhere.
I honestly haven’t tried this in a long time so maybe I’ll give it another shot.
EDIT: HAHA how wrong I was. The Grandstream “System Info” page had a green box with “UP-TO-DATE” in it but that was not the case. I had to change the firmware server address in the base management settings, and THEN it was able to find new releases. I’m upgrading now and WILL try again with the VoIP integration!
Wanted to just chime in here that I’ve mostly successfully set up the voice of IP integration with a grandstream ht818v2 connected to freepbx.
I’m running proxmox on an old lenovo small form factor, and under proxmox am running home assistant, freepbx, lyrion music server.
I’ve tried to set up functionality to mute any music when I’m talking to assist, using a blueprint from HowlingCoder, but it only mutes when listening. I tried to add a delay, but that seems to mixed up the state of the VoIP integration.
What is nice is that each separate extension is identified as a different endpoint to the VoIP integration, so I’ll be able to assign extension to the room where the phone exists, and then instructions Assist will have the correct location to identify items in that room.
I’ll follow up on the HowlingCoder blueprint where the blueprints were announced.



