A python 3 compatible softphone built on the pjproject fork by malarinv, branch:py37.
To use the streaming capability, use an Audio Callback class that suits your needs.
See AudioCallbacks.py
for examples.
For installation instructions, click here.
- Fix the slight audio lag/delay when using Audio Callbacks for relaying audio between systems.
- Check if adjusting pj thread value helps on the lag like here. Helped a little bit..? Not sure, can be a coincidence.
- Clean up the code.
- Write documentation for all functions.
- Add proper logging.
- Add DTMF support.
- Add call transfer support.
- Fix and test incoming calls.
- Do not force registration of both incoming and outgoing accounts. Make it optional.
- Fix better error handling.
- Fix error when phone hangs up before softphone does.
- Fix error when phone is not answered and we reach voicemail. Softphone becomes unresponsive.
- Create a Pypi package to install via
pip install softphone
. - Add support for multiple simultaneous calls.
You can look for functionality from other projects and create a PR to get it added to this project.
Examples:
- soft_phone - Huge credits to g-farrow. Used some code from his project.
- Payphone
- Openphone
- SIPCallRecordVerify
- alex