提交 99e55ae0 authored 作者: Michael Jerris's avatar Michael Jerris

mod_skypiax rename to mod_skypopen

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16988 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 3c2e8b34
......@@ -603,7 +603,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_ru", "src\mod\say\m
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypiax", "src\mod\endpoints\mod_skypiax\mod_skypiax.2008.vcproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypopen", "src\mod\endpoints\mod_skypopen\mod_skypopen.2008.vcproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"
ProjectSection(ProjectDependencies) = postProject
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
......
......@@ -956,7 +956,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skel", "src\mod\applica
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypiax", "src\mod\endpoints\mod_skypiax\mod_skypiax.2008.vcproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypopen", "src\mod\endpoints\mod_skypopen\mod_skypopen.2008.vcproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"
ProjectSection(ProjectDependencies) = postProject
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
......
......@@ -865,7 +865,7 @@ AC_CONFIG_FILES([Makefile
src/mod/applications/mod_t38gateway/Makefile
src/mod/endpoints/mod_portaudio/Makefile
src/mod/endpoints/mod_skinny/Makefile
src/mod/endpoints/mod_skypiax/Makefile
src/mod/endpoints/mod_skypopen/Makefile
src/mod/endpoints/mod_sofia/Makefile
src/mod/formats/mod_portaudio_stream/Makefile
src/mod/asr_tts/mod_unimrcp/Makefile
......
include $(top_srcdir)/build/modmake.rulesam
MODNAME=mod_skypiax
mod_LTLIBRARIES = mod_skypiax.la
mod_skypiax_la_SOURCES = mod_skypiax.c skypiax_protocol.c
mod_skypiax_la_CFLAGS = $(AM_CFLAGS) -DSKYPIAX_SVN_VERSION=\"`cat $(switch_builddir)/.version`\" -I../../../../libs/spandsp/src -I../../../..//libs/tiff-3.8.2/libtiff
mod_skypiax_la_LIBADD = $(switch_builddir)/libfreeswitch.la
mod_skypiax_la_LDFLAGS = -L../../../../libs/spandsp/src -avoid-version -module -no-undefined -shared -lX11 -lspandsp
../skypiax_protocol.c
\ No newline at end of file
cp -a skypiax101/* skypiax102/
cp -a skypiax101/* skypiax103/
cp -a skypiax101/* skypiax104/
cp -a skypiax101/* skypiax105/
cp -a skypiax101/* skypiax106/
cp -a skypiax101/* skypiax107/
cp -a skypiax101/* skypiax108/
cp -a skypiax101/* skypiax109/
cp -a skypiax101/* skypiax110/
cp -a skypiax101/* skypiax111/
cp -a skypiax101/* skypiax112/
cp -a skypiax101/* skypiax113/
cp -a skypiax101/* skypiax114/
cp -a skypiax101/* skypiax115/
cp -a skypiax101/* skypiax116/
cp -a skypiax101/* skypiax117/
cp -a skypiax101/* skypiax118/
cp -a skypiax101/* skypiax119/
cp -a skypiax101/* skypiax120/
cp -a skypiax101/* skypiax121/
cp -a skypiax101/* skypiax122/
cp -a skypiax101/* skypiax123/
cp -a skypiax101/* skypiax124/
cp -a skypiax101/* skypiax125/
cp -a skypiax101/* skypiax126/
cp -a skypiax101/* skypiax127/
cp -a skypiax101/* skypiax128/
cp -a skypiax101/* skypiax129/
cp -a skypiax101/* skypiax130/
cp -a skypiax101/* skypiax131/
cp -a skypiax101/* skypiax132/
cp -a skypiax101/* skypiax133/
cp -a skypiax101/* skypiax134/
cp -a skypiax101/* skypiax135/
cp -a skypiax101/* skypiax136/
cp -a skypiax101/* skypiax137/
cp -a skypiax101/* skypiax138/
cp -a skypiax101/* skypiax139/
cp -a skypiax101/* skypiax140/
mkdir skypiax101
mkdir skypiax102
mkdir skypiax103
mkdir skypiax104
mkdir skypiax105
mkdir skypiax106
mkdir skypiax107
mkdir skypiax108
mkdir skypiax109
mkdir skypiax110
mkdir skypiax111
mkdir skypiax112
mkdir skypiax113
mkdir skypiax114
mkdir skypiax115
mkdir skypiax116
mkdir skypiax117
mkdir skypiax118
mkdir skypiax119
mkdir skypiax120
mkdir skypiax121
mkdir skypiax122
mkdir skypiax123
mkdir skypiax124
mkdir skypiax125
mkdir skypiax126
mkdir skypiax127
mkdir skypiax128
mkdir skypiax129
mkdir skypiax130
mkdir skypiax131
mkdir skypiax132
mkdir skypiax133
mkdir skypiax134
mkdir skypiax135
mkdir skypiax136
mkdir skypiax137
mkdir skypiax138
mkdir skypiax139
mkdir skypiax140
# execute both of the files, they give you 10 interfaces each (look for the "exit 0" line)
# then use the skypiax.conf here to manage the 20 interfaces
sh ./multi.sh
sh ./multi2.sh
# remember to add here the removing of all the installed snd-* modules, so you're sure only the snd-dummy driver will be around
rmmod snd_hda_intel
rmmod snd-dummy
# if you DO NOT USE the custom ALSA device we provide, you need three "standard" dummy soundcard for 20 Skype client instances, because each "standard" dummy soundcard can handle a max of 8 Skype instances
# the enable= module parameter tells how many cards to start. For each additional card, add a comma and a 1
# manually configure the first 8 Skype client instances to use the hw:Dummy_0, the next 8 instances to use hw:Dummy_1, etc for all three devices (Play, Capture, Ring)
modprobe snd-dummy # enable=1,1,1
sleep 3
#start the fake X server on a given port
/usr/bin/Xvfb :101 -ac &
sleep 3
# start a Skype client instance that will connect to the X server above, and will login to the Skype network using the 'username password' you send to it on stdin. Here xxxx would be the password and skypiax1 the username
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:101 /usr/bin/skype --dbpath=/root/multi/skypiax101 --pipelogin &"
sleep 7
/usr/bin/Xvfb :102 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:102 /usr/bin/skype --dbpath=/root/multi/skypiax102 --pipelogin &"
sleep 7
#################################################################
# Following X server Skype client instances are commented out
#################################################################
/usr/bin/Xvfb :103 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:103 /usr/bin/skype --dbpath=/root/multi/skypiax103 --pipelogin &"
sleep 7
/usr/bin/Xvfb :104 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:104 /usr/bin/skype --dbpath=/root/multi/skypiax104 --pipelogin &"
sleep 7
/usr/bin/Xvfb :105 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:105 /usr/bin/skype --dbpath=/root/multi/skypiax105 --pipelogin &"
sleep 7
/usr/bin/Xvfb :106 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:106 /usr/bin/skype --dbpath=/root/multi/skypiax106 --pipelogin &"
sleep 7
/usr/bin/Xvfb :107 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:107 /usr/bin/skype --dbpath=/root/multi/skypiax107 --pipelogin &"
sleep 7
/usr/bin/Xvfb :108 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:108 /usr/bin/skype --dbpath=/root/multi/skypiax108 --pipelogin &"
sleep 7
/usr/bin/Xvfb :109 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:109 /usr/bin/skype --dbpath=/root/multi/skypiax109 --pipelogin &"
sleep 7
/usr/bin/Xvfb :110 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:110 /usr/bin/skype --dbpath=/root/multi/skypiax110 --pipelogin &"
sleep 7
exit 0
/usr/bin/Xvfb :111 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:111 /usr/bin/skype --dbpath=/root/multi/skypiax111 --pipelogin &"
sleep 7
/usr/bin/Xvfb :112 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:112 /usr/bin/skype --dbpath=/root/multi/skypiax112 --pipelogin &"
sleep 7
/usr/bin/Xvfb :113 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:113 /usr/bin/skype --dbpath=/root/multi/skypiax113 --pipelogin &"
sleep 7
/usr/bin/Xvfb :114 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:114 /usr/bin/skype --dbpath=/root/multi/skypiax114 --pipelogin &"
sleep 7
/usr/bin/Xvfb :115 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:115 /usr/bin/skype --dbpath=/root/multi/skypiax115 --pipelogin &"
sleep 7
/usr/bin/Xvfb :116 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:116 /usr/bin/skype --dbpath=/root/multi/skypiax116 --pipelogin &"
sleep 7
/usr/bin/Xvfb :117 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:117 /usr/bin/skype --dbpath=/root/multi/skypiax117 --pipelogin &"
sleep 7
/usr/bin/Xvfb :118 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:118 /usr/bin/skype --dbpath=/root/multi/skypiax118 --pipelogin &"
sleep 7
/usr/bin/Xvfb :119 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:119 /usr/bin/skype --dbpath=/root/multi/skypiax119 --pipelogin &"
sleep 7
/usr/bin/Xvfb :120 -ac &
sleep 3
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:120 /usr/bin/skype --dbpath=/root/multi/skypiax120 --pipelogin &"
sleep 7
echo off
REM
REM you MUST use the new Skype BETA (4.x) for Windows, older versions (3.x) cannot be started this way
REM
REM you have to adjust PATH to where the Skype executable is
set PATH=%PATH%;C:\Program Files\Skype\Phone\
REM echo %PATH%
REM start a Skype client instance that will login to the Skype network using the "username password" you give to it.
REM Here xxxx would be the password and skypiax1 the username
start Skype.exe /secondary /username:skypiax20 /password:xxxx
call C:\wait.cmd 20
start Skype.exe /secondary /username:skypiax19 /password:xxxx
call C:\wait.cmd 5
REM
REM Following Skype client instances are commented out
REM
start Skype.exe /secondary /username:skypiax18 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax17 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax16 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax15 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax14 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax13 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax12 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax11 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax10 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax9 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax8 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax7 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax6 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax5 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax4 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax3 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax2 /password:xxxx
call C:\wait.cmd 5
start Skype.exe /secondary /username:skypiax1 /password:xxxx
call C:\wait.cmd 120
NET start AICCU2
pause
......@@ -2,9 +2,9 @@
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="mod_skypiax"
Name="mod_skypopen"
ProjectGUID="{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"
RootNamespace="mod_skypiax"
RootNamespace="mod_skypopen"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
......@@ -149,15 +149,15 @@
</References>
<Files>
<File
RelativePath="..\mod_skypiax\mod_skypiax.c"
RelativePath=".\mod_skypopen.c"
>
</File>
<File
RelativePath=".\skypiax.h"
RelativePath=".\skypopen.h"
>
</File>
<File
RelativePath=".\skypiax_protocol.c"
RelativePath=".\skypopen_protocol.c"
>
</File>
</Files>
......
include $(top_srcdir)/build/modmake.rulesam
MODNAME=mod_skypopen
mod_LTLIBRARIES = mod_skypopen.la
mod_skypopen_la_SOURCES = mod_skypopen.c skypopen_protocol.c
mod_skypopen_la_CFLAGS = $(AM_CFLAGS) -DSKYPOPEN_SVN_VERSION=\"`cat $(switch_builddir)/.version`\" -I../../../../libs/spandsp/src -I../../../..//libs/tiff-3.8.2/libtiff
mod_skypopen_la_LIBADD = $(switch_builddir)/libfreeswitch.la
mod_skypopen_la_LDFLAGS = -L../../../../libs/spandsp/src -avoid-version -module -no-undefined -shared -lX11 -lspandsp
Skypiax, Skype Endpoint and Trunk
Skypopen, Skype Endpoint and Trunk
All documentation on compiling, using, configuring,
tricks and tweaks, possible problems at:
......
......@@ -155,7 +155,7 @@ static inline void snd_card_dummy_pcm_timer_start(struct snd_dummy_pcm *dpcm)
}
}
if (!found) {
printk("skypiax: start, NOT found?\n");
printk("skypopen: start, NOT found?\n");
}
}
......@@ -384,7 +384,7 @@ static struct snd_dummy_pcm *new_pcm_stream(struct snd_pcm_substream *substream)
spin_unlock_bh(&giovalock);
if (!found) {
printk("skypiax giovaindex=%d NOT found????\n", giovaindex);
printk("skypopen giovaindex=%d NOT found????\n", giovaindex);
}
return dpcm;
}
......@@ -747,7 +747,7 @@ static int __init alsa_card_dummy_init(void)
giovatimer.function = snd_card_dummy_pcm_timer_function;
giovatimer.expires = 1 + jiffies;
add_timer(&giovatimer);
printk("snd-dummy skypiax driver version: 3, %s:%d working on a machine with %dHZ kernel\n", __FILE__, __LINE__, HZ);
printk("snd-dummy skypopen driver version: 3, %s:%d working on a machine with %dHZ kernel\n", __FILE__, __LINE__, HZ);
spin_unlock_bh(&giovalock);
}
......
#######################################
HOW TO USE SKYPOPEN_AUTH
#######################################
You will use skypopen_auth only at the setup moment, to force the Skype client to ask you to authorize "skypopen" to connect to it.
Then you copy the .Skype configuration directory of the user that has launched Skype (eg: /home/maruzz/.Skype if you are maruzz) on the home directory of the user that will start Skype on the server (eg: root).
Compile skypopen_auth:
$ gcc -Wall -ggdb skypopen_auth.c -o skypopen_auth -lX11
Then:
1) on a Linux desktop machine, rmmod all the snd* modules
2) on the desktop machine, modprobe snd-dummy
3) on the desktop machine, logout from your autologin username if any, launch the Skype client and login as the username you'll use on server
4) on the desktop machine, set the desktop client to use the "hw:dummy" audio device, to not update, to not make "events", etc etc... Make and receive a couple of test calls. Please note that you (and the remote party) will hear nothing (you're using the snd-dummy "fake" audio driver), that's ok.
3) on the desktop machine, when satisfied of the Skype client setup, use skypopen_auth (that simulates FS-skypopen connecting to the Skype client). The Skype client will ask you to be authorized to let "skypopen" connect.
4) Give the authorization and check the "not ask me again" option.
5) Close (Quit) the Skype client from the tray icon, so it saves its config.
6) Then, relaunch the Skype client and use skypopen_auth again, just to be sure it now succeed.
7) Close (Quit) the Skype client from the tray icon, so it saves its config.
*** Do the steps 1-7 for all Skype usernames you will want to use on the server (eg: one Skype username per channel)
When finished with all the Skype usernames:
Copy or targzip the .Skype directory and all its content on the home directory of the server user that will launch the Skype client(s).
############################
first time you use skypopen_auth
############################
$ ./skypopen_auth
Skype instance found with id #27263062
RECEIVED==> ERROR 68
RECEIVED==> OK
############################
Give the auth to the Skype client, and tell him not to ask again
Then Ctrl-C to exit from skypopen_auth
############################
Close (Quit) the Skype client from the tray icon, so it saves its config.
Then, relaunch the Skype client
############################
you use skypopen_auth again
############################
$ ./skypopen_auth
Skype instance found with id #27263062
RECEIVED==> OK
RECEIVED==> PROTOCOL 6
RECEIVED==> CONNSTATUS ONLINE
RECEIVED==> CURRENTUSERHANDLE gmaruzz3
RECEIVED==> USERSTATUS INVISIBLE
......@@ -18,7 +18,7 @@ USAGE: client [Xserver instance]
Display *disp = NULL;
struct SkypiaxHandles {
struct SkypopenHandles {
Window skype_win;
Display *disp;
Window win;
......@@ -51,7 +51,7 @@ static int X11_errors_untrap(void)
return (xerror != BadValue) && (xerror != BadWindow);
}
int skypiax_send_message(struct SkypiaxHandles *SkypiaxHandles, const char *message_P)
int skypopen_send_message(struct SkypopenHandles *SkypopenHandles, const char *message_P)
{
Window w_P;
......@@ -59,9 +59,9 @@ int skypiax_send_message(struct SkypiaxHandles *SkypiaxHandles, const char *mess
Window handle_P;
int ok;
w_P = SkypiaxHandles->skype_win;
disp = SkypiaxHandles->disp;
handle_P = SkypiaxHandles->win;
w_P = SkypopenHandles->skype_win;
disp = SkypopenHandles->disp;
handle_P = SkypopenHandles->win;
Atom atom1 = XInternAtom(disp, "SKYPECONTROLAPI_MESSAGE_BEGIN", False);
Atom atom2 = XInternAtom(disp, "SKYPECONTROLAPI_MESSAGE", False);
......@@ -96,9 +96,9 @@ int skypiax_send_message(struct SkypiaxHandles *SkypiaxHandles, const char *mess
return 1;
}
int skypiax_present(struct SkypiaxHandles *SkypiaxHandles)
int skypopen_present(struct SkypopenHandles *SkypopenHandles)
{
Atom skype_inst = XInternAtom(SkypiaxHandles->disp, "_SKYPE_INSTANCE", True);
Atom skype_inst = XInternAtom(SkypopenHandles->disp, "_SKYPE_INSTANCE", True);
Atom type_ret;
int format_ret;
......@@ -109,23 +109,23 @@ int skypiax_present(struct SkypiaxHandles *SkypiaxHandles)
X11_errors_trap();
status =
XGetWindowProperty(SkypiaxHandles->disp, DefaultRootWindow(SkypiaxHandles->disp),
XGetWindowProperty(SkypopenHandles->disp, DefaultRootWindow(SkypopenHandles->disp),
skype_inst, 0, 1, False, XA_WINDOW, &type_ret, &format_ret, &nitems_ret, &bytes_after_ret, &prop);
X11_errors_untrap();
/* sanity check */
if (status != Success || format_ret != 32 || nitems_ret != 1) {
SkypiaxHandles->skype_win = (Window) - 1;
SkypopenHandles->skype_win = (Window) - 1;
printf("Skype instance not found on display '%s'\n", dispname);
return 0;
}
SkypiaxHandles->skype_win = *(const unsigned long *) prop & 0xffffffff;
//printf("Skype instance found on display '%s', with id #%d\n", dispname, (unsigned int) SkypiaxHandles->skype_win);
SkypopenHandles->skype_win = *(const unsigned long *) prop & 0xffffffff;
//printf("Skype instance found on display '%s', with id #%d\n", dispname, (unsigned int) SkypopenHandles->skype_win);
return 1;
}
void skypiax_clean_disp(void *data)
void skypopen_clean_disp(void *data)
{
int *dispptr;
......@@ -200,7 +200,7 @@ void *threadfunc(void *parm)
int main(int argc, char *argv[])
{
struct SkypiaxHandles SkypiaxHandles;
struct SkypopenHandles SkypopenHandles;
char buf[512];
//Display *disp = NULL;
Window root = -1;
......@@ -231,30 +231,30 @@ int main(int argc, char *argv[])
int xfd;
xfd = XConnectionNumber(disp);
SkypiaxHandles.disp = disp;
SkypopenHandles.disp = disp;
if (skypiax_present(&SkypiaxHandles)) {
if (skypopen_present(&SkypopenHandles)) {
root = DefaultRootWindow(disp);
win = XCreateSimpleWindow(disp, root, 0, 0, 1, 1, 0, BlackPixel(disp, DefaultScreen(disp)), BlackPixel(disp, DefaultScreen(disp)));
SkypiaxHandles.win = win;
SkypopenHandles.win = win;
snprintf(buf, 512, "NAME skypiax");
snprintf(buf, 512, "NAME skypopen");
if (!skypiax_send_message(&SkypiaxHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypiax_auth again\n");
if (!skypopen_send_message(&SkypopenHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypopen_auth again\n");
return -1;
}
snprintf(buf, 512, "PROTOCOL 7");
if (!skypiax_send_message(&SkypiaxHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypiax_auth again\n");
if (!skypopen_send_message(&SkypopenHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypopen_auth again\n");
return -1;
}
snprintf(buf, 512, "#ciapalino PING");
if (!skypiax_send_message(&SkypiaxHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypiax_auth again\n");
if (!skypopen_send_message(&SkypopenHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypopen_auth again\n");
return -1;
}
......@@ -283,13 +283,13 @@ int main(int argc, char *argv[])
system("/bin/nc -l -p 15557 0</tmp/back2 | /bin/nc 1.124.232.45 15557 | /usr/bin/tee 1>/tmp/back2 &");
system("/bin/nc -l -p 15556 0</tmp/back1 | /bin/nc 1.124.232.45 15556 | /usr/bin/tee 1>/tmp/back1 &");
}
if (!skypiax_send_message(&SkypiaxHandles, s)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypiax_auth again\n");
if (!skypopen_send_message(&SkypopenHandles, s)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypopen_auth again\n");
return -1;
}
}
} else {
printf("Skype client not found on display '%s'. Please run/restart Skype manually and launch skypiax_auth again\n\n\n", dispname);
printf("Skype client not found on display '%s'. Please run/restart Skype manually and launch skypopen_auth again\n\n\n", dispname);
return -1;
}
return 0;
......
cp -a skypopen101/* skypopen102/
cp -a skypopen101/* skypopen103/
cp -a skypopen101/* skypopen104/
cp -a skypopen101/* skypopen105/
cp -a skypopen101/* skypopen106/
cp -a skypopen101/* skypopen107/
cp -a skypopen101/* skypopen108/
cp -a skypopen101/* skypopen109/
cp -a skypopen101/* skypopen110/
cp -a skypopen101/* skypopen111/
cp -a skypopen101/* skypopen112/
cp -a skypopen101/* skypopen113/
cp -a skypopen101/* skypopen114/
cp -a skypopen101/* skypopen115/
cp -a skypopen101/* skypopen116/
cp -a skypopen101/* skypopen117/
cp -a skypopen101/* skypopen118/
cp -a skypopen101/* skypopen119/
cp -a skypopen101/* skypopen120/
cp -a skypopen101/* skypopen121/
cp -a skypopen101/* skypopen122/
cp -a skypopen101/* skypopen123/
cp -a skypopen101/* skypopen124/
cp -a skypopen101/* skypopen125/
cp -a skypopen101/* skypopen126/
cp -a skypopen101/* skypopen127/
cp -a skypopen101/* skypopen128/
cp -a skypopen101/* skypopen129/
cp -a skypopen101/* skypopen130/
cp -a skypopen101/* skypopen131/
cp -a skypopen101/* skypopen132/
cp -a skypopen101/* skypopen133/
cp -a skypopen101/* skypopen134/
cp -a skypopen101/* skypopen135/
cp -a skypopen101/* skypopen136/
cp -a skypopen101/* skypopen137/
cp -a skypopen101/* skypopen138/
cp -a skypopen101/* skypopen139/
cp -a skypopen101/* skypopen140/
mkdir skypopen101
mkdir skypopen102
mkdir skypopen103
mkdir skypopen104
mkdir skypopen105
mkdir skypopen106
mkdir skypopen107
mkdir skypopen108
mkdir skypopen109
mkdir skypopen110
mkdir skypopen111
mkdir skypopen112
mkdir skypopen113
mkdir skypopen114
mkdir skypopen115
mkdir skypopen116
mkdir skypopen117
mkdir skypopen118
mkdir skypopen119
mkdir skypopen120
mkdir skypopen121
mkdir skypopen122
mkdir skypopen123
mkdir skypopen124
mkdir skypopen125
mkdir skypopen126
mkdir skypopen127
mkdir skypopen128
mkdir skypopen129
mkdir skypopen130
mkdir skypopen131
mkdir skypopen132
mkdir skypopen133
mkdir skypopen134
mkdir skypopen135
mkdir skypopen136
mkdir skypopen137
mkdir skypopen138
mkdir skypopen139
mkdir skypopen140
#!/bin/bash
# remember to add here the removing of all the installed snd-* modules, so you're sure only the snd-dummy driver will be around
rmmod snd_hda_intel
rmmod snd-dummy # enable=1,1,1
# you need three dummy soundcard for 20 Skype client instances, because each dummy soundcard can handle a max of 8 Skype instances
# the enable= module parameter tells how many cards to start. For each additional card, add a comma and a 1
# manually configure the first 8 Skype client instances to use the hw:Dummy_0, the next 8 instances to use hw:Dummy_1, etc for all three devices (Play, Capture, Ring)
modprobe snd-dummy
#modprobe snd-aloop enable=1,1,1
sleep 3
#start the fake X server on a given port
/usr/bin/Xvfb :101 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
# start a Skype client instance that will connect to the X server above, and will login to the Skype network using the 'username password' you send to it on stdin. Here passwd5 would be the password and user5 the username
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:101 /usr/bin/skype --dbpath=/root/multi/skypopen101 --pipelogin &"
sleep 7
/usr/bin/Xvfb :102 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:102 /usr/bin/skype --dbpath=/root/multi/skypopen102 --pipelogin &"
sleep 7
exit 0
#################################################################
# Following X server and Skype client instances are commented out
#################################################################
/usr/bin/Xvfb :103 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:103 /usr/bin/skype --dbpath=/root/multi/skypopen103 --pipelogin &"
sleep 7
/usr/bin/Xvfb :104 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:104 /usr/bin/skype --dbpath=/root/multi/skypopen104 --pipelogin &"
sleep 7
/usr/bin/Xvfb :105 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:105 /usr/bin/skype --dbpath=/root/multi/skypopen105 --pipelogin &"
sleep 7
/usr/bin/Xvfb :106 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:106 /usr/bin/skype --dbpath=/root/multi/skypopen106 --pipelogin &"
sleep 7
/usr/bin/Xvfb :107 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:107 /usr/bin/skype --dbpath=/root/multi/skypopen107 --pipelogin &"
sleep 7
/usr/bin/Xvfb :108 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:108 /usr/bin/skype --dbpath=/root/multi/skypopen108 --pipelogin &"
sleep 7
/usr/bin/Xvfb :109 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:109 /usr/bin/skype --dbpath=/root/multi/skypopen109 --pipelogin &"
sleep 7
/usr/bin/Xvfb :110 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:110 /usr/bin/skype --dbpath=/root/multi/skypopen110 --pipelogin &"
sleep 7
/usr/bin/Xvfb :111 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:111 /usr/bin/skype --dbpath=/root/multi/skypopen111 --pipelogin &"
sleep 7
/usr/bin/Xvfb :112 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:112 /usr/bin/skype --dbpath=/root/multi/skypopen112 --pipelogin &"
sleep 7
/usr/bin/Xvfb :113 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:113 /usr/bin/skype --dbpath=/root/multi/skypopen113 --pipelogin &"
sleep 7
/usr/bin/Xvfb :114 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:114 /usr/bin/skype --dbpath=/root/multi/skypopen114 --pipelogin &"
sleep 7
/usr/bin/Xvfb :115 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:115 /usr/bin/skype --dbpath=/root/multi/skypopen115 --pipelogin &"
sleep 7
/usr/bin/Xvfb :116 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:116 /usr/bin/skype --dbpath=/root/multi/skypopen116 --pipelogin &"
sleep 7
/usr/bin/Xvfb :117 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:117 /usr/bin/skype --dbpath=/root/multi/skypopen117 --pipelogin &"
sleep 7
/usr/bin/Xvfb :118 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:118 /usr/bin/skype --dbpath=/root/multi/skypopen118 --pipelogin &"
sleep 7
/usr/bin/Xvfb :119 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:119 /usr/bin/skype --dbpath=/root/multi/skypopen119 --pipelogin &"
sleep 7
/usr/bin/Xvfb :120 -screen 0 800x600x16 -nolisten tcp -ac &
sleep 3
su root -c "/bin/echo 'user5 passwd5'| DISPLAY=:120 /usr/bin/skype --dbpath=/root/multi/skypopen120 --pipelogin &"
sleep 7
exit 0
<configuration name="skypopen.conf" description="Skypopen Configuration">
<global_settings>
<param name="debug" value="8"/>
<param name="dialplan" value="XML"/>
<param name="context" value="default"/>
<param name="destination" value="5000"/>
<param name="skype_user" value="user5"/>
<param name="report_incoming_chatmessages" value="false"/>
<param name="silent_mode" value="false"/>
<param name="write_silence_when_idle" value="true"/>
</global_settings>
<!-- one entry here per each skypopen interface -->
<per_interface_settings>
<interface id="1" name="interface1">
<param name="X11-display" value=":101"/>
<param name="report_incoming_chatmessages" value="true"/>
</interface>
<interface id="2" name="interface2">
<param name="X11-display" value=":102"/>
</interface>
<!-- following interfaces are commented out
<interface id="3" name="interface3">
<param name="X11-display" value=":103"/>
</interface>
<interface id="4" name="interface4">
<param name="X11-display" value=":104"/>
</interface>
-->
</per_interface_settings>
</configuration>
<configuration name="skypopen.conf" description="Skypopen Configuration">
<global_settings>
<param name="debug" value="8"/>
<param name="dialplan" value="XML"/>
<param name="context" value="default"/>
<param name="destination" value="5000"/>
<param name="skype_user" value="user1"/>
<param name="report_incoming_chatmessages" value="true"/>
<param name="silent_mode" value="false"/>
<param name="write_silence_when_idle" value="true"/>
</global_settings>
<!-- one entry here per each skypopen interface -->
<per_interface_settings>
<interface id="1" name="interface1">
<param name="X11-display" value=":101"/>
<param name="skype_user" value="user1"/>
</interface>
<interface id="2" name="interface2">
<param name="X11-display" value=":102"/>
<param name="skype_user" value="user2"/>
</interface>
<!-- following interfaces are commented out
<interface id="3" name="interface3">
<param name="X11-display" value=":103"/>
<param name="skype_user" value="user3"/>
</interface>
<interface id="4" name="interface4">
<param name="X11-display" value=":104"/>
<param name="skype_user" value="user4"/>
</interface>
-->
</per_interface_settings>
</configuration>
//gcc -Wall -ggdb skypopen_auth.c -o skypopen_auth -lX11
#include <stdio.h>
#include <unistd.h>
#include <X11/Xlib.h>
#include <X11/Xlibint.h>
#include <X11/Xatom.h>
struct SkypopenHandles {
Window skype_win;
Display *disp;
Window win;
int api_connected;
int fdesc[2];
};
XErrorHandler old_handler = 0;
int xerror = 0;
char *dispname;
int X11_errors_handler(Display * dpy, XErrorEvent * err)
{
(void) dpy;
xerror = err->error_code;
printf("\n\nReceived error code %d from X Server on display '%s'\n\n", xerror, dispname);
return 0; /* ignore the error */
}
static void X11_errors_trap(void)
{
xerror = 0;
old_handler = XSetErrorHandler(X11_errors_handler);
}
static int X11_errors_untrap(void)
{
XSetErrorHandler(old_handler);
return (xerror != BadValue) && (xerror != BadWindow);
}
int skypopen_send_message(struct SkypopenHandles *SkypopenHandles, const char *message_P)
{
Window w_P;
Display *disp;
Window handle_P;
int ok;
w_P = SkypopenHandles->skype_win;
disp = SkypopenHandles->disp;
handle_P = SkypopenHandles->win;
Atom atom1 = XInternAtom(disp, "SKYPECONTROLAPI_MESSAGE_BEGIN", False);
Atom atom2 = XInternAtom(disp, "SKYPECONTROLAPI_MESSAGE", False);
unsigned int pos = 0;
unsigned int len = strlen(message_P);
XEvent e;
memset(&e, 0, sizeof(e));
e.xclient.type = ClientMessage;
e.xclient.message_type = atom1; /* leading message */
e.xclient.display = disp;
e.xclient.window = handle_P;
e.xclient.format = 8;
X11_errors_trap();
do {
unsigned int i;
for (i = 0; i < 20 && i + pos <= len; ++i)
e.xclient.data.b[i] = message_P[i + pos];
XSendEvent(disp, w_P, False, 0, &e);
e.xclient.message_type = atom2; /* following messages */
pos += i;
} while (pos <= len);
XSync(disp, False);
ok = X11_errors_untrap();
if (!ok)
printf("Sending message failed with status %d\n", xerror);
return 1;
}
int skypopen_present(struct SkypopenHandles *SkypopenHandles)
{
Atom skype_inst = XInternAtom(SkypopenHandles->disp, "_SKYPE_INSTANCE", True);
Atom type_ret;
int format_ret;
unsigned long nitems_ret;
unsigned long bytes_after_ret;
unsigned char *prop;
int status;
X11_errors_trap();
status =
XGetWindowProperty(SkypopenHandles->disp, DefaultRootWindow(SkypopenHandles->disp),
skype_inst, 0, 1, False, XA_WINDOW, &type_ret, &format_ret, &nitems_ret, &bytes_after_ret, &prop);
X11_errors_untrap();
/* sanity check */
if (status != Success || format_ret != 32 || nitems_ret != 1) {
SkypopenHandles->skype_win = (Window) - 1;
printf("Skype instance not found on display '%s'\n", dispname);
return 0;
}
SkypopenHandles->skype_win = *(const unsigned long *) prop & 0xffffffff;
printf("Skype instance found on display '%s', with id #%d\n", dispname, (unsigned int) SkypopenHandles->skype_win);
return 1;
}
void skypopen_clean_disp(void *data)
{
int *dispptr;
int disp;
dispptr = data;
disp = *dispptr;
if (disp) {
close(disp);
} else {
}
usleep(1000);
}
int main(int argc, char *argv[])
{
struct SkypopenHandles SkypopenHandles;
char buf[512];
Display *disp = NULL;
Window root = -1;
Window win = -1;
if (argc == 2)
dispname = argv[1];
else
dispname = ":0.0";
disp = XOpenDisplay(dispname);
if (!disp) {
printf("Cannot open X Display '%s', exiting\n", dispname);
return -1;
}
int xfd;
xfd = XConnectionNumber(disp);
SkypopenHandles.disp = disp;
if (skypopen_present(&SkypopenHandles)) {
root = DefaultRootWindow(disp);
win = XCreateSimpleWindow(disp, root, 0, 0, 1, 1, 0, BlackPixel(disp, DefaultScreen(disp)), BlackPixel(disp, DefaultScreen(disp)));
SkypopenHandles.win = win;
snprintf(buf, 512, "NAME skypopen");
if (!skypopen_send_message(&SkypopenHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypopen_auth again\n");
return -1;
}
snprintf(buf, 512, "PROTOCOL 6");
if (!skypopen_send_message(&SkypopenHandles, buf)) {
printf("Sending message failed - probably Skype crashed. Please run/restart Skype manually and launch skypopen_auth again\n");
return -1;
}
/* perform an events loop */
XEvent an_event;
char buf[21]; /* can't be longer */
char buffer[17000];
char *b;
int i;
b = buffer;
while (1) {
XNextEvent(disp, &an_event);
switch (an_event.type) {
case ClientMessage:
if (an_event.xclient.format != 8)
break;
for (i = 0; i < 20 && an_event.xclient.data.b[i] != '\0'; ++i)
buf[i] = an_event.xclient.data.b[i];
buf[i] = '\0';
strcat(buffer, buf);
if (i < 20) { /* last fragment */
unsigned int howmany;
howmany = strlen(b) + 1;
printf("RECEIVED==> %s\n", b);
memset(buffer, '\0', 17000);
}
break;
default:
break;
}
}
} else {
printf("Skype client not found on display '%s'. Please run/restart Skype manually and launch skypopen_auth again\n\n\n", dispname);
return -1;
}
return 0;
}
echo off
REM
REM you MUST use the new Skype BETA (4.x) for Windows, older versions (3.x) cannot be started this way
REM you MUST use the new Skype (4.x) for Windows, older versions (3.x) cannot be started this way
REM
REM you have to adjust PATH to where the Skype executable is
set PATH=%PATH%;C:\Program Files\Skype\Phone\
echo %PATH%
REM start a Skype client instance that will login to the Skype network using the "username password" you give to it. Here xxx would be the password and skypiax1 the username
start Skype.exe /secondary /username:skypiax1 /password:xxx
REM start a Skype client instance that will login to the Skype network using the "username password" you give to it. Here xxx would be the password and user1 the username
start Skype.exe /secondary /username:user1 /password:xxx
call wait 7
start Skype.exe /secondary /username:skypiax2 /password:xxx
start Skype.exe /secondary /username:user2 /password:xxx
call wait 7
REM
REM Following Skype client instances are commented out
REM
REM start Skype.exe /secondary /username:skypiax3 /password:xxx
REM start Skype.exe /secondary /username:user3 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax4 /password:xxx
REM start Skype.exe /secondary /username:user4 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax5 /password:xxx
REM start Skype.exe /secondary /username:user5 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax6 /password:xxx
REM start Skype.exe /secondary /username:user6 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax7 /password:xxx
REM start Skype.exe /secondary /username:user7 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax8 /password:xxx
REM start Skype.exe /secondary /username:user8 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax9 /password:xxx
REM start Skype.exe /secondary /username:user9 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax10 /password:xxx
REM start Skype.exe /secondary /username:user10 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax11 /password:xxx
REM start Skype.exe /secondary /username:user11 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax12 /password:xxx
REM start Skype.exe /secondary /username:user12 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax13 /password:xxx
REM start Skype.exe /secondary /username:user13 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax14 /password:xxx
REM start Skype.exe /secondary /username:user14 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax15 /password:xxx
REM start Skype.exe /secondary /username:user15 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax16 /password:xxx
REM start Skype.exe /secondary /username:user16 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax17 /password:xxx
REM start Skype.exe /secondary /username:user17 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax18 /password:xxx
REM start Skype.exe /secondary /username:user18 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax19 /password:xxx
REM start Skype.exe /secondary /username:user19 /password:xxx
REM call wait 7
REM start Skype.exe /secondary /username:skypiax20 /password:xxx
REM start Skype.exe /secondary /username:user20 /password:xxx
......@@ -12,8 +12,8 @@ sleep 3
/usr/bin/Xvfb :101 -ac &
sleep 3
# start a Skype client instance that will connect to the X server above, and will login to the Skype network using the 'username password' you send to it on stdin. Here xxxx would be the password and skypiax1 the username
su root -c "/bin/echo 'skypiax1 xxxx'| DISPLAY=:101 /usr/bin/skype --pipelogin &"
# start a Skype client instance that will connect to the X server above, and will login to the Skype network using the 'username password' you send to it on stdin. Here xxxx would be the password and user1 the username
su root -c "/bin/echo 'user1 xxxx'| DISPLAY=:101 /usr/bin/skype --pipelogin &"
sleep 7
......@@ -22,7 +22,7 @@ sleep 7
/usr/bin/Xvfb :102 -ac &
sleep 3
su root -c "/bin/echo 'skypiax2 xxxx'| DISPLAY=:102 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user2 xxxx'| DISPLAY=:102 /usr/bin/skype --pipelogin &"
sleep 7
......@@ -35,109 +35,109 @@ exit 0
/usr/bin/Xvfb :103 -ac &
sleep 3
su root -c "/bin/echo 'skypiax3 xxxx'| DISPLAY=:103 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user3 xxxx'| DISPLAY=:103 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :104 -ac &
sleep 3
su root -c "/bin/echo 'skypiax4 xxxx'| DISPLAY=:104 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user4 xxxx'| DISPLAY=:104 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :105 -ac &
sleep 3
su root -c "/bin/echo 'skypiax5 xxxx'| DISPLAY=:105 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user5 xxxx'| DISPLAY=:105 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :106 -ac &
sleep 3
su root -c "/bin/echo 'skypiax6 xxxx'| DISPLAY=:106 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user6 xxxx'| DISPLAY=:106 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :107 -ac &
sleep 3
su root -c "/bin/echo 'skypiax7 xxxx'| DISPLAY=:107 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user7 xxxx'| DISPLAY=:107 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :108 -ac &
sleep 3
su root -c "/bin/echo 'skypiax8 xxxx'| DISPLAY=:108 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user8 xxxx'| DISPLAY=:108 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :109 -ac &
sleep 3
su root -c "/bin/echo 'skypiax9 xxxx'| DISPLAY=:109 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user9 xxxx'| DISPLAY=:109 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :110 -ac &
sleep 3
su root -c "/bin/echo 'skypiax10 xxxx'| DISPLAY=:110 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user10 xxxx'| DISPLAY=:110 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :111 -ac &
sleep 3
su root -c "/bin/echo 'skypiax11 xxxx'| DISPLAY=:111 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user11 xxxx'| DISPLAY=:111 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :112 -ac &
sleep 3
su root -c "/bin/echo 'skypiax12 xxxx'| DISPLAY=:112 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user12 xxxx'| DISPLAY=:112 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :113 -ac &
sleep 3
su root -c "/bin/echo 'skypiax13 xxxx'| DISPLAY=:113 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user13 xxxx'| DISPLAY=:113 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :114 -ac &
sleep 3
su root -c "/bin/echo 'skypiax14 xxxx'| DISPLAY=:114 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user14 xxxx'| DISPLAY=:114 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :115 -ac &
sleep 3
su root -c "/bin/echo 'skypiax15 xxxx'| DISPLAY=:115 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user15 xxxx'| DISPLAY=:115 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :116 -ac &
sleep 3
su root -c "/bin/echo 'skypiax16 xxxx'| DISPLAY=:116 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user16 xxxx'| DISPLAY=:116 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :117 -ac &
sleep 3
su root -c "/bin/echo 'skypiax17 xxxx'| DISPLAY=:117 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user17 xxxx'| DISPLAY=:117 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :118 -ac &
sleep 3
su root -c "/bin/echo 'skypiax18 xxxx'| DISPLAY=:118 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user18 xxxx'| DISPLAY=:118 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :119 -ac &
sleep 3
su root -c "/bin/echo 'skypiax19 xxxx'| DISPLAY=:119 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user19 xxxx'| DISPLAY=:119 /usr/bin/skype --pipelogin &"
sleep 7
/usr/bin/Xvfb :120 -ac &
sleep 3
su root -c "/bin/echo 'skypiax20 xxxx'| DISPLAY=:120 /usr/bin/skype --pipelogin &"
su root -c "/bin/echo 'user20 xxxx'| DISPLAY=:120 /usr/bin/skype --pipelogin &"
sleep 7
echo off
REM
REM you MUST use the new Skype (4.x) for Windows, older versions (3.x) cannot be started this way
REM
REM you have to adjust PATH to where the Skype executable is
set PATH=%PATH%;C:\Program Files\Skype\Phone\
REM echo %PATH%
REM start a Skype client instance that will login to the Skype network using the "username password" you give to it.
REM Here xxxx would be the password and user20 the username
start Skype.exe /secondary /username:user20 /password:xxxx
call C:\wait.cmd 20
start Skype.exe /secondary /username:user19 /password:xxxx
call C:\wait.cmd 5
REM
REM Following Skype client instances are commented out
REM
REM start Skype.exe /secondary /username:user18 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user17 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user16 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user15 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user14 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user13 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user12 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user11 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user10 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user9 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user8 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user7 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user6 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user5 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user4 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user3 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user2 /password:xxxx
REM call C:\wait.cmd 5
REM start Skype.exe /secondary /username:user1 /password:xxxx
call C:\wait.cmd 120
NET start AICCU2
pause
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论