SkypeとXvfbとX11vnc
overviewer
サーバで何かが起こったら通知する仕組みほしいな、ってところで、ビープラさんのPythonプロフェッショナルプログラミングに書いてるSkypeに通知できたらいいな、が発端。
結局、この方法は完遂できませんでした。Xvfb → X11vnc → vnc client で Skype の画面をみる、までができました。なお、virtualenv の環境作ったんですが、impot dbus でこけるのでグローバルでやりました。で、グローバルで Skype4Py.Skype().Attach() しても、Public API とかいうものの承認ウィンドウは表示されませんでした。ここでやる気を無くしました。Skypeのバージョンは CentOS6 用の static 4.0.X くらいだったと思います。
もう通知は別の IRC とかでやる方法を検討し始めます。。。
あと注意点として、Skype をサーバなCLI環境でデーモンで動かすと、P2Pなのでネットワークによくわからん制御できないデータがそこそこながれてしまということです。わたしはいやです。
env
- CentOS6.3 final
- python 2.6
install Xvfb
- yum groupinstall "X Window System"
- yum -y install xorg-x11-server-Xvfb
- yum install xorg-x11-fonts*
install x11vnc
- wget http://pkgs.repoforge.org/x11vnc/x11vnc-0.9.13-1.el6.rf.x86_64.rpm
- yum -y install x11vnc-0.9.13-1.el6.rf.x86_64.rpm
OSのバージョンと bit 数でしくじってもだえることになった・・・
1. wget http://dag.wieers.com/rpm/packages/x11vnc/x11vnc-0.9.3-1.el5.rf.i386.rpm
2. yum install x11vnc-0.9.3-1.el5.rf.i386.rpm
あと、起動コマンドが次だとクライアントから接続できて
sudo x11vnc -nopw -listen 0.0.0.0 -display :20
次だと接続できなかった。
sudo x11vnc -nopw -listen 0.0.0.0 -display :20 -xauth /var/run/skype/Xauthority
クライアントもソフトによって、てのがあり・・・(なんかおかしいんだろうけども)
Fedora 17(Xの動く) に sudo yum -y install vnc で vncviewer いれて、Xウィンドウ上の terminal から vncviewer remote_host:port で接続したらいけた。
Windows の TightVNC や Mac の Finder で command + K とかはダメだった。VNCのプロトコルバージョン?
font mplus install
日本語がおかしいので、VNCサーバ側に日本語フォントを導入。
- mkdir -p ~/work/
- cd ~/work/
- wget http://ftp.riken.jp/Linux/fedora/epel/RPM-GPG-KEY-EPEL-6
- sudo rpm --import RPM-GPG-KEY-EPEL-6
- rm -f RPM-GPG-KEY-EPEL-6
- sudo vi /etc/yum.repos.d/epel.repo
epel.repo:
[epel]
name=EPEL RPM Repository for Red Hat Enterprise Linux
baseurl=http://ftp.riken.jp/Linux/fedora/epel/6/$basearch/
gpgcheck=1
enabled=0
- sudo yum install -y --enablerepo=epel mplus*