# fetapi - FeTAp with a Raspberry Pi ``` ,ooFeTApFeTApFeTA%=+-,. ,+FeTAp+' `o,, ,oFeTAp+ `, ,ooo' ,oFeTApFeTAp o oo +FeTAp+' `oo, H o o' X o l ,@=@+ o ,,-+*==+-., R o .; ,@=@+ o o' ,/ 22 11 ``, E`ooooo' @@* @@ oo o' / 33 , ` ` , ; T @:n T:@ oo o ; 44 , . \ L uM:m A:K oFeTAp' ;55 , : ; A E:Rn N:t F, | ` : ; | H SC:h K:o e, ` 66 ` , dHHH C A:Ll L:s r, ` 77 `. , . 0 `q/ S ER:a P:U n, \ 88 99 00 ,' L R:Be i:M s `<,,______,-` sZ, E i:T E:r p, `sZ B S:K l:T r, A o:N H:a e, G t:a s:c c, ,x+x+' k:T:@:U:M:R:n; h, ,p+e+r+a+t/ `@:n:M:E:' `T=i=s=c=h=A=p/ ``` ## Installation Some of the following instructions must be executed with `root` privileges. ### Installing `fetapd` 1. Clone this repository (together with `pylinphone` as sub-module) ``` cd /opt git clone https://git.blinkenbunt.org/LUG-Saar/fetapi.git git submodule update ``` 2. Configure and enable `fetapd` as `systemd` service ``` ln -sr fetapd.service /etc/systemd/system/ systemctl daemon-reload systemctl enable fetapd ``` ### Installing `linphone-cli` on Raspbian 1. Install `debootstrap` ``` apt install debootstrap ``` 2. Create a *Debian/sid* chroot environment ``` cd /var/tmp mkdir debian-sid debootstrap --arch=armel --foreign --variant=minbase sid ./debian-sid http://ftp.de.debian.org/debian chroot debian-sid/ /debootstrap/debootstrap --second-stage ``` Note: Without `--variant=minbase`, sound won't work for some strange, unknown reason. 3. Install `linphone-cli` inside the chroot environment ``` chroot debian-sid/ apt -y install linphone-cli ``` 4. Create user inside the chroot environment ``` chroot /var/tmp/debian-sid adduser --disabled-password pi ``` 5. Bind-mount `/dev` to make ALSA accessible within the chroot ``` cat <>/etc/fstab /dev /var/tmp/debian-sid/dev none bind 0 0 EOF mount -a ``` 6. Copy *Linphone* configuration file ``` cp linphone.conf /var/tmp/debian-sid/home/pi/ ``` 7. Configure and enable `linphone-daemon` as `systemd` service ``` ln -sr linphone-daemon.service /etc/systemd/system systemctl daemon-reload systemctl enable linphone-daemon ``` ## Configuring `fetapd` :warning: TODO ### Identifying soundcard ``` # chroot /var/tmp/debian-sid /usr/bin/linphonec ... linphonec> soundcard list 0: ALSA: default 1: ALSA: bcm2835 Headphones 2: ALSA: C-Media USB Headphone Set ``` ## Starting `fetapd` ``` systemctl start fetapd ``` (or simply reboot your *FeTAp*)