PJSettings extends PJSIP persistent document interfaces to support non-serial read from xml and json
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
tests
.gitignore
.travis.yml
CMakeLists.txt
COPYING
appveyor.yml
json-forwards.h
json.h
jsoncpp.cpp
pjsettings-contrib.sublime-project
pjsettings-jsoncpp.cpp
pjsettings-jsoncpp.h
pjsettings-jsoncpp.md
pjsettings-pugixml.cpp
pjsettings-pugixml.h
pjsettings-pugixml.md
pugiconfig.hpp
pugixml.cpp
pugixml.hpp
readme-jsoncpp.md
readme-pugixml.txt
readme.md

readme.md

PJSettings

Platform Linux Windows
Build status Build Status Build status

PJSettings is a small library that extends a PJSIP persistent document interfaces to support:

Inspite PJSUA2 already has implementation for read/write json documents, PJSUA2 pj::JsonDocument is read and written serially, hence the order of reading must be the same as the order of writing.

This library provides classes capable reading of documents in non-serial way.

For example, you can read pj::LogConfig object from this json document in usual serial way:

{
    "LogConfig": {
        "msgLogging": 1,
        "level": 5,
        "consoleLevel": 4,
        "decor": 25328,
        "filename": "pjsip.log",
        "fileFlags": 0
    }
}

or you can have just small part of fields, and can reorder them on your own:

{
    "LogConfig": {
        "filename": "pjsip.log",
        "level": 5,
        "consoleLevel": 4
    }
}

Same xml document will look as

<?xml version="1.0"?>
<root>
    <LogConfig filename="pjsip.log"
               level="5"
               consolelevel="4" />
</root>

For more details, please read

Third-party libraries

This library use great libraries to work well (in alphabetical order):

License

PJSettings library is distributed under MIT license

Copyright (C) 2014, by halex2005
Report bugs and download new versions at https://github.com/halex2005/pjsettings

Note that PJSettings library is built on to of PJSUA2 subset of PJSIP library. Please, look at PJSIP license options if you would use PJSettings library.

PayPal donate button Gratipay donate button