Python Based VoIP GUI Calling App
PyPhone is a fully Open Sourced Python Based GUI VoIP Calling App which enables Calling over the Internet Free of cost. PyPhone currently uses ngrok for port forwarding enabling call from anywhere around the world, with minor changes can be used as an off-grid Calling Service within LAN. It uses PyQt5 for its GUI.
- Multi-User call.
- Contact Directory.
- Advance Hold Feature.
Since, PyPhone uses ngrok, it is required to make an account in ngrok. PyPhone does NOT come with ngrok. Download ngrok
- requests
- pyaudio
- mysql-connector-python
- PyQt5
- playsound
- json
- Make a file named "ngrok.yml" in the same level as of PyPhone.py and add the following line:
authtoken: <YOUR_NGROK_AUTHTOKEN>
- "config.cnf" contains the phone number of the user.
- Download ngrok and paste its executable in the "modules" folder.
Also, PyPhone uses MySQL database for storing the phone numbers and requires additional setup.(This step will not be required once PyPhone's MySQL DB is setup)
The MySQL requires the following setup:
pyphone(Database)------> data(Table) ------------> [Phoneno varchar(12) ------------------ Port varchar(6)]
CREATE DATABASE pyphone;
CREATE TABLE data(Phoneno VARCHAR(12), Port VARCHAR(6));
INSERT INTO data values("<PHONE_NUMBER_AFTER_REG>","<PORTNUMBER*>");
*PORTNUMBER will be automatically filled by the PyPhone.