Project

General

Profile

Call Recordings cannot play or download in Goautodial 4 !

Added by Raymond Teng about 2 months ago

Hi Demian!
After I made a phone call successful,I try to play and download the recording file via website.
BUT it displayed ERROR 404,maybe something wrong with httpd configue?


Replies (6)

RE: Call Recordings cannot play or download in Goautodial 4 ! - Added by Christian Idarraga about 2 months ago

Raymond Teng wrote:

Hi Demian!
After I made a phone call successful,I try to play and download the recording file via website.
BUT it displayed ERROR 404,maybe something wrong with httpd configue?

I have the same problem

RE: Call Recordings cannot play or download in Goautodial 4 ! - Added by Guilherme Bizzani 21 days ago

Hello, I had this same issue and my solution was to manually create an symbolic link in the folder html named RECORDINGS poiting to the file where asterisk store the recordings files.
ln -s /var/spool/asterisk/monitorDONE/ RECORDINGS
If you get NOT AUTHORIZED errors you must change the chmod of all the folders in the path /var/spool/asterisk/monitorDONE/MP3/.

RE: Call Recordings cannot play or download in Goautodial 4 ! - Added by Guilherme Bizzani 21 days ago

But in my case the links are getting the URL "127.0.0.1". Where do you guys change the recording URL to your server's ip?

RE: Call Recordings cannot play or download in Goautodial 4 ! - Added by Jackie Alfonso 13 days ago

Guilherme Bizzani wrote:

But in my case the links are getting the URL "127.0.0.1". Where do you guys change the recording URL to your server's ip?

Hi,

You may change it on astguiclient.conf

  1. FTP recording archive connection information
    VARFTP_host => 127.0.0.1
    VARFTP_user => asterisku
    VARFTP_pass => ftp1234
    VARFTP_port => 21
    VARFTP_dir => RECORDINGS
    VARHTTP_path => http://127.0.0.1 << change this

Or you may also change it on the goadmin portal go click on the "Settings" > "Servers > Advance Settings"

org.png (33.9 KB) org.png

RE: Call Recordings cannot play or download in Goautodial 4 ! - Added by Guilherme Bizzani 11 days ago

Jackie Alfonso wrote:

Guilherme Bizzani wrote:

But in my case the links are getting the URL "127.0.0.1". Where do you guys change the recording URL to your server's ip?

Hi,

You may change it on astguiclient.conf

  1. FTP recording archive connection information
    VARFTP_host => 127.0.0.1
    VARFTP_user => asterisku
    VARFTP_pass => ftp1234
    VARFTP_port => 21
    VARFTP_dir => RECORDINGS
    VARHTTP_path => http://127.0.0.1 << change this

Or you may also change it on the goadmin portal go click on the "Settings" > "Servers > Advance Settings"

Hello Jackie, my server conf was already with a different Alt Recording Server IP and the Recording Web Link was set to Alternate IP, but it didn't change in the call recording report's page.
By digging into some files I found that in file goGetCallRecordingList.php the function that gets the IP address of the server was trying to access an undefined variable, it seems they modified half of the code when changing from a "foreach" to an "while".
I reported it on an issue here: https://goautodial.org/issues/7124
Now the recording's page works fine, whatever I set in the server configuration it changes in my report page. (:

RE: Call Recordings cannot play or download in Goautodial 4 ! - Added by Demian Biscocho 11 days ago

Thank you for reporting the issue and providing the fix. We'll update the issue tracker.

This is should be the updated entry:

$rsltx                     = $astDB->get('servers', NULL, $cols);

Should be:

$rsltx                     = $astDB->getOne('servers', NULL, $cols);

So we don't need to specify the array entry number of the data.

$rsltx                     = $astDB->getOne('servers', NULL, $cols);

if (preg_match("/ALT_IP/i", $rsltx['recording_web_link'])) {
    $location             = preg_replace("/$URLserver_ip/i", "{$rowx['alt_server_ip']}", $location);
}
if (preg_match("/EXTERNAL_IP/i", $rowx['recording_web_link'])) {
    $location             = preg_replace("/$URLserver_ip/i", "{$rowx['external_server_ip']}", $location);
}
    (1-6/6)
    Go to top