- Changed AccountConfig::toPj() signature, because a pjsua_acc_config instance should not be copied/assigned to another pjsua_acc_config instance as it contains list.
- Fixed assertion in Endpoint destructor caused by access to pjlib mutex after pjlib is destroyed.
- Changed VS2005 sample_debug project to allow debugging C++ code such as pjsua2_demo.cpp.
- Compile warnings on VS2005.
- Fixed SWIG python unit test.
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4692 74dad513-b988-da41-8d7b-12977e46ad98
- Changed participant managements in Chat, e.g: changed Buddy based to URI based, create temporary Buddy for incoming call/IM from non-buddy.
- Implemented simple media features in chat window (mute, volume, codec info).
- Misc: added window menu listing chat windows, changed behaviour on closing chat window, etc.
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4686 74dad513-b988-da41-8d7b-12977e46ad98
- added new files (call & media) to VS2005 project
- fixed compile warnings
- fixed compile error when video is disabled
- fixed Makefile when JAVA_HOME env var is set
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4670 74dad513-b988-da41-8d7b-12977e46ad98
Initial implementation, some account functionality has been implemented. Details:
- Uses Tk for GUI and pickle for object serialization. These are Python built-in modules
- So far so good, everything (=Account API only so far!) seems to work, including:
- STL string
- STL vector
- inheritance
- calling callback that is implemented in Python with inheritance (the "director" feature")
- Some notes though:
- SIP worker threads need to be disabled because Tk GUI cannot be called from other threads (the worker thread will invoke callback which in turn will update GUI)
- Features implemented in the GUI so far:
- Account addition/deletion/modification
- Registration
- Logging to window
- Persistent config (limited)
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4640 74dad513-b988-da41-8d7b-12977e46ad98
- Major changes in SWIG interface file (pjsua2.i).
- The "ignore" and "unignore" approach caused link error with vector (duplicate symbols because SWIG generates two identical vector functions in the wrapper) so it cannot be used (tried with many combinations and still doesn't work).
- So scrap that, and now we use "importing" approach, where needed symbols must be listed in symbols.lst file, then use importsym.py to import the symbol declarations to symbols.i. Then include symbols.i in pjsua.i
- Due to the way importsym.py work, some macros and naked constants need to be placed into a named enumeration, for example:
- #define PJ_SUCCESS 0 ==> enum pj_constants_ { PJ_SUCCESS=0 }; [types.h]
- enum { PJMEDIA_VID_DEFAULT_CAPTURE_DEV = -1 } ==> enum pjmedia_vid_dev_std_index { PJMEDIA_VID_DEFAULT_CAPTURE_DEV = -1 }; [videodev.h]
- Makefile was changed so that symbols.i would be generated if symbols.lst has changed
- Added "make install" and "make uninstall" targets for swig. Only implemented on Python. This will install to user's lib dir so doesn't need sudo.
- Deleted approachX.hpp files
- Added libVersion() method to Endpoint along with Version struct.
- Fix pjsua2.i to make exception (or redirection?) works in Python
- Add polling and worker thread related API:
- PJSUA-LIB: pjsua_register_worker_thread(), pjsua_stop_worker_threads()
- Endpoint: libRegisterWorkerThread(), libStopWorkerThreads(), libHandleEvents();
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4639 74dad513-b988-da41-8d7b-12977e46ad98
- With small demo app (samples/pjsua2_demo.cpp)
- Endpoint changed to use inheritance approach too
- Simple account registration demo and callback works
- Further tests will be done in high level app (Python GUI?)
- Temporary build setting fixes (Makefile) to allow linking with pjsua2 and libstdc++
- Temporary hacks in Makefile to ignore other build targets to speed up build. This should be fixed during integration.
Issues:
- incomplete Endpoint::on_incoming_subscribe() implementation. There is no Account::presNotify() yet.
- incomplete Endpoint::on_pager2(), on_pager_status2(), to handle call's pager rather than account's pager
- some SWIGTYPE (unknown type by Swig) still unresolved
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4638 74dad513-b988-da41-8d7b-12977e46ad98
- account API implementation (incomplete, callback is still not called)
- using callback class design pattern (observer?)
- after this, it might be changed to use inheritance pattern instead
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4631 74dad513-b988-da41-8d7b-12977e46ad98