Feature Server Files
The files found within in the FS directories can be divided into the base files, those files that enable CPL-to-C++ conversion, and related classes.
Base Files
The fs/base
directory contains the following files:
- fs.cxx
Contains the FS’s main()
- FsConfigFile
Contains a function for parsing the execution command line and global variables required by the FS
- FsBuilder
Derived from Builder; spawns threads to do the event processing and heartbeats; has a CallContainer to track current active calls
- FsProvisioning
Called to retrieve system data, subscriber list, and CPL features from the Vocal Provisioning server
- FsFeature
Points to the Start state of a state machine that was generated by parsing a CPL script
- FsUserData
Stores information about a feature subscriber (incl/ FsFeature)
- FsUsers
A map holding 0 or more FsUserDatas; this is a key data structure for the FS to look up its subscribers
- CPLUrlData
Instantiated during runtime if it needs to track possible locations to proxy the call; also known as the locations set
- FsStateMachnData
Created for each call and stored in CallInfo; stores any information required for the duration of the call (for example, data pertaining to a feature or the state of a proxying)
CPL Conversion Files
The fs/cpl
directory contains the following files necessary to convert a CPL script into a C++ state machine:
- CPLFeatureBuilder
Used by applications to interface to CPL. This calls CPLParser, CPLValidator, and CPLInterpreter.
- CPLParser ...
Get Practical VoIP Using VOCAL now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.