This software is early alpha and has known Issues
Moreover, it is currently not being actively developed due to lack of time.
get the source:
git clone git://rc5.de/OnAirPhone.git
install some packages: (list may be incomplete)
First you have to call "make" so that all the python resource and ui files are built. In the git tree there is a subdir called "yate" which has a sample config "example.conf" and the yateconnector.tcl.
You may run the yateconnector.tcl on the machine where yate is running. The yateconnector should connect to the yate port 5039 which may be enabled in the yate configfile (extmodule.conf). If you have a connection to yate it should give you some output like this:
debian:~/OnAirPhone/yate$ ./yateconnector.tcl -c example.conf Yate OAP Server 0.1 * reading config - Service Name: Test Radio - Phone Lines: 6 - Handled Number: 111 "Local Call" - Handled Number: 628 "Studio Hotline" - Device: 100 OnAir Console - Device: 101 Studio 1 - Device: 102 Screener 1 - Device: 105 Test Client * ready
So the basic idea is:
[yate] ↔ [yateconnector.tcl] ↔ [com_server.py] ↔ [multiple instances of oapscreener.py on multiple PCs]
[listener tcp] ; For each socket listener there should be a section starting with the ; "listener" keyword ; type: keyword: Type of socket - "unix" or "tcp" type=tcp ; addr: string: IP address to bind the TCP socket to addr=127.0.0.1 ; port: int: TCP port to bind to, must be positive port=5039
yate regexroute.conf config snippet to setup the 'incoming' "Handled Numbers" in yate:
[default] ; studio internal ^628$=park/any ; studio hotline ^111$=park/any ; dialout to fritzbox for every number starting with a 0 ^0\(.*\)$=sip/0\1;line=fritzbox628;caller=628
modules.list (minimum of needed modules) (maybe incomplete)
extmodule.yate msgsniff.yate tonedetect.yate rmanager.yate pbxassist.yate sipfeatures.yate register.yate regfile.yate park.yate users.yate lateroute.yate regexroute.yate callgen.yate moh.yate callfork.yate pbx.yate tonegen.yate ysipchan.yate
; some extensions  password=secret123  password=secret123  password=secret123  password=secret123