Ice/Deutsch

From Mumble Wiki
< Ice
Revision as of 13:12, 6 April 2009 by XenonR (talk | contribs) (Started Ice/German)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Mumur unterstützt Remote scripting mit ZeroC ICE, einem RPC Mechanismus.

Es gibt C++, Java, .NET, Python, PHP and Ruby Unterstützungen für alle Platformen (Win32, Linux and OSX).

Ice kann auch über ein Netzwerk betrieben werden, somit kann eine Webapplikation mit dem laufenden Murmur Prozess komunizieren.

debian Webserver und Murmur für ZeroC-Ice konfigurieren

Dies sind Beispiele nutze sie auf eigene Gefahr!

Dieser Leitfaden ist für debian 5.0 (lenny)

Ich gehe davon aus das du bereits einen funktionierenden apache2 mit PHP Unterstützung hast.

Voraussetzungen

Als erstes installieren wir einige benötigte Packete, dies machen wir in einem root-shell.

apt-get update

apt-get install mumble-server libzeroc-ice32 php-zeroc-ice lzma

Diese sind namentlich der Mumble-Server selbst (mumble-server), die ZeroC-Ice C++ Laufzeitbibliothek (libzeroc-ice32), das IcePHP Modul (php-zeroc-ice) und der lzma Extraktor. Sei dir bewusst darüber das wir vorerst eine älterer Serverversion OHNE Ice Unterstützung installieren. Das werden wir später korrigieren.

Zusätzlich benötigen wir den aktuellen Server (Murmur).

Man kann ihn über die Adresse http://mumble.sourceforge.net/ beziehen. "Stable Static Linux Server". Ich empfehle dafür das Heim-Verzeichnis.

cd ~
wget http://switch.dl.sourceforge.net/sourceforge/mumble/murmur-static_x86-1.1.8.tar.lzma
unlzma -v murmur-static_x86-1.1.8.tar.lzma
tar xfv murmur-static_x86-1.1.8.tar

Schritt 1 - Murmur konfigurieren

OPTIONAL: Um Murmur mit jedem Systemstart automatisch zu starten bearbeite die Datei /etc/default/mumble-server entsprechend mit einem Editior deiner Wahl.

Nun öffne die Datei /etc/mumble-server.ini

vim /etc/mumble-server.ini

OR

nano -w /etc/mumble-server.ini 

Kommentiere die Zeile die mit dbus= beginnt aus

#dbus=system

Erstelle eine neue Zeile und füge folgendes in diese ein

ice="tcp -h 127.0.0.1 -p 6502"

Murmur weiß damit das er auf Ice Anfragen achten soll.

Schritt 2 - Murmur manuell aktualisieren

First of all why did we installed a old version first to replace it now?

It's easy, we have much less to do. Anyway there is a downside.

When the package is updated in the repository you will probably break your Ice support. But i think thats the best way and you can easily fix that just with replacing the murmurd binary again.

You alread extracted the Static Linux Server to your home directory. Now we need some files from there.

First replace the repository binary with the manually downloaded one.

cd ~/murmur-static_x86-1.1.8
chmod +x ./murmur.x86
cp murmur.x86 /usr/sbin/murmurd

Now copy the Ice specification for murmur.

cp Murmur.ice /var/lib/mumble-server/Murmur.ice

Step 3 - PHP Setup Now we need to tell the PHP-Ice Extension where the Ice specification file can be found. You should already have a file /etc/php5/conf.d/IcePHP.ini from your PHP module install. Open it with a editor.

vim /etc/php5/conf.d/IcePHP.ini

OR

nano -w /etc/php5/conf.d/IcePHP.ini

Paste the folowing in a new line at the end of the file

ice.slice = /var/lib/mumble-server/Murmur.ice

Step 4 - Relaod and Check

Everything needed should be done now let us populate your new settings.

Restart your apache2.

/etc/init.d/apache2 restart

And start your Mumble server

/etc/init.d/mumble-server start

Now we will take a look in the mumble-server log to see if everything is fine.

tail -n10 /var/log/mumble-server/mumble-server.log

If you find a line similar to the following

...
<W>2009-04-06 13:37:11.316 MurmurIce: Endpoint "tcp -h 127.0.0.1 -p 6502" running
...

everything is fine and you can now comunicate to Murmur over the IcePHP extension.

Again be aware of that you can break your Ice support when the package gets an update in the repository!