Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ecelis/sck
Command Line SIP phone based on pjsip
https://github.com/ecelis/sck
python showcase sip voip
Last synced: 17 days ago
JSON representation
Command Line SIP phone based on pjsip
- Host: GitHub
- URL: https://github.com/ecelis/sck
- Owner: ecelis
- License: gpl-3.0
- Created: 2014-06-03T06:36:59.000Z (over 10 years ago)
- Default Branch: main
- Last Pushed: 2023-08-12T20:51:34.000Z (over 1 year ago)
- Last Synced: 2023-08-12T21:58:02.214Z (over 1 year ago)
- Topics: python, showcase, sip, voip
- Language: Python
- Homepage:
- Size: 85.3 MB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: COPYING
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Simple Communications Kit
Is a command line SIP client written in Python.
Built on top of [PJSIP](https://www.pjsip.org/) library, SCK was designed to
enable VoIP for a system of _panic buttons_ deployed across
town. Valk Technologies was the first sponsor of this project, as the company required a
command line SIP client to run in Linux
systems for PC and embedded SoCs (Cubieboard 2 and Cubietruck).Copyright 2013 - 2023 Ernesto Celis, this software is released under the
terms of the GNU Public License version 3SCK relies on third party software libraries which may be released
under different license terms, read the COPYNG file to get more info.## Features
* Auto-answer
* Fixed set of extension numbers to dial
* One key press speed dial
* Logs to system's log
* Command line only
* Plain text config file## Install
The only thing that needs to be installed is the pjsua python module, as
it is not available as a binary package in none of the two GNU/Linux
distributions I'm working on, I've included a copy of pjproject
version 2.4.5### Dependencies
Audio dependencies
* alsa
* opensslVideo dependencies (optional if you don't need video support)
* v4l2
* SDL (version 2)
* libyub (optional when using ffmpeg)
* OpenH264 (optional when using ffmpeg)
* FFMpeg
* libx264
* libz### Ubuntu 22.04 LTS
#### Dependencies
```bash
sudo apt update
sudo apt install build-essential python3-dev python3-venv swig \
libssl3 libssl-dev ffmpeg libv4l-dev libv4l-0 \
alsa-base alsa-oss libyuv0 libyuv-dev libsdl2-2.0-0 libsdl2-dev \
libx264-163 libx264-dev
```#### Build
```bash
./build.sh
```
### Manual buildAudio only (no video support)
cd third_party/pjproject-2.4.5
./configure --disable-video --disable-ffmpeg --disable-v4l2
CFLAGS="-fPIC" CXXFLAGS="-fPIC" make dep
CFLAGS="-fPIC" CXXFLAGS="-fPIC" make
cd pjsip-apps/src/python
python setup.py installWith video support
cd third_party/pjproject-2.4.5
./configure
CFLAGS="-fPIC" CXXFLAGS="-fPIC" make dep
CFLAGS="-fPIC" CXXFLAGS="-fPIC" make
cd pjsip-apps/src/python python setup.py install### Configure
Copy the file `sck/ve-phone/config.ini.orig` either to `~/config.ini` or
`~/settings/config.ini` or `sck/ve-phone/config.ini`Edit the file filling in your PBX username and password, speed dial
extension numbers and audio settings for your sound card if needed### Run
cd sck/ve-phone
python vephone.py