Walter Sonius - 2018-08-12

RasPBX 18-04-04 only steps, probably still more packages than needed but it works all steps may require less than an hour on Pi3:

raspi-config #enlarge boot partition 7>A1 & reboot

raspbx-upgrade #will update asterisk to 13.22.0
#press 'y' and 'q' when asked
#don't forget to update FreePBX modules from the webinterface aswell!
#Admin>Module Admin> "Check Online / Upgrade all / Process / Confirm" or
#fwconsole ma upgradeall

apt-get install bison flex php5 php5-curl php5-cli php5-mysql php-pear php5-gd curl sox libncurses5-dev libssl-dev libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev automake libtool autoconf git unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libicu-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev libmyodbc libtool-bin python-dev dirmngr libopus-dev libopusfile-dev build-essential autoconf libssl-dev libncurses-dev libnewt-dev libxml2-dev libsqlite3-dev uuid-dev libjansson-dev libblocksruntime-dev xmlstarlet

cd /usr/src
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13.22.0.tar.gz
tar xvfz asterisk-13.22.0.tar.gz
rm -f asterisk-13.22.0.tar.gz
cd asterisk-13.22.0
contrib/scripts/get_mp3_source.sh
contrib/scripts/install_prereq install #pkgconfig conflict
#phone countrycode austrialia 61 > nl 31 > your country?

wget github.com/traud/asterisk-opus/archive/asterisk-13.7.tar.gz
tar zxf asterisk-13.7.tar.gz
rm asterisk-13.7.tar.gz
cp --verbose asterisk-opus*/include/asterisk/* include/asterisk
cp --verbose asterisk-opus*/codecs/* codecs
cp --verbose asterisk-opus*/res/* res

./configure --with-pjproject-bundled

make menuselect #enable / Add-ons > format_mp3 / Codec Translators > --Unspecified-- codec_opus_open_source 
make -j4 #On pi3 takes about 20 Minutes

md5sum codecs/codec_opus_open_source.so 30de7a431a273ff66d4b71d0542132fb
cp codecs/codec_opus_open_source.so /usr/lib/asterisk/modules/

#FreePBXwebinterface
Settings> Asterisk IAX/SIP settings > "Codec Settings/Codecs" 
Checkbox opus

#ssh / console
fwconsole restart

asterisk -r # check output of following commands
core show codecs
core show translation
module show like opus
module show like codec_resample

Now its time to setup a conference room with some music on hold and two extensions each using a other codec. Only tested sip protocol.

PS:Also previous Debian 8 Jessie based version of RasPBX with FreePBX 13.0.195.4 / asterisk 13.17.1 works with these steps. However it requires its own Asterisk version specific opus module. See attachments:

md5sum codecs/codec_opus_open_source.so 1c43a27ac3ff86b2514c4b471524d64f
 

Last edit: Walter Sonius 2018-08-24