Results 1 to 5 of 5

Thread: How to know if a call is being recorded?

  1. #1
    Join Date
    Apr 2016
    Posts
    33

    How to know if a call is being recorded?

    I want to add a function to pause/resume call recording into my app using IceLib.

    What property tells me is an interaction is currently being recorded or not? I am guessing the property IsPaused tells me if the recording is currently paused or not. But I want to know if the user's call is being recording first.

    How can I tell if a call is being recorded or not?

  2. #2
    Join Date
    Aug 2017
    Posts
    10
    Hello,

    As far as I understand your question, you want to know which active calls are being recorded. You can use Call Activity view from ICBM and add a column named Recs, which tell you if the active calls is being recorded or not. You can add the same column to Interaction Desktop.

    Hope this help.

    Best Regards,
    Youssef Atef

  3. #3
    Join Date
    Apr 2016
    Posts
    33
    Thank you for your reply.

    I want to find out id the call is being recorded via code using the IceLib. I am trying to build an integration between my app and the phone system.

  4. #4
    Join Date
    Aug 2007
    Posts
    177
    There is a property on the Interaction class named IsRecording. If you are getting IsPaused, you should already be watching the Recorders and SupervisorRecorders properties and have access. These read like they only report if the current session user is recording the interaction, which I would think would be false for interactions recorded from IR.

    If you need an attribute try Eic_Recorders and Eic_IRRecordingId as they should be able to tell you if the recording is in process. Eic_IRRecordingId will only be present if the recording was initiated by an IR policy. I am not sure what the value, if any, of Eic_Recorders would be on an IR policy initiated interaction.

    Eic_Paused should tell you if the recording is paused, and Eic_RecordingsAutoResumeTime will tell you when a securely paused recording is scheduled to resume.

    I don't have a system or the code base to currently test any of these, so it is best if you can just watch each of these attributes and report back what you are seeing.

  5. #5
    Join Date
    Apr 2016
    Posts
    33
    The `Eic_Recorders` gives me "System" for a value. Also, `Eic_IRRecordingId` attribute gives me a valid Id of the recording. However, the `IsRecording` property is set to false.

    I tried to change my code from

    Code:
        if (interaction.IsRecording && interaction.IsPaused && !interaction.IsDisconnected)
        {
            interaction.Pause(false);
        }
    to


    Code:
    var iRRecordingId = interaction.GetStringAttribute("Eic_IRRecordingId");
    
    if (!string.IsNullOrWhiteSpace(iRRecordingId) && !interaction.IsPaused && !interaction.IsDisconnected)
    {
        resource.IsSuccess = true;
    }
    But the code throw an exception "The specified call no longer exists."

    Here is a list of all properties that I am watching
    Code:
    InteractionAttributeName.CallIdKey,
    InteractionAttributeName.InteractionId,
    InteractionAttributeName.InteractionType,
    InteractionAttributeName.RemoteAddress,
    InteractionAttributeName.RemoteName,
    InteractionAttributeName.RemoteId,
    InteractionAttributeName.State,
    InteractionAttributeName.Direction,
    InteractionAttributeName.StateDescription,
    InteractionAttributeName.Muted,
    InteractionAttributeName.ConferenceId,
    InteractionAttributeName.CallType,
    InteractionAttributeName.Recorders,
    InteractionAttributeName.SupervisorRecorders,
    InteractionAttributeName.LocalId,
    InteractionAttributeName.LocalName,
    "Eic_CallState",
    "Eic_State",

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •