⬆️ ⬇️

Skype bot for voice conferencing





Probably, some people remember the Skype Casts service - public voice conferences, where everyone could create a conference, which was announced on skype.com. In 2008, the service was closed.



Today, the only way to host a conference is to keep the Skype client running.

This is not convenient, because the person who “holds” the conference call cannot accept an incoming call, otherwise the conference will be put on hold and no one in it will be able to communicate. If the host has problems with the Internet, the connection deteriorates for everyone.

In addition, to host a call in which 10-15 participants significantly loads the computer.

')

We tried to solve this problem by keeping Skype running on a Windows server. So that the call does not stop when all participants hang up - you had to run two copies of the client and keep the second one as a conference participant.

But this scheme is not very stable, after 3-5 days one of the customers crashes and the call ends. Everybody had to re-raise it manually.



And finally, we managed to find a stable and simple solution based on skypekit allowing:



Constantly keep the call using one skypekit copy.

If all conference participants put down the phone, the call is restarted as / golive



Host a bot on a Linux server without Xs.

The desktop client requires an X server to run. Skypekit can be run without it, even on a VPS.

Available for all Windows / Linux / Mac platforms



Manage the bot via chat commands

The bot can differentiate access rights, distinguish commands sent from the main conference chat and from other chat rooms.

If you wish, you can write an analogue of the irc-shny eggdrop.







1) Download skypekit



developer.skype.com



It costs $ 5. If money is a pity, I can share my.



Compile stubs for video and sound. this is a little non-obvious process, so you can ask along the way).



2) Take skypebot.py from here github.com/zhovner/skypebot



and put it in {skypekit_dir} / examples / python / tutorial /



3) Rule skypebot.py



It is assumed that you already have a conference created in which the bot will be added.

It is impossible for the bot account to be the creator of the conference. The / get creator command entered by the conference chat will return the creator's login.



In line 38, you must insert the conference ID. To get it you need to enter / get name in the conference chat.

The command returns the following string name = # skypename1 / $ skypename2; c7cddqc19522bab3



In the script line must be added in this form:



conferenceID = '#skypename1/$skypename2;c7cddqc19522bab3' 




In the Admins list (line 43) you can list the logins of those who can manage the bot.



4) Run the whole structure.



 #   (  ) {skypekit_dir}/skypekit/reference/videortphost-loopback/build/videortphost-loopback #  skypekit {skypekit_dir}/bin/linux-x86/linux-x86-skypekit-videortp #  (        ) {skypekit_dir}/examples/python/tutorial/skypebot.py botskypename password 




Now the bot will keep the call constantly.



Commands in chat:



! down - stop holding the call

! up - resume the call



Attention!

A young guy will urgently get acquainted with a more experienced Python programmer for serious relations in the context of bot improvement, because my skills are clearly not enough. In the future, you can make a full analogue of the eggdrop bot or similar service SkypeCast.

Source: https://habr.com/ru/post/163329/



All Articles