Hi,
SIP's main entity are User Agents (UAs), which can be devided into UAC (User Agent Client) and UAS (User Agent Server), depending on the *transaction* they are involved into. UAC are transaction-level entities initiating requests and accepting responses. On the other side, UAS are transaction-level entities accepting requests and issuing responses.
Thus, a normal SIP softphone instantiates (depending on the implementation may differ the exact way) a UAC whenever sending an INVITE and the *same* UAC waits for the response (usually an OK). If acting as receiving point, it will create a UAS instantiation as soon as it receives an incoming INVITE and will issue the appropriate answer.
The point is that a server is mainly a UAS waiting for incoming requests BUT it will need to instantiate a UAC to send requests (just as forwarding INVITES, ACK, CANCEL,etc...) only after receiving incoming requests. By itself, a server MUST NOT send a request except to forward incoming ones. Next diagram (I expect it arrives with the right alignment) tries to explain the transaction-level entities involved in a generic SIP transaction. (INVITE+OK). I hope it will be useful to clarify how SIP works.
softphone proxy server softphone UAC----------------------------------------->UAS + UAC----------------------------------------->UAS
Thus a SIP application starting a request (initiating a transaction) will create a UAC transaction and will expect a UAS to receive and process it.
I expect not to confuse you with the words UAS and UAC with the usual meaning of UA (=softphone).
Summarizing, only softphones and end-point applications will initiate requests, that will be forwarded by servers within the "backbone" to the appropriate end-point.
I hope it is more clear now,
Samuel.
P.S. This is the normal SIP behaviour........I'm afraid some situations might be different (NOTIFY requests).
Unclassified
GR S gr_sh2003@yahoo.com 07/08/04 09:00AM >>>
Hi,
--- Klaus Darilion klaus.mailinglists@pernau.at wrote:
So maybe you should start with your intention - what feature are you
trying to setup? ser can create requests ( transaction = request+response(s) ) and you
can use this feature via the FIFO.
Thanks for the reply.
Sorry, I misnderstood the meaning of transaction. I was only thinking about SIP requests, not responses. But i am still confused about call initiating. Please correct me if i am wrong on this, the original poster was asking about initiating calls from SER and AFAIK proxies dont initiate calls. Can they initiate calls? If yes, on what situations? When you say SER can create requests, do you mean methods like CANCEL?
klaus
TIA,
===== Girish Gopinath gr_sh2003@yahoo.com
__________________________________ Do you Yahoo!? New and Improved Yahoo! Mail - Send 10MB messages! http://promotions.yahoo.com/new_mail
_______________________________________________ Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers