Session.callid

Discussion in 'CRM / Helpdesk / App Integration' started by caiotoledo, Jan 13, 2015.

Thread Status:
Not open for further replies.
  1. caiotoledo

    Joined:
    Jan 15, 2014
    Messages:
    19
    Likes Received:
    0
    Hello,

    The variable session.callid has these struct:
    "From_[ani]_To_[dnis]_Menu_[dnis]_#0/147"

    But my doubt is: How i could link the last number showed (in this case 147) with my others tables? Like callhistory3 and calldetails.

    I need this information because I need to see what extension did transfered the caller to the IVR. I thought that the variable "callchain" in callhistory3 could give me that answer, but first i need to find that call in the table.

    Thanks!
     
  2. VAD_Support

    VAD_Support Active Member

    Joined:
    Aug 6, 2009
    Messages:
    690
    Likes Received:
    0
    Hi there!

    Unfortunately, the CallHistory3 table is written after the call has been completed, so during the call you will not be able to get the information from there.

    The only way to get this information is using the 3CX Call Control API:
    http://www.3cx.com/blog/docs/call-control-api/

    The procedure is a bit complex, because when you're querying the Call Control API from the VAD you will only see what it's happening at that specific moment. You will not see the previous extensions where the call was connected before. To get that information, you need to collect it when it is happening, so you need an external program to do that job. So, to achieve this you need to:
    1) Create a .NET program, use the 3CX Call Control API from there and track all the calls in the system, so you know what is happening with each call, and the history of each call.
    2) From the VAD, you can "ask" the program created in step 1 for the extension that transferred the call to the VAD. To do this you need to implement some RPC method like sockets, remoting, etc.

    As you can imagine, this is not an easy task. If you just have a few extensions that can transfer calls to the VAD, maybe a better option is register the VAD in different extensions, and tell the users to transfer the calls to different extensions. For example, the user on ext 100 will transfer calls to the VAD on ext 800. The user on ext 101 will transfer calls to the VAD on ext 801. And so on. This way, just checking the session.dnis variable you know the original extension.

    Hope the information helps.

    Kind regards.
     
  3. caiotoledo

    Joined:
    Jan 15, 2014
    Messages:
    19
    Likes Received:
    0
    Hello,

    Thank you for your answer!

    My client has 8 attendant in their call center, maybe in the future 10.

    Do you think that solution of multiples IVRs could be apply? That would consume a lot of RAM memory?

    Best Regards,
    Caio Vinicius.
     
  4. VAD_Support

    VAD_Support Active Member

    Joined:
    Aug 6, 2009
    Messages:
    690
    Likes Received:
    0
    Yes, that solution would be much simpler in that scenario. But you need to ensure that each agent transfers the call to the right VAD extension number...
     
  5. VAD_Support

    VAD_Support Active Member

    Joined:
    Aug 6, 2009
    Messages:
    690
    Likes Received:
    0
    Memory consumption is not a problem, you will have the same quantity of calls at runtime...
     
Thread Status:
Not open for further replies.