Could you please help me to have a better understanding of these terms in an ICM perspective. As far as I know CTI manager comes along with CUCM, But rest of the two are always a confusion for me.
Gee, I thought I explained that. What documents have you read on this subject? Maybe I'll work from the outside-in.
An Agent Softphone (like the CTIOS SoftPhone or CAD) is a client of CTIOS.
The mode of operation is as follows: it sends a request and gets back an immediate reply confirming that the parameters of the request were correct; sometime later, it receives an unsolicited event indicating the state has changed at the server. Only on the event does the GUI change - not when the response is received.
It also receives totally unsolicited events (like the call presented event) from the server indicating the obvious.
The CTIOS talks to the CTI Server over a protocol that is public, but you need a Developer's Licence to use it.
The CTI Server talks to the PG over a protocol that is not public.
The PG talks to the Switch or Call Manager over a protocol that is published by the Switch vendor (in the case of CUCM, this is JTAPI).