[New Addon] DSS VoIP Notifier: Hassio makes phone calls to you! ☎️

Looks like this as the iPad application requires data that is only for Italians.
I will check alternatives.I have registered with 3CX but did not use it yet as the field of the service is not so trivial to fill in in the DSS so I will try and see if I can fix this one tomorrow.

Thanks for the effort.

I have checked Vohippo. Israeli user can’t get registered. There is a short list of counties when trying to create an account.
This was also confirmed by Vohippo.

Finally managed to do what I have planned.
Alarm that detects an event of on of the sensors and dial to a list of phones and TTS
Alarm Triggered & the sensor that was breached like kitchen window etc.
The only drawback is that DSS VoIP can’t call my own number so I have to link it to some dummy phone number (maybe my home number instead of my mobile).
I have created a sensor that output a string as per triggered area like this:

- platform: template
    sensors:
      current_alarm_trigger:
        friendly_name: "alarm_zone"
        value_template: >-
          {% if is_state('binary_sensor.Kitchen_Window', 'off') %}
            Kitchen Window Alarm
          {% elif is_state('binary_sensor.Entrance_Door', 'off') %}
            Entrance Door Alarm
          {% elif is_state('binary_sensor.Tamper_Ground_Floor', 'off') %}
            Internal Ground Floor Tamper Alarm Triggered

This is a partial list of the sensors.
Than I have created a script that dials and sends TTS of text followed by the sensor like this:

call_xyz:
  sequence:
  - service: hassio.addon_stdin
    data_template:
      addon: 89275b70_dss_voip
      input: {"call_sip_uri":"sip:[email protected]","message_tts": "Alarm triggered, alarm triggered {{states(sensor.current_alarm_trigger)}}"}

The only thing is running a buzzer whenever one of the doors are opened.
Enjoy

I’m happy that you resolved your issue with your VoIP provider and now all works.

It’s OT and not related to this addon but you can study and get inspired from this:

and especially you can use macros… like in this

happy studying

Thanks. The main issue was not being in Europe. With 12VoIP it works and the setup is very simple.
The phone rings after about 1 second from starting the script.
As I have mentioned, I need to control a buzzer like my old alarm. This means a buzzer next to every alarm panel which will be removed which will buzz when every second when the alarm is activated and when an external door is opened when someone is at home.
Controlling the buzzer is the issue. Not a big deal but not finished.
BTW, I need to translate the code you have sent from Italian to fully understand it but from a quick look it is similar to what I have done.
Update:
If you are using this integration you better link the home phone to the VoIP service as it will act as if home alarm is calling your mobile phone.

I have this error message in log:

[Info] Received messages {"call_sip_uri": "sip:[email protected]", "message_tts": "Allarme intrusione, scattato antifurto Casa"}
Converting audio file 'http://192.xxx.xxx.xxx/api/tts_proxy/53bd0214ccca383d7eeb087d5c06ae7b9b87cb60_it_-_google_translate.mp3'...
s6-svscanctl: fatal: unable to control /var/run/s6/services: supervisor not listening
[cont-finish.d] executing container finish scripts...
[cont-finish.d] 99-message.sh: executing... 
[cont-finish.d] 99-message.sh: exited 0.
[cont-finish.d] done.
[s6-finish] waiting for services.
[s6-finish] sending all processes the TERM signal.

This is the configuration:

sip_parameters:
  caller_id_uri: 'sip:[email protected]'
  realm: '*'
  username: numerointerno
  password: password

When installed few month ago works perfectly, now have this error, why?
Thanks

I l’ve noticed that MP3 URL logged start with your Host IP.
Try to specify base_url in Google TTS google_translate configuration and check your internal_url/external_url on http integration of your HA

Ok, add base_url in configuration, now have this error:


You have 1 active call
Current call id=0 to sip:[email protected] [CALLING]
>>> 12:14:30.309     tcpc0x5649f12cb1a8  TCP connect() error: [code=120111]: Connection refused
12:14:30.309      tsx0x5649f12b54a8  Temporary failure in sending Request msg INVITE/cseq=8151 (tdta0x5649f12c15e8), will try next server: Connection refused
12:14:30.309            pjsua_app.c  SIP TCP transport is disconnected from 83.211.227.21:5060: Connection refused [status=120111]
12:14:31.216            pjsua_app.c  .Turning sound device -99 -99 OFF
12:14:31.374            pjsua_app.c  .....Call 0 is DISCONNECTED [reason=403 (Forbidden)]
12:14:31.374     pjsua_app_common.c  .....
  [DISCONNCTD] To: sip:[email protected]
    Call time: 00h:00m:00s, 1st res in 1158 ms, conn in 0ms
No current call
[Info] Call ended...
[Info] Listening for messages via stdin service call

Where is the problem?

Hi, thanks for this add-on.
I am trying to make it work.
I managed to configure it as described in the info provided.
The call is triggered and I get my mobile phone ringing.
But there is no audio when i answer.
I use the following config.
Thanks for your help

sip_parameters:
caller_id_uri: ‘sip:[email protected]:5060’
realm: ‘*’
username: homeassistant
password: xxxxxx
pjsua_custom_options: ‘–ip-addr=192.168.188.38’

the messaggio.mp3 file is locally saved under Cassio www folder and I can successfully play it from a browser.

and the log after the call is

Add-on: DSS VoIP Notifier
VoIP Notifier for HomeAssistant

Add-on version: 3.3.3
You are running the latest version of this add-on.
System: HassOS 4.13 (amd64 / qemux86-64)
Home Assistant Core: 0.114.4
Home Assistant Supervisor: 243
Please, share the above information when looking for help
or support in, e.g., GitHub, forums or the Discord chat.

[cont-init.d] 00-banner.sh: exited 0.
[cont-init.d] 01-log-level.sh: executing…
[cont-init.d] 01-log-level.sh: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.

[Info] Starting addon…
[Info] Listening for messages via stdin service call…
[Info] Received messages {“audio_file_url”: “https://“myserver”.fritz.box:8123/local/messaggio.mp3”, “call_sip_uri”: “sip:+“mymobile”@fritz.box”}
Converting audio file ‘https://“myserver”.fritz.box:8123/local/messaggio.mp3’…
Audio succesfully converted…
Starting SIP Client and calling ‘sip:+“mymobile”@fritz.box’…
This call will be terminated after ‘50’ seconds.

00:17:12.204 os_core_unix.c !pjlib 2.9 for POSIX initialized
00:17:12.205 sip_endpoint.c .Creating endpoint instance…
00:17:12.205 pjlib .select() I/O Queue created (0x55805ea12c90)
00:17:12.205 sip_endpoint.c .Module “mod-msg-print” registered
00:17:12.205 sip_transport.c .Transport manager created.
00:17:12.205 pjsua_core.c .PJSUA state changed: NULL --> CREATED
00:17:12.229 pjsua_core.c .pjsua version 2.9 for Linux-5.4.63/x86_64 initialized
00:17:12.232 pjsua_app.c .Turning sound device -99 -99 ON
00:17:12.232 main.c Ready: Success
00:17:12.335 pjsua_app.c …Call 0 state changed to CALLING

Account list:

[ 0] sip:172.30.33.7:5060: does not register

   Online status: Online

[ 1] sip:172.30.33.7:5060;transport=TCP: does not register

   Online status: Online

*[ 2] sip:[email protected]:5060: does not register

   Online status: Online

Buddy list:

[ 1] <?> sip:+“mymobile”@fritz.box

+=============================================================================+
| Call Commands: | Buddy, IM & Presence: | Account: |
| | | |
| m Make new call | +b Add new buddy .| +a Add new accnt |
| M Make multiple calls | -b Delete buddy | -a Delete accnt. |
| a Answer call | i Send IM | !a Modify accnt. |
| h Hangup call (ha=all) | s Subscribe presence | rr (Re-)register |
| H Hold call | u Unsubscribe presence | ru Unregister |
| v re-inVite (release hold) | t ToGgle Online status | > Cycle next ac.|
| U send UPDATE | T Set online status | < Cycle prev ac.|
| ],[ Select next/prev call ±-------------------------±------------------+
| x Xfer call | Media Commands: | Status & Config: |
| X Xfer with Replaces | | |
| # Send RFC 2833 DTMF | cl List ports | d Dump status |
| * Send DTMF with INFO | cc Connect port | dd Dump detailed |
| dq Dump curr. call quality | cd Disconnect port | dc Dump config |
| | V Adjust audio Volume | f Save config |
| S Send arbitrary REQUEST | Cp Codec priorities | |
±----------------------------------------------------------------------------+
| q QUIT L ReLoad sleep MS echo [0|1|txt] n: detect NAT type |
+=============================================================================+
You have 1 active call
Current call id=0 to sip:+“mymobile”@fritz.box [CALLING]

00:17:12.343 pjsua_app.c SIP TCP transport is connected to 192.168.188.1:5060

00:17:12.372 pjsua_app.c …Call 0 state changed to EARLY (183 Session Progress)
00:17:23.356 pjsua_app.c …Call 0 state changed to CONNECTING
00:17:23.361 pjsua_app.c …Call 0 state changed to CONFIRMED
00:17:44.356 pjsua_app.c SIP TCP transport is disconnected from 192.168.188.1:5060: End of file (PJ_EEOF) [status=70016]

00:18:02.188 pjsua_app.c …Call 0 is DISCONNECTED [reason=200 (Normal call clearing)]
00:18:02.188 pjsua_app_common.c …

[DISCONNCTD] To: sip:+“mymobile”@fritz.box;tag=8AAB8194A39959A9
Call time: 00h:00m:38s, 1st res in 140 ms, conn in 11129ms
#0 audio iLBC @8kHz, sendrecv, peer=-
SRTP status: Not active Crypto-suite:
RX pt=104, last update:00h:00m:01.629s ago
total 0pkt 0B (0B +IP hdr) @avg=0bps/0bps
pkt loss=0 (0.0%), discrd=0 (0.0%), dup=0 (0.0%), reord=0 (0.0%)
(msec) min avg max last dev
loss period: 0.000 0.000 0.000 0.000 0.000
jitter : 0.000 0.000 0.000 0.000 0.000
TX pt=104, ptime=30, last update:never
total 602pkt 30.1KB (54.1KB +IP hdr) @avg=6.2Kbps/11.1Kbps
pkt loss=0 (0.0%), dup=0 (0.0%), reorder=0 (0.0%)
(msec) min avg max last dev
loss period: 0.000 0.000 0.000 0.000 0.000
jitter : 0.000 0.000 0.000 0.000 0.000
RTT msec : 0.000 0.000 0.000 0.000 0.000
00:18:03.189 pjsua_app.c …Turning sound device -99 -99 OFF
[Info] Call ended…
[Info] Listening for messages via stdin service call…

Have you disabled Fritzbox VoIP call filters?
It seems that is there routing problems

not sure if your answer was for me, anyway, the call arrive to my mobile so not sure it could be a routing problem.

very nice, i setup with messagenet and now i’ve a full alarm system!

1 Like

Are you sure that phone number and password are right? Check that in your password there isn’t any spaces or strange chars.

sip_parameters:
  sip_server_uri: sip:voip.eutelia.it
  caller_id_uri: sip:[email protected]
  realm: "*"
  username: 08111111111
  password: xxxxxxxxxxxx

Phone number are right, in the password there is the character @ and %. No space are present.

Ok, if you are sure that is not a credentials/authentication issue please post

Your configuration
Addon full log also with your SO and host machine
Any other relevant information like router/firewall

Thanks

Where would you prefer that we report VOIP providers that this is working with. Here? Or an issue on github? Or A PR on your README.md on github?

1 Like

A PR on GitHub would be great!
Thanks

done, hope it is OK

Hey @sdesalve, for starters thanks for the great addon! Looks very promising :slight_smile:

However, I keep running into the following error:

Afterwards, the addon quits and no further errors are logged. This is the automation I use to test:

And finally, my config (the max_call_time was a test, didn’t work):

sip_config

Hope you can help out! Thanks in advance.

PS I tried both " and ’ in the automation, and the ‘speak’ is required for amazon polly.


Edit: Came across this closed ticket, and apparently it requires Google Translate TTS, even when selecting ‘amazon_polly’ as the platform?

[quote=“SamKr, post:164, topic:130993”]
However, I keep running into the following error:
[/quote]

try to remove <speak> tags

max_call_time is not a child of sip_parameters:

rewrite it without any leading spaces

If you need more help, please post all logs…

EDIT:

also platform_tts does not need any leading spaces…
User in that closed issue has not configured any TTS as is required to use this addon