[Freeswitch-users] mod_skypopen, new HOWTO

DP . hi-tecc at hotmail.com
Fri Aug 22 02:41:22 MSD 2014


Thank you sir, will give this a shot!

From: gmaruzz at gmail.com
Date: Thu, 21 Aug 2014 23:58:03 +0200
To: freeswitch-users at lists.freeswitch.org
Subject: [Freeswitch-users] mod_skypopen, new HOWTO

Many users have discovered with dismay they can no more operate the old Skype client used by mod_skypopen.



Starting first week of August 2014, Microsoft stopped operating the 
authorization 
servers for Linux Skype clients prior to version 4.3.37.


Skype 4.3.37 is the only Skype client version that works. 
Those new Linux Skype clients require Pulseaudio.


New Skype clients and Portaudio use much more CPU on your machine.

With new Skype client, MAX 6 INSTANCES OF THE SAME SKYPEUSERNAME (see below)
Follow this page and use the automatic installer, you will be all 
set.
Please read it all.
 
===========================================================================
SHORT BLUEPRINT: STEPS NEEDED TO USE SKYPOPEN 


 Compile and install FreeSWITCH
 Compile and install mod_skypopen
 Install (on Linux) Xvfb and Pulseaudio
 Configure Pulseaudio for low cpu usage
 Download and install Skype client (on Linux, this is done by the INTERACTIVE INSTALLER)
 Configure Skype client (on Linux, this is done by the INTERACTIVE INSTALLER)
 Install and edit mod_skypopen config file (on Linux, this is done by the INTERACTIVE INSTALLER)
 Create a script to start the Skype clients with needed parameters (on Linux, this is done by the INTERACTIVE INSTALLER)
 Start Skype clients using the script
 Start FreeSWITCH
 Load mod_skypopen in FreeSWITCH
 Profit!

NEW Interactive INSTALLER for LINUX: using the provided 
script, you'll end up with a complete and configured, ready for calls, 
installation of Skypopen on FreeSWITCH!!! (see below)



Which Skype Client to use on Linux
Use the dynamic build of the stable Skype client (4.3.37), is the only one that works 

(the interactive installer automatically download and install the correct Skype client, see below).

Don't use the package for your distro


  Supported Platforms and Distros
Skypopen runs well on Linux and Windows. Does not work on Mac OSX.

Most used Linux distro are:


 Debian 7 64 bit server (wheezy)
 CentOS 6.5.x 64 bit server(RHEL6)
 Ubuntu SERVER LTS 64 bit (Trusty - 14.04) 
Linux 
  Which packages are required to build mod_skypopen on Linux 
You will need the libraries needed by Skype client and by the fake X server.

REALLY, you need all the packages below!

You can cut and paste the follow:


  Debian 7.x required packages 
In addition to the packages required to build and run FreeSWITCH, you will need the following:


 # Dependencies for building mod_skypopen:
 apt-get install \
 libx11-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev \
 x11proto-core-dev x11proto-input-dev x11proto-kb-dev xtrans-dev

 # Infrastructure needed to run skype client:
 apt-get install \
 xvfb pulseaudio

 # Dependencies of skype client:
 # Enable i386 libraries installing
 dpkg --add-architecture i386 
 apt-get update
 # Install libraries
 apt-get install \
 fontconfig fontconfig-config gcc-4.7-base:i386 libasound2:i386 \
 libasound2-plugins:i386 libasyncns0:i386 libattr1:i386 libaudio2:i386 \
 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 \
 libavcodec53:i386 libavutil51:i386 libc6:i386 libc6-i686:i386 libcap2:i386 \
 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386 libdirac-encoder0:i386 \
 libexpat1:i386 libffi5:i386 libflac8:i386 libfontconfig1 libfontconfig1:i386 \
 libfreetype6:i386 libgcc1:i386 libgcrypt11:i386 libglib2.0-0:i386 \
 libgnutls26:i386 libgpg-error0:i386 libgsm1:i386 libgssapi-krb5-2:i386 \
 libgstreamer-plugins-base0.10-0:i386 libgstreamer0.10-0:i386 libice6:i386 \
 libjack-jackd2-0:i386 libjbig0:i386 libjpeg8:i386 libjson0:i386 \
 libk5crypto3:i386 libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 \
 liblcms1:i386 liblzma5:i386 libmng1:i386 libmp3lame0:i386 libogg0:i386 \
 libopenjpeg2:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpcre3:i386 \
 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386 libqt4-network:i386 \
 libqt4-xml libqt4-xml:i386 libqtcore4 libqtcore4:i386 libqtdbus4 \
 libqtdbus4:i386 libqtgui4:i386 libqtwebkit4:i386 libsamplerate0:i386 \
 libschroedinger-1.0-0:i386 libselinux1:i386 libsm6:i386 libsndfile1:i386 \
 libspeex1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386 \
 libstdc++6:i386 libtasn1-3:i386 libtheora0:i386 libtiff4:i386 libuuid1:i386 \
 libva1:i386 libvorbis0a:i386 libvorbisenc2:i386 libvpx1:i386 libwrap0:i386 \
 libx11-6:i386 libx11-xcb1:i386 libx264-123:i386 libxau6:i386 libxcb1:i386 \
 libxdmcp6:i386 libxext6:i386 libxi6:i386 libxml2:i386 libxrender1:i386 \
 libxss1:i386 libxt6:i386 libxtst6:i386 libxv1:i386 libxvidcore4:i386 qdbus \
 ttf-dejavu-core uuid-runtime zlib1g:i386





  Ubuntu 14.04.x required packages 
In addition to the packages required to build and run FreeSWITCH, you will need the following:


 # Dependencies for building mod_skypopen:
 apt-get install \
 libx11-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev \
 x11proto-core-dev x11proto-input-dev x11proto-kb-dev xtrans-dev

 # Infrastructure needed to run skype client:
 apt-get install \
 xvfb pulseaudio

 # Dependencies of skype client:
 apt-get install \
 fontconfig fontconfig-config gcc-4.7-base:i386 libasound2:i386 \
 libasound2-plugins:i386 libasyncns0:i386 libattr1:i386 libaudio2:i386 \
 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 \
 libavcodec53:i386 libavutil51:i386 libc6:i386 libc6-i686:i386 libcap2:i386 \
 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386 libdirac-encoder0:i386 \
 libexpat1:i386 libffi5:i386 libflac8:i386 libfontconfig1 libfontconfig1:i386 \
 libfreetype6:i386 libgcc1:i386 libgcrypt11:i386 libglib2.0-0:i386 \
 libgnutls26:i386 libgpg-error0:i386 libgsm1:i386 libgssapi-krb5-2:i386 \
 libgstreamer-plugins-base0.10-0:i386 libgstreamer0.10-0:i386 libice6:i386 \
 libjack-jackd2-0:i386 libjbig0:i386 libjpeg8:i386 libjson0:i386 \
 libk5crypto3:i386 libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 \
 liblcms1:i386 liblzma5:i386 libmng1:i386 libmp3lame0:i386 libogg0:i386 \
 libopenjpeg2:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpcre3:i386 \
 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386 libqt4-network:i386 \
 libqt4-xml libqt4-xml:i386 libqtcore4 libqtcore4:i386 libqtdbus4 \
 libqtdbus4:i386 libqtgui4:i386 libqtwebkit4:i386 libsamplerate0:i386 \
 libschroedinger-1.0-0:i386 libselinux1:i386 libsm6:i386 libsndfile1:i386 \
 libspeex1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386 \
 libstdc++6:i386 libtasn1-3:i386 libtheora0:i386 libtiff4:i386 libuuid1:i386 \
 libva1:i386 libvorbis0a:i386 libvorbisenc2:i386 libvpx1:i386 libwrap0:i386 \
 libx11-6:i386 libx11-xcb1:i386 libx264-123:i386 libxau6:i386 libxcb1:i386 \
 libxdmcp6:i386 libxext6:i386 libxi6:i386 libxml2:i386 libxrender1:i386 \
 libxss1:i386 libxt6:i386 libxtst6:i386 libxv1:i386 libxvidcore4:i386 qdbus \
 ttf-dejavu-core uuid-runtime zlib1g:i386





  CentOS 6.5.x required packages 
In addition to the packages required to build and run FreeSWITCH, you will need the following:


 # Dependencies for building mod_skypopen:
 yum install \
 libx11-devel

 # Infrastructure needed to run skype client:
 yum install \
 pulseaudio Xvfb xorg-x11-fonts* xz pulseaudio-utils

 # Dependencies of skype client:
 # Enable libraries repo
 yum localinstall http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
 # Install libraries
 yum install \
 qt-x11.i686 qtwebkit.i686 glibc.i686  libgcc.i686 libstdc++.i686 libXv.i686 \
 libX11.i686 libXext.i686 libXScrnSaver.i686 libcanberra-gtk2.i686 \
 gtk2-engines.i686 PackageKit-gtk-module.i686

  Build procedure (all Linuxes) for FS and mod_skypopen 
Note you must install the hd sounds and music packages, that 
includes both 8khz and 16khz (skype works at 16 khz native), eg: from 
FreeSWITCH source directory: "make hd-sounds-install && make 
hd-moh-install" 

After you finished to compile FreeSWITCH, in FreeSWITCH source directory edit modules.conf and uncomment the mod_skypopen line. Then, "make install" again from the FreeSWITCH root directory (this will compile and install just the mod_skypopen module).


make install #yes, again, this time will add mod_skypopen





  Pulseaudio Configuration 
  Debian 7 
Configuration files:


edit /etc/default/pulseaudio
PULSEAUDIO_SYSTEM_START=1

edit /etc/pulse/system.pa # delete or comment out all file contents, and add at the end:
load-module module-null-sink 
load-module module-native-protocol-unix

edit /etc/init.d/pulseaudio 
# delete --high-priority

edit /etc/pulse/daemon.conf 
# add at the end of the file:
daemonize = yes
system-instance = yes
resample-method = trivial
flat-volumes = yes
default-sample-rate = 48000
default-sample-channels = 1
default-fragment-size-msec = 20

Add the user running the Skype clients to pulse-access group


adduser root pulse-access

  Ubuntu 14.04 
Configuration files:


edit /etc/init/pulseaudio.conf 
# uncomment "start on ..."

edit /etc/pulse/system.pa # delete or comment out all file contents, and add at the end:
load-module module-null-sink 
load-module module-native-protocol-unix

edit /etc/init.d/pulseaudio 
# delete --high-priority

edit /etc/pulse/daemon.conf 
# add at the end of the file:
daemonize = yes
system-instance = yes
resample-method = trivial
flat-volumes = yes
default-sample-rate = 48000
default-sample-channels = 1
default-fragment-size-msec = 20

Add the user running the Skype clients to pulse-access group


adduser root pulse-access





  CentOS 6.5 
Configuration files:


edit /etc/init/pulseaudio.conf 
# uncomment "start on ..."

edit /etc/pulse/system.pa # delete or comment out all file contents, and add at the end:
load-module module-null-sink 
load-module module-native-protocol-unix

edit /etc/pulse/daemon.conf 
# add at the end of the file:
daemonize = yes
system-instance = yes
resample-method = trivial
flat-volumes = yes
default-sample-rate = 48000
default-sample-channels = 1
default-fragment-size-msec = 20

Add the user running the Skype clients to pulse-access group


usermod -G pulse-access -a root

Disable SELinux


edit /etc/sysconfig/selinux # disabled!

Start Pulseaudio, there is no /etc/init.d/pulseaudio, so you must start it "by hand" (eg: from /etc/rc.local):


/usr/bin/pulseaudio --system=true --daemonize=true --log-level=info --log-target=syslog

  Interactive Skype Client INSTALLER and CONFIGURATOR 
Go to the "install" subdir of mod_skypopen sources, then execute the "install.pl" script.


cd /usr/src/freeswitch/src/mod/endpoints/mod_skypopen/install
./install.pl

It will ask you questions and will let you review all the values you entered before to do any real action.

Then it will download and install (where you told it) the correct
 Skype client, and will create and install (where and how you told it) 
all the needed configurations and startup scripts.

You'll end up with a complete and configured installation of mod_skypopen for FreeSWITCH, ready for calls.

>From 0 to Skype calls in 30 seconds !!!


  Skype 4.3.37 is the only Skype client version that works 
Starting first week of August 2014, Microsoft stopped operating the 
authorization servers for Skype clients prior to version 4.3.37.
They require Pulseaudio.
Following this page and using the automatic installer you will be all 
set, no problem.


  How to start the Skype clients, then start FreeSWITCH and load mod_skypopen on Linux 
First you start the Skype clients with the script created by the 
interactive configurator, then you start FreeSWITCH, and load 
mod_skypopen in it.


sh /usr/local/freeswitch/skypopen/skype-clients-startup-dir/start_skype_clients.sh
/usr/local/freeswitch/bin/freeswitch
load mod_skypopen

Yay!


  Problems in starting skype clients ? 
Check you disabled both SELinux (on CentOS) or AppArmor (on Ubuntu)


Multiple concurrent incoming calls to the same Skype username 
Solutions based on "transfer" the call to another Skype username do not work anymore with new Skype client


  Running multiple instances (MAX 6) of the same Skype username on Linux, for BOTH incoming and outbound calls 


The new Skype client limits the concurrent instances of the same username to 6

MAX 6 INSTANCES PER SKYPENAME
(you can have many skypenames, each one with a max of 6 concurring 
instances, eg: myskypenameA is used by 6 concurrent skype clients, 
myskypenameB is used by 6 concurrent skype clients, myskypenameC is used
 by 6 concurrent skype clients, total 36 concurrent instances on your 
machine)

On Linux, you can run multiple instances of the same Skype 
username (eg: multiple Skype clients that register with the Skype 
networks as the same username, eg: 6 instances of the username "Bob"). 
On Windows, is not possible.

Please use the INTERACTIVE INSTALLER, it will setup all 
(download and install the correct Skype client, script to start the 
Skype clients, Skype client configs, skypopen.conf.xml config file).

The trick is to launch the client instances with separate 
Xservers (as always with multiple clients) AND separate directories for 
the Skype client's database (eg: by default it resides in the ".Skype" 
directory in the user's home).

You can find an example configuration file and launch scripts in configs/multiple-instance-same-skype-username/ directory.



Sincerely,

Giovanni Maruzzelli
Cell : +39-347-2665618



_________________________________________________________________________
Professional FreeSWITCH Consulting Services: 
consulting at freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com




FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20140821/a0107994/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list