NEWS
Asterisk bringt "Error while dialing (2). Error: {}"
-
@varg
Mehr nicht?
Da sollte eigentlich mehr kommen.
Bitte ggf. auch das login prompt posten, dann kann man sehen ob alles durch ist. -
habe alles was putty hergibt kopiert, mehr war hier nicht zu sehen.
...und vielen Dank für Deine Unterstützung
-
habe mal aus neugier auf einem anderen gerät iobroker komplett neu aufgesetzt und asterisk installiert:
das Problem bleibt bestehen:
@Thomas-Braun die installationsroutine verlief auf dem neuen system fehlerfrei
asterisk.0 2021-06-06 22:47:53.763 error (1084) Error while Converting File: {} asterisk.0 2021-06-06 22:47:53.229 silly (1084) States user redis pmessage asterisk.0.*/asterisk.0.dialin.callerid:{"val":"","ack":true,"ts":1623012473225,"q":0,"from":"system.adapter.asterisk.0","user":"system.user.admin","lc":1623012039437 asterisk.0 2021-06-06 22:47:53.223 silly (1084) States user redis pmessage asterisk.0.*/asterisk.0.dialin.dtmf:{"val":"","ack":true,"ts":1623012473173,"q":0,"from":"system.adapter.asterisk.0","user":"system.user.admin","lc":1623012039466} asterisk.0 2021-06-06 22:47:53.164 info (1084) Connected to Asterisk Manager asterisk.0 2021-06-06 22:47:53.154 info (1084) Starting Adapter asterisk.0 in version 1.0.6 with transcoder ffmpeg and language DE asterisk.0 2021-06-06 22:47:53.142 silly (1084) States system redis pmessage system.adapter.asterisk.0.logLevel/system.adapter.asterisk.0.logLevel:{"val":"silly","ack":true,"ts":1623012473124,"q":0,"from":"system.adapter.asterisk.0","lc":162 asterisk.0 2021-06-06 22:47:53.092 info (1084) starting. Version 1.0.6 in /opt/iobroker/node_modules/iobroker.asterisk, node: v14.17.0, js-controller: 3.2.16 host.piholeblack 2021-06-06 22:47:51.619 info instance system.adapter.asterisk.0 started with pid 1084 host.piholeblack 2021-06-06 22:47:49.157 info instance system.adapter.asterisk.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) asterisk.0 2021-06-06 22:47:48.587 info (1067) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason asterisk.0 2021-06-06 22:47:48.585 info (1067) terminating asterisk.0 2021-06-06 22:47:48.582 info (1067) Closing Asterisk Adapter host.piholeblack 2021-06-06 22:47:48.582 info stopInstance system.adapter.asterisk.0 send kill signal
-
Bin eben auf den Thread gestoßen und hab auch gleich mal nen Testanruf angestoßen - gleicher Fehler.
Kann jetzt natürlich nicht sagen seit wann. Ich erhalte die Anrufe nur bei Auslösung der Rauchmelder oder bei Einbruchmeldung - also nicht alle Tage.
Sicher dass es nicht an der Node-Version liegt? Ich wüsste sonst auch nicht, was ich noch so verändert hätte...
Ich schaue nächste Woche sonst mal ob ich noch ein ganz altes Backup finde...
-
habe den Fehler auf node 12 und 14
-
Hallo zusammen,
ich vermute Google hat etwas an der verwendeten Text-To-Speech API verändert, sodass nur noch eine bestimmte Anzahl Wandlungen in einem Zeitraum möglich sind (wenn überhaupt noch)...
Ich habe es jetzt so gelöst, dass im Skript "umzu" mit lokalem PicoTTS wav-Dateien erzeugt und mit sox zur gsm konvertiert werden.Problem ist, dass beim Starten des Adapters der Dial-In-Text an Google geschickt wird und natürlich nicht gewandelt wird...
Als Konsequenz daraus startet dann der Adapter nicht korrekt (kein DTMF mehr möglich)
Um dies quick and dirty zu beheben habe ich in der asterisk.js die Zeilen 757 und 788 auskommentiert...
Der Teil dazwischen wurde sonst nicht ausgeführt...757: /* convertDialInFile(parameter, () => { */ ..... 788: /* }); */
Wäre natürlich toll, wenn jemand den Adapter so umbauen könnte, dass eine andere TTS-Engine genutzt wird...
-
@boeskij sagte in Asterisk bringt "Error while dialing (2). Error: {}":
Ich habe es jetzt so gelöst, dass im Skript "umzu" mit lokalem PicoTTS wav-Dateien erzeugt und mit sox zur gsm konvertiert werden.
Könntest du dies mal näher erläutern.
-
@bahnuhr
Hoffe das hier hilft:let msg = "Dieser Text wird vorgelesen." exec('pico2wave -w /tmp/ttsdatei.wav -l de-DE "' + msg + '"', function (error, stdout, stderr) { /* wav erstellt */ exec('sox /tmp/ttsdatei.wav -r 8000 -c 1 /tmp/ttsdatei.gsm', function (error, stdout, stderr) { /* gsm erstellt */ exec('rm /tmp/ttsdatei.wav', function (error, stdout, stderr) { /* wav gelöscht, sonst wurde beim folgenden Anruf ggf. die falsche Datei aufgerufen... */ sendTo('asterisk.0', "dial", { telnr: callNumber, callerid: callerId, audiofile: '/tmp/ttsdatei.gsm'}, (res) => { console.log('Result: ' + JSON.stringify(res)); exec('cp /tmp/ttsdatei.gsm /tmp/asterisk_dtmf.gsm', function (error, stdout, stderr) { /* Die asterisk_dtmf.gsm wird für Dial-In Anrufe verwendet... Hier wird dann einfach der letzte Anruf nochmal wiedergegeben */ /* Das folgende Löschen führte bei mir zu Problemen, also bleibt die Datei liegen.. wird ja eh überschrieben */ /* exec('rm /tmp/ttsdatei.gsm', function (error, stdout, stderr) { console.log('Telefonalamierung: gsm gelöscht'); }); */ }); }); }); }); });
-
@boeskij sagte in Asterisk bringt "Error while dialing (2). Error: {}":
pico2wave
Kenn ich bisher nicht.
Muss man dies installieren? -
@bahnuhr
ja, wird auch im sayit-Adapter verwendet:PicoTTS (linux only): English, German, Italian, Spanish, French For PicoTTS it is necessary to install the following packages: libttspico-utils and lame. Installation command: 'sudo apt-get install libttspico-utils lame'
-
Habe mal das Script gekürzt um zu sehen ob eine wav erzeugt wird.
let msg = "Dieser Text wird vorgelesen." exec('pico2wave -w /tmp/ttsifixalarm.wav -l de-DE "' + msg + '"', function (error, stdout, stderr) { log (error); log (stdout); log (stderr); });
Datei wird nicht erzeugt. Und im log steht:
Pico wird nicht gefunden. Muss ich doch etwas installieren. Habe auch mal "pico2wave" eingegeben in der JS instanz. Da kamen dann aber nur Fehlermeldungen.
-
pico TTS muss noch nachinstalliert werden. Ist etwas komplexer, je nach vorhandenem System:
-
@boeskij sagte in Asterisk bringt "Error while dialing (2). Error: {}":
wird auch im sayit-Adapter verwendet:
oben stand, dass pico bei sayit dabei ist.
Dem ist dann nicht so ?
-
@bahnuhr
es wird dort verwendet... ist aber nicht dabei...
wie oben im Zitat geschrieben:Installation command: 'sudo apt-get install libttspico-utils lame'
-
@boeskij sagte in Asterisk bringt "Error while dialing (2). Error: {}":
es wird dort verwendet... ist aber nicht dabei...
tut mir leid, aber diesen Satz verstehe ich nicht.
Wenn es verwendet wird, muss es doch auch installiert sein.
Denn wenn nicht installiert, dann kann es auch nicht verwendet werden.Ist aber auch egal, ich probier dies einmal.
Melde mich dann wieder. -
das:
sudo apt-get install libttspico-utils lamefunktioniert nicht.
Benutze debian auf proxmox in einer VM
Und da kommt:
root@VM-iobroker:/opt/iobroker# sudo apt-get install libttspico-utils lame Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Paket libttspico-utils ist nicht verfügbar, wird aber von einem anderen Paket referenziert. Das kann heißen, dass das Paket fehlt, dass es abgelöst wurde oder nur aus einer anderen Quelle verfügbar ist. E: Für Paket »libttspico-utils« existiert kein Installationskandidat.
-
-
@boeskij
Lol, wusste gar nicht das ich mich damit schon mal beschäftigt hatte. -
So, Installation hat geklappt.
Dann das Script von @boeskij laufen gelassen.
Und es kommt:javascript.0 (1132) script.js.Scripte.test6: Result: {"result":{"parameter":{"telnr":"017647101234","callerid":"066512345","audiofile":"/tmp/ttsifixalarm","extension":"123456789"},"options":{"action":"originate","channel":"SIP/123456789/017647112324","context":"ael-ansage","exten":"017647103713","priority":1,"timeout":60000,"variable":{"repeat":5,"file":"/tmp/ttsifixalarm","del":""},"callerid":"0665123543"},"guid":"0d47baf8-3fad-b4c3-4ec1-86f81a5d8ad6","result":{"response":"Error","actionid":"0d47baf8-3fad-b4c3-4ec1-86f81a5d8ad6","message":"Originate failed"}},"error":{"response":"Error","actionid":"0d47baf8-3fad-b4c3-4ec1-86f81a5d8ad6","message":"Originate failed"}}
Anruf erfolgte nicht.
Tel. habe ich geändert.Muss ich jetzt noch deine Auskommentierung machen ?
-
So, habe auch mal die Zeilen auskommentiert.
Aber gleiches Ergebnis.Test "Originate failed"
-> was immer das zu sagen hat.Tel. wurde nicht getätigt.