vovida sip doc

所属分类:IP电话/视频会议
开发工具:MultiPlatform
文件大小:1192KB
下载次数:137
上传日期:2005-11-26 13:26:18
上 传 者管理员
说明:  VOCAL是vovida.org开发的SIP系统,应该是目前功能最完善,使用者最多的开源SIP协议栈,这是一些最新相关的文档说明,相关协议实现可以参考网站:http://www.huihoo.com/telecom/vovida_sip/
(development of the SIP system, it should be is the most complete, most users of the open-source SIP protocol stack, which is a document related to the latest statement, related agreements can achieve reference website : http://www.huihoo.com/telecom/ vovida_sip /)

文件列表:
vovida sip doc (0, 2005-11-25)
vovida sip doc\sipStackHighLevel_Design.pdf (69413, 2005-11-25)
vovida sip doc\ua-error-cases.htm (6330, 2005-11-25)
vovida sip doc\userguide.pdf (1266416, 2005-11-25)
vovida sip doc\VOCAL TODO LIST.txt (20620, 2005-11-25)
vovida sip doc\vocal_sip_stack overwiew.htm (1610, 2005-11-25)

==================================================================== LICENSE AND COPYRIGHT ==================================================================== The Vovida Software License, Version 1.0 Copyright (c) 2000 Vovida Networks, Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The names "VOCAL", "Vovida Open Communication Application Library", and "Vovida Open Communication Application Library (VOCAL)" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact vocal@vovida.org. 4. Products derived from this software may not be called "VOCAL", nor may "VOCAL" appear in their name, without prior written permission of Vovida Networks, Inc. THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL VOVIDA NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. All third party licenses and copyright notices and other required legends also need to be complied with as well. ==================================================================== INTRODUCTION ==================================================================== The SIP Base Proxy provides a template for designing and building applications such as Proxy Servers to process messages received from the VOCAL SIP stack. It contains a number of base classes that the application can derive from. These include proxy, thread and event classes as well as a hierarchical builder, feature, state, operator class structure for the event processing. Components of the VOCAL system such as the Marshal Server are based on this code. ==================================================================== SOURCE CODE INFORMATION ==================================================================== BaseProxyTestMain.cxx contains an example main() program. It is specified as a test program in the Makefile. It creates Builder and HeartlessProxy objects and then runs the proxy object. SIP messages can then be sent to the Proxy IP address:port and will be passed to the Proxy Builder. After that, it is up the designer to add his/her message processing code. BaseCommandLine BaseCommandData is a structure which can be passed into a baseCommandLine call by the main() program of a proxy. HeartLessProxy This class creates a call container, callprocessing fifo, sipstack, worker and sip threads. HeartLessProxy::run method starts the worker and sip threads. A builder object and SIP port number is given on instantiation. BasicProxy BasicProxy is a derived class from HeartLessProxy. A BasicProxy object should be used in a system which supports the heartbeating mechanism. This class adds three heartbeating threads. SipThread SipThread is a ThreadIf. SipThread blocks on sipstack receive. On receiving a SipMsg it creates a SipEvent. The SipEvent then gets posted to fifo. The SipThread::thread() has the while loop. WorkerThread WorkerThread is a ThreadIf. It has a input queue on which it is blocked. The input queue contains sip proxy events. Builder Builder is a base class. It is passed Events by the WorkerThread. for processing. It is a Feature container. Feature is a State container. State is an Operator container. It also contains a pointer to the proxy CallContainer. A builder object is used in constructing a HeartLessProxy/BasicProxy object. Feature Feature is a State container. The Feature::process() calls State::process(). The State then returns the nextState. State State is a Operator container. The State::process() calls Operator::process(). The Operator process returns the nextState. Operator Operator is a base class. The Operator::process() is pure virtual. The SIP Event handler shoud be implemented by a derived class of the Operator. SipProxyEvent SipProxyEvent is a base class. It contains an output fifo, and info associated with its CallContainer and CallInfo. A SipProxyEvent can post itself to its output fifo. SipEvent SipEvent is derived from SipProxyEvent. SipThread object creates a SipEvent on receiving a SipMsg. SipEvent gets posted to an output fifo. DeviceEvent DeviceEvent is dervied from SipProxyEvent and is a place holder for events from a device. TimerEvent TimerEvent is derived from SipProxyEvent. This event is posted when a timer goes off. CallContainer CallContainer is a base class. It is used as the proxy's container for CallInfo objects. CallInfo CallInfo is a base class. It stores information about a call. A SipProxyEvent object has CallInfo. CallInfo data members are thread safe. StateMachnData StateMachnData is a base class. It contains data that is active only during the length of a call. Applications must derive from this class and store their data in the derived class. ====================================================================== Copyright 2000-2003, Cisco Systems, Inc. THE INFORMATION HEREIN IS PROVIDED ON AN "AS IS" BASIS, WITHOUT ANY WARRANTIES OR REPRESENTATIONS, EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION, WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. $Id: sipbase_readme.txt,v 1.1 2003/04/02 01:53:33 bko Exp $

近期下载者

相关文件


收藏者