Med sipgate.io har Sipgate skapat ett spännande moln-API med vilket man har en mängd alternativ för internettelefoni. Ett konto är gratis, och det finns också möjlighet att ställa in ett gratis avsändarnummer i funktionsbutiken. Dokumentationen från sipgate.io kan fortfarande utökas, men med lite läsning i det officiella Sipgate API kan du snabbt inse spännande saker.
I följande kod implementerar vi följande beteende: För teständamål ringer vi ett dussin telefonnummer efter varandra för att spela upp en ljudfil och sedan lägga på den igen.
2e92bf96cdada9545cb8525ec68a7d6b
PHP-tillägget XML-RPC måste vara installerat. Samtalet görs nu - för att spela upp ljudfilen anger vi en trigger-URL i Sipgate-backend för utgående samtal (om vi kallar oss själva) och för inkommande samtal (om någon skulle ringa tillbaka) och aktiverar felsökningen -Logga:
Nu förbereder vi en ljudfil (som enligt dokumentationen måste finnas tillgänglig som en mono 16-bitars PCM WAV-fil). För att göra detta kastar vi ffmpeg för att konvertera en MP3-fil till önskat format:
2e92bf96cdada9545cb8525ec68a7d6b
Nu laddar vi den här WAV-filen tillsammans med följande XML-skript till https://www.tld.com/sipgate:/
2e92bf96cdada9545cb8525ec68a7d6b
Om du vill variera ljudfilerna är det lämpligt att alltid använda ett nytt filnamn (sound-v * .wav) av cache-skäl.
Parallella samtal är möjliga (enligt det officiella uttalandet från Sipgate finns det en begränsning av 5 samtidiga anslutningar, men jag kunde upprätta fler), här bör du sedan justera något på sömnvärdet.
Uppdatering 03/2022 : Sipgate har nu äntligen utfasat det använda XML-RPC-gränssnittet . Därför är lösningen ovan inte längre användbar. Ett stabilt alternativ är till exempel kommandoradsverktyg som baresip för Linux (med hjälp av alsa-modulen och kommandot /ausrc aufile,audio.wav ) eller tSIP för Windows Här är en liten implementering i PHP som ringer upp ev. telefonnummer med hjälp av tSIP och spelar upp en ljudfil:
7d1db430a89467d76748de53cfb438bf