on 01-24-2014 11:46 AM
The main question during server side integration is how would you push the notification (e.g. when the call arrives) back to the applcation (i.e. browser page). We are planning to replace the desktop based softphone capability with a server side based solution which can be notified when the call arrives and the application would retrieve the required data from the call context (or session) to transfer to the relevant screens of the application.
We are precisely looking for a AJAX based application as that may be the only way to use it. Can you provide more information in detail on how this can be achieved or details on the thin client AJAX CTI which you were developing? Are there any general guidelines on how this can be developed and any pitfalls. Any comments/info are welcome. Thanks.
Hi,
I am also new to CTI OS. Trying to develop a web based CTI application.
I'm using the CTI OS SDK. I have replaced the applet contents with the servlets and jsp's. I'm making use of the API methods for all functionalities like Connecto to server, Agent login/logout, make a call.
I have few questions
1. How the user will be notified when he receives a call?
Please help!!!!
Thanks,
Jay
(All this is under development and may change by the time it is ready for prime time)
The AJAX solution we are building is not merely a sample web softphone application but a SDK that developer can use in their development environment. At this time Eclipse and NetBeans are IDEs we are focusing on. Out of these two, NetBeans is the main focus.
NetBeans IDE will provide the framework as an add-on to any web project. It automatically wires the objects together, provides real-time server push technology, Javascript to Java (CTIOS objects) and vice-versa object marshalling and communication vehicle without doing form posts, submits and servlets. The framework provides CTI buttons (ready, not ready, make call, end call etc) in the components palette that allows visual drag & drop capability. Just drag/drop the component to your web page and the framework wires them and makes them live CTI buttons fully functional of receiving and sending CTI events on the drop event. No coding required. Of course, for custom development and enhancements, there are server side and client side hooks that you can plug into and extend to meet your needs.
I have worked in CTI and CRM industry for quite a while now. I have not seen any other framework providing the functionalities mentioned above. We are focusing on making lot of noise in the industry with this.
Developing an AJAX softphone application requires a lot of effort, design and testing. Instead of building your own, I would recommend you contact Custom engineering in Advanced services to engage us to provide you further information and help.
To answer your question on server push: there are couple of ways you can do this on your own: First choose an Ajax toolkit to work with
1) polling: can you design your web application to poll the backend server for new events it needs to process on server side. Not very efficient as it would inject time delays and would not be real time.
2) long lived keep-alive sessions: Many web applications use this way. Not very scalable as it wastes thread resources during time of inactivity...not very scalable!
3) checkout other server push technologies
then of course, you would have to device an architecture where you can pass information back and forth between server side and client side sessions in a lightweight scalable way. Inject AJAX technology in the mix to prevent browser paging and refresh only part of the screeen that needs to be refreshed. What if the user clicked refresh button or closed and opened a new browser? how would it reconnect, re-establish the session and refresh user interface button settings, what about agent sessions on the server side, how would it react to this?...many more questions you have to consider (I am just scratching the surface here).
All this requires a lot of detailed oriented analysis and design. We have already done the hard work for you. Engage us to see if we can help you.
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: