FOP2 Recording Issues in Elastix 2.2

  1. ‹ Older
  2. 12 years ago

    I am having the same problem. I used the recording_elastix.pl script but it still did not appear, so i decided to debug some more. This is what i have come across with. I'm not expert, but i have tried to put a logical mind in trying to get at the bottom of the problem.

    a.) the recording_elastix.pl script requires in and out files and the final output file .wav ( which i had done in the fop2.cfg )
    b.) the monitor_mix = true ( prevents the recording_elastix from running because it can no longer locate the 'in' and 'out' files ( so i set this to false ). This after looking at the recording_elastix.pl script that it mixes it too.
    c.) I noticed that the uniqueID in the CDR table for that specific call is NOT Equal to the uniqueID of that of the generated wav file after the recording by FOP2. It is incremented by "1" .. example 1338135904.7.wav whereas the cdr shows 1338135904.6 <--- notice the 6 and 7 . So this alone is not equal that is why the update script for mysql will never write the "audio:fnm" correctly.

    Now my setup is run on elastix and the fop2 version is the one provided by them 2.25. I only installed the license. I tried racking my brain looking at the forums and found this thread which i hope anybody out there from FOP2 can shed light on.

    I can fix this problem by editing the update portion of the script to the mysql table but my question in the first place would be, why the Increment in the UniqueID?

    Any help would be greatly appreciated. Thanks

  3. admin

    28 May 2012 Administrator

    Your problem is most probably the use/abuse of Local channels, where the call initially has a uniqueid but it changes to a different one do to a channel masquerading or similar.

    It is not something that can be easily fixed, as the manager monitor application uses the monitor app (instead of mixmonitor), and I am not sure if we can pass arguments to be expanded when the call ends (and not when the recording starts/middle of call).

    Mixmonitor has the option, but not sure if Monitor does. So, the script is ok, but the uniqueid does not match the cdr uniqueid and that is why the field is not populated. You could modify the script to do a fuzzy search of sorts, using src, dst, and aproximate uniqueid and timestamps, but it won't be too nice imho.

  4. admin

    28 May 2012 Administrator

    I am reviewing events and code, and I think the problem might be the channel you are monitoring. If you start recording on the channel that receives the call (leg B), the filename will have the uniqueid of that channel, but the cdr is saved with the uniqueid of the originating channel (leg A).

    Try starting a recording for an extension that is doing an outgoind call and check uniqueids, then do it when you receive a call. Do you see the difference in the later case?

  5. You are right. The recording leg is what is causing the uniqueid to be different. The destination is clicked and recorded it no longer matches the one on cdr because what is recorded is the source uniqueid. Is there any work around on this because when you use fop2 for recording the calls, there are cases wherein you don't know who originated the call. So i might be clicking on the destination and when i click on record, it will not process the recording.

    Also, is that right about what i commented that the monitor_mix should be set to false for this script to run successfully?

  6. admin

    31 May 2012 Administrator

    I am working on a fix, so fop2 sends the other leg uniqueid as a parameter to the post recording script. On my initial tests it seems to work, you should see it working on the next release. If you want to test it before release, catch me on the live help and I will provide a link to download a test version.

    Regarding monitor_mix, it does not affect the script. If you set monitor_exec asterisk IGNORES the mix option, and records unmixed and passes 3 parameters to the script.

    Best regards,

  7. Hi,

    I am also experiencing this issue, where the calls are being recorded and mixed together then not appearing in the Monitoring tab.

    -rw-r--r-- 1 asterisk asterisk 289964 Oct 9 13:47 7026_7030_134235_1349786396.140275.wav

    Im using Elastix 2.3.0 Revision 8 (according to the web interface).

    Nicholas - Did you resolve the issue you were looking into ?

  8. admin

    9 Oct 2012 Administrator

    Yes, the issue is fixed on what it would be the next release. Just to be sure we are talking about this, I will describe the issue : using elastix and the update script provided for monitor_exec is that the recording appears depending on the call leg you start the recording in fop2. Suppose you have extension 100 talking to extension 200, and you start recording , it works when you record 100, but it does not work when you record 200. (actually , the recordings *are* made, but the uniqueid of the call does not match the cdr entry, and so the link is lost)

  9. Hi Nicholas,

    Yes this is correct, the issue I am experiencing.

    Am I able to obtain a copy of the next release for testing as this feature is mostly being requested in house?

    Many Thanks,

    Gavin

  10. admin

    11 Oct 2012 Administrator

    wait. wait. I smell a "I too have this problem" when you are actually not having the same problem.

    One thing is not having the recordings populated in the recordings interface because you did not configure them, and a totally different thing is that you have SOME recordings on the *Elastix* recording interface (not fop2 interface) showing up when using the special purpose recordings_elastix.pl script supplied with the latest fop2 version.

    If you do not see *anything* in the fop2 recordings interfaces then it is not the same problem, the most probable cause is what I said above, you did not configure the monitor_exec option in fop2.cfg.

    Recordings, by default, are *not* enabled because they will most probably require some intervention from your part.

    Look for this line in fop2.cfg,

    ; monitor_exec=/usr/local/fop2/recording_fop2.pl

    remove the semicolon so it becomes active:

    monitor_exec=/usr/local/fop2/recording_fop2.pl

    Then restart fop2:

    service fop2 restart

    After that, you *might* start seeing recordings that you initiate via fop2 in the recordings tab. If you have "all" permissions you will see all recordings, if not you will see only your own.

    Best regards,

  11. Hi Nicolas,

    Thank you very much for your reply.

    To confirm.

    I am extension 7026 , my colleague is extension 7027

    If I make a call from 7026 and record it - this call is shown in the Monitoring tab in Elastix.

    If my colleague makes a call (7027) and I record it with my user 7026 (I have all permissions), then the recording is visible on the disc and the channels gets mixed together but is NOT visible under the Monitoring tab when i log in as user 7026.

    So I believe the monitor_exec scripts are being called correctly. I am calling ;

    monitor_exec=/usr/local/fop2/recording_elastix.pl

    Here is my call recorded as user 7026 for user 7027 ;

    /var/spool/asterisk/monitor
    -rw-r--r-- 1 asterisk asterisk 844204 Oct 9 14:19 7026_7027_140622_1349787888.140752.wav

    This call isnt displayed under the Monitoring tab.

    --
    Gavin

  12. admin

    11 Oct 2012 Administrator

    Hi Gavin,

    This issue is the one fixed on what will be the next release. Contact me in the live help tomorrow if you want to try out the patched version, as there is no official update yet.

  13. Hi Nicolas,

    That would be great if I could try the patched copy out - I also have you on googletalk as well , what time is good for you (I am in the UK).

    Gavin

  14. Similar issue here (with Elastix 2.3). I can grab incoming and outgoing calls permanently within the extension -> shows up in [ Monitoring ]
    I can grab calls within FOP2 -> doesn’t show up in [ Monitoring ]
    In both cases the *.wav files are in /var/spool/asterisk/monitor/
    I tried with the rpm within Elastix and the manual installed version 2.26.
    I tried all the hints here but no success.
    Any advice?

    Thanks

  15. 11 years ago

    I can grab calls within FOP2

    I am on Elastix 2.3 also and cannot see how to pickup the recorded calls from within FOP2 , where is this option?

    also I have this same problem with FOP2 and no calls showing up in Monitoring on Elastix despite changing settings, I just found this post but posted a similar request yesterday to this site.

  16. admin

    6 Feb 2013 Administrator

    http://download.fop2.com/recordings_elastix.pl.txt

    That is the last incarnation of the monitor_exec script to use for elastix. Elastix rpm will use just a named file the way old ARI used (with file inspection on the hard disk). Elastix 2.3 uses now a field on the cdr table to link recordings (much more proper), so you need to use this script to set the field when the recording is done.

    However, it works depending on the call leg you start the recording, not sure what direction, because the uniqueid stored on the cdr does not match the uniqueid of that leg. FOP 2.27 fixes that problem, but it is still in beta.

    Best regards,

  17. Hi Nicolas,

    Do you advise using this version? I get a 404 error if I try to download it.

    Gavin

  18. admin

    18 Feb 2013 Administrator

    Hi,

    download 2.27 beta that includes the fix and the modified script:

    http://download.fop2.com/fop2-2.27-centos-i386.tgz
    http://download.fop2.com/fop2-2.27-centos-x86_64.tgz

  19. Hi Nicolas,

    I have updated my server to this new version, and renewed my license :-)

    However, the fop2 service starts but the client is unable to connect, Connecting to server, attempt .... upto 10 then errors.

    # ./fop2_server --test
    Flash Operator Panel 2 - Valid License (1)

    Connection to manager OK!

    # netstat -lnp | grep 4445
    tcp 0 0 0.0.0.0:4445 0.0.0.0:* LISTEN 7030/fop2_server

    From the outside world telnet connections are possible to port 4445 on the server IP.

    Any ideas?

    Gavin

  20. admin

    19 Feb 2013 Administrator

    Do you use http or https? What browser?

    One important change that might be an issue is that the new fop2 version will use secure web sockets instead of standard web sockets when you access it via https. You have to set the ssl certificate files in fop2.cfg, uncomment and set the appropiate certs, the same ones you use for your https web server:

    ; If you access fop2 via https, browsers will try to use wss (Secure 
    ; web sockets) and for that it requires a certificate file and key file,
    ; the same ones you have in your web server configuration:
    ;
    ;ssl_certificate_file=/etc/pki/tls/certs/localhost.crt
    ;ssl_certificate_key_file=/etc/pki/tls/private/localhost.key

    Now, the problem lies in that some browsers require you to accept the certificate as you have to do when you browse an https site with self signed certificates, but the wss connection does not ask for it. I think firefox needs to be pointed to https://your.server:4445 or perhaps wss://your.server:4445 in the address bar so it ask for confirmation on the certificate. I did not have to do it with chrome. Another option if this is the case is to disable websockets in /var/www/html/fop2/js/presence.js

  21. Hi Nicolas,

    Many thanks for the quick reply - I have disabled websockets in presence.js and FOP2 is working correctly again.

    Gavin

or Sign Up to reply!