SearchWiki:
Freie IT-Beratung
 Rolf Winterscheidt
http://www.rowi.net

Main.SideBar (edit)

Rolf

||align=center ||||

Scirocco

Das Scirocco-Wiki ist nun unter: http://wiki.sciroccoforum.de

IP-Telefonie

SecondLife

Weitere Themen

Das Passwort zum Ändern von Seiten ist der Firmenname links neben dem Vogel, was auch gleichzeitig der Domainname ist.

Impressum: http://www.rowi.net
Recent Changes Printable View Page History Edit Page
Meetme oder Meetme2 sind Konferenzräume unter Asterisk. So wie es den IRC als Text-Chat gibt, existiert hier ein Raum, wo man hintelefonieren kann statt zu tippen. Man unterhält sich also in geselliger Runde.

Meetme vs Meetme2

Es gibt unter Asterisk eine Funktion Meetme, die jedoch einen zusätzlichen Treiber benötigt. Die Funktion Meetme2 ist dagegen eine externe Applikation, die zudem noch ein Webinterface mitbringt, also ist das eine gute Alternative zum eingebauten Meetme.

Meetme-Quellcode herunterladen und in Source-Verzeichnis kopieren

 cd /usr/src/asterisk/apps
 wget http://www.areski.net/asterisk-meetme/sources/app_meetme2.c

Meetme2-Quellcode patchen

Vielleicht hat sich der Quellcode von Asterisk so geändert, dass sich meetme2 nicht mehr ohne weiteres reinkompilieren lässt, daher muss der Quellcode gepatcht werden (Stand 13.4.2005). Sicherlich wird das später mal im Code selbst eingepflegt. Man kann den Code per patch einspielen oder aber eben die wenigen zeilen händisch ändern, also:
  • Im Editor (vorzugsweise vi) die app_meetme2.c öffnen
  • Zu Zeile 643 (oder in die Nähe davon springen)
  • Das was unter dem " -643,7 +643,7 " steht reinsetzen:
  • Also darunter: "} *confs;" einfügen
  • Selbiges mit den anderen Zeilennummern machen (fangen mit @@ an)
  • Speichern nicht vergessen (im vi z.B. Shift-ZZ)

 --- app_meetme2.c       2004-04-07 06:37:18.000000000 -0500
 +++ /usr/src/asterisk/apps/app_meetme2.c        2004-08-20 
 07:05:41.000000000 -0500
  -643,7 +643,7 
   } *confs;


 -static ast_mutex_t conflock = AST_MUTEX_INITIALIZER;
 +AST_MUTEX_DEFINE_STATIC(conflock);

   #include "enter.h"
   #include "leave.h"
  -1545,7 +1545,7 
          }else{
                  if (chan->_state != AST_STATE_UP)
                          ast_answer(chan);
 -               res = ast_say_number(chan, cnt, "", chan->language);
 +               res = ast_say_number(chan, cnt, "", chan->language, 
 (char *)NULL);
          }
          LOCAL_USER_REMOVE(u);
          return res;

Makefile anpassen

Das Makefile von Asterisk muss noch angepasst werden. Nutze dazu einen Editor Deiner Wahl und editiere die Datei /usr/src/asterisk/Makefile (sollte eigentlich da liegen, ansonsten wird Du es schon finden).

Ein Beispiel-Makefile findest Du hier: http://www.areski.net/asterisk-meetme/sources/apps/Makefile

Nutze dieses Makefile aber nicht (!!), sondern suche dort nach "meetme2" und füge die Änderungen in Deinem Makefile ein.

Compilieren der Apps

Nun kommt das make...

 cd /usr/src/asterisk/apps
 make
 make install

Jetzt sollte der Code compiliert und installiert sein. Falls hier etwas schiefgelaufen ist: Viel Glück bei der Fehlersuche ;-).

meetme2.conf erstellen

Nun muss noch /etc/asterisk/meetme2.conf erstellt werden. Ich gehe hierbei davon aus, dass eine lokale MySQL?-Datenbank genutzt wird.

 [db]
 dbtype=mysql                       ;mysql oder postgres
 hostname=localhost                 ;lokale DB, sonst Hostnamen eingeben
 dbname=asterisk                    ;Datenbankname (kann in asterisk rein)
 user=root                          ;root geht zwar, aber ein separater Datenbankuser ist besser
 password=sUpErPasswort             ;Das Passwort für den DB-User
 port=3306                          ;Port der MySQL?-DB (normalerweise 3306)
 sequence=id_meetme_user            ;Postgres-Parameter (Sequenz)
 dbtable=meetme_user                ;Tabellenname

 [rooms]
 conf => 1234                       ;Konferenzraum 1
 conf => 4321                       ;Konferenzraum 2

Sounds herunterladen und in Sound-Verzeichnis kopieren

 cd /var/lib/asterisk/sounds
 wget http://www.areski.net/asterisk-meetme/sources/can_talk.gsm
 wget http://www.areski.net/asterisk-meetme/sources/wait_totalk.gsm

Datenbanktabelle anlegen

Gehe nun auf die MySQL?-Konsole (z.B. mit mysql -u root -p sUpErPasswort) und cut'n paste folgende Zeilen:

 use asterisk;
 CREATE TABLE meetme_user (
 user_id INT  not null AUTO_INCREMENT, 
 confno 	INT  not null, 
 chan_name CHAR (30)  not null, 
 fd INT  not null, 
 ztc_chan INT  not null, 
 ztc_confno INT  not null, 
 ztc_confmode INT  not null, 
 flag INT  not null, 
 PRIMARY KEY (user_id));

Zur Kontrolle noch:

 describe meetme_user;

Die Tabellenstruktur sollte nun korrekt dargestellt werden.

Fertig?

Nun sollte es im Prinzip schon funktionieren, Du kannst nun schonmal sehen, ob sich da etwas tut. Wenn Du keinen Kaffee brauchst und keine Lust auf Tests hast, geht es nun weiter...

Web-Meetme-UI herunterladen und konfigurieren

Nun muss das Webfrontend geholt werden. Bei einem Debian-System liegt das Webroot (sofern ein Apache installiert ist) unter /var/www, bei SuSE? hab ich es schon wieder vergessen...

 mkdir /var/www/meetme2
 cd /var/www/meetme2
 wget http://www.areski.net/asterisk-meetme/sources/asterisk_meetme_v1.tar.gz
 tar -xvzf asterisk_meetme_v1.tgz

Editiere nun die defines.php.

    *  WEBROOT: Hier ist das Verzeichnis von meetme2.
      Beispiel: http://sip.rowi.net/meetme2/
    * FSROOT: Hier liegt die Applikation meetme2.
      Beispiel: /usr/local/meetme2/
    * HOST: Das ist der Datenbankserver.
      Beispiel: localhost
    * PORT: Der Datenbank-Port.
      Beispiel: 3306
    * USER: Und der User der Datenbank (wenn möglich, nicht root dafür nutzen).
      Beispiel: root
    * PASS: Genau, das Passwort für den Datenbank-User.
      Beispiel: sUpErPasswort
    * DBNAME: Name der Datenbank (im Beispiel liegt es mit in der Asterisk-DB).
      Beispiel: asterisk
    * DB_TYPE: Datenbank-Typ (wir sind von MySQL? ausgegangen)
      Beispiel: mysql
    * DB_TABLENAME: Tabellenname von meetme2.
      Beispiel: meetme_user

Fertig!

So, nun kann meetme2 und das zugehörige Frontend gentutzt werden. Die Infos kommen von untenstehenden Link des Entwicklers, ich habe das lediglich ein bisschen eingedeutscht und angepasst. Natürlich ist hier alles ohne Haftung und so, ich hoffe dennoch, dass alles bei Dir geklappt hat.

Rolf (@) rowi (punkt) net.

Troubleshooting - wenn mal wieder nix klappt ;-)

Du freust Dich über ein neues Feature und der Compiler schmeisst nur Fehler raus? Mir geht es auch oft so. Hier einige Fehlermöglichkeiten und was man dagegen machen kann (bitte erweitern, wenn Du noch etwas weisst)

make: curl-config: Command not found

Hier hilft unter Debian ein apt-get install libcurl-dev, das dann die benötigte curl-config mitbringt

Link:

http://www.areski.net/asterisk-meetme/about.php?s=0

Edit Page - Page History - Printable View - Recent Changes - WikiHelp - SearchWiki
Page last modified on April 13, 2005, at 08:45 PM