CRM Integration

  1. 13 years ago

    My boss is very impressed so far but is dead set on making our CRM the primary tool to interact with Asterisk for our call center agents.

    So, is possible then to take bits of functionality and embed them into another PHP app?

    For instance, we have a page that shows all our clients. He wants to be able to make their phone number a link, and on click, have the client number dialed, and then have the agent extension rung as soon as the client picks up.

    He would also like to have the agent logged into FOP2 when they login to the CRM and also trigger the agents extension to be added to the appropriate queue automatically, rather than have to: log into the crm, log into fop2 panel, then use the phone to add themselves to the queue. And ditto, lot out of the crm, then log out of FOP2, remove their extensions from the queue.

    He thinks for our switchboard/queue managers, the FOP2 panel is a good product. And maybe a stripped down panel for the agents, not sure, mostly he only wants them to work in the CRM and answer phones.

    Is any of this possible and if so, can you point me in the right direction?

    And the other related question, I can't really figure out how the client talks to the fop2 server. I haven't dug that deep in the code, but briefly, could you tell me how the web client is updated? Is that part of what the flash modules do?

    One last thing, is it possible to connect to the fop2 server and use AMI type exchanges or something, so that I can extend the FOP2 system for what we need?

    thanks!

    - phil

  2. admin

    9 Sep 2011 Administrator

    So, is possible then to take bits of functionality and embed them into another PHP app?

    It can be done if you your crm is web based and hosted on the same server as fop2, and if you have access to the crm source code.

    For instance, we have a page that shows all our clients. He wants to be able to make their phone number a link, and on click, have the client number dialed, and then have the agent extension rung as soon as the client picks up.

    It is possible, but not that simple. You have to embed fop2 into your crm app, you have to modify the crm login procedure so it also logs into fop2 with the correct extension, so you should store that extension and the password somewhere in the crm user database. Also, the crm must be hosted on the same server fop2 is running. Then you must change the phone numbers in your crm application to call a javascript function on the fop2 frame as the fop2 phonebook does:

    function clickdial($number) {
       $numberstrip = preg_replace("/[^0-9]/","",$number);
       return "<a href='http://www.fop2.com' onclick='parent.dial(\"$numberstrip\"); return false;'>$number</a>";
    }

    He would also like to have the agent logged into FOP2 when they login to the CRM and also trigger the agents extension to be added to the appropriate queue automatically, rather than have to: log into the crm, log into fop2 panel, then use the phone to add themselves to the queue. And ditto, lot out of the crm, then log out of FOP2, remove their extensions from the queue.

    You can modify FOP2Callbacks.pm to intercept the login action and add a member to a queue via manager actions. There is no documentation, but the FOP2Callbacks.pm file is there for you to take a look and play.

    He thinks for our switchboard/queue managers, the FOP2 panel is a good product. And maybe a stripped down panel for the agents, not sure, mostly he only wants them to work in the CRM and answer phones.

    Is any of this possible and if so, can you point me in the right direction?

    For adding hooks into the server: /usr/local/fop2/FOP2Callbacks.pm
    For adding hooks into the client: /var/www/html/fop2/js/jcallbacks.js
    For popups on the client: /var/www/html/fop2/checkdir.php

    And the other related question, I can't really figure out how the client talks to the fop2 server. I haven't dug that deep in the code, but briefly, could you tell me how the web client is updated? Is that part of what the flash modules do?

    One last thing, is it possible to connect to the fop2 server and use AMI type exchanges or something, so that I can extend the FOP2 system for what we need?

    It uses flash xmlsockets or html5 websockets if available.

  3. You're my hero Nicolás!!!

or Sign Up to reply!