sok’s page

www.itpk.info

dateJanuary 15, 2008
postedbyPosted by soczek

MobicentsJak obiecałem całkiem niedawno w wcześniejszym poście umieszczę pełną instrukcję instalacji oraz konfiguracji serwera Mobicents wraz z usługami VoiceMail, CallBlocking oraz CallForwarding. Na początek chcę pokazać jak postawić serwer i usługi oraz jak skonfigurować klientów. A za kilka dni jak znajdę trochę czasu, chociaż ostatnio go brak z powodu sesji pokażę przykładowe sesje SIP oraz pokaże jak to wszystko działa od środka. No więc zaczynamy…

Na początek może pokrótce opiszę co to jest w ogóle Mobicents? Otóż…
Mobicents to open source’owa platforma VoIP zgodna z JSLEE. Jest jednym z popularniejszych serwerów aplikacji wykorzystującym protokół SIP na platformę Java. Należy do wysoko wydajnych silników dla systemów SDP (Service Delivery Platform) i IMS (IP Multimedia Subsystems). Umożliwia on budowanie aplikacji z komponentów SBB przy użyciu EclipSLEE. Architektura systemu (SOA) sprawia, że jest on łatwy do wykorzystania w innych aplikacjach.

1. Instalacja
1.1 Instalacja Mobicents
(mobicents-installer-1.0.03.GA.jar)

    • w trakcie instalacji zmieniamy ścieżkę dostępu na C:\mobicents>
    • w kroku 4 zaznaczamy wszystkie pakiety do instalacji (Examples, Resources, tools)

Po pomyślnym zainstalowaniu serwera Mobicents należy dodać zmienne systemowe:

    MOBICENTS_HOME = C:\mobicents
    MOBICENTS_EXAMPLES = C:\mobicents\examples
    JBOSS_HOME = C:\jboss-3.2.6

1.2 Instalacja JDK - Java Development Kid (jdk-6u3-windows-i586-p.exe)
Po zainstalowaniu JDK do zmiennych systemowych należy dodać wpis z ścieszką do jdk:

    JAVA_HOME = C:\Program Files\Java\jdk1.6.0_03

PO DOKONANIU WSZYSTKICH INSTALACJI NIEZBĘDNY JEST RESTART SYSTEMU!

2. Zmiana ustawień w plikach (aby serwer z usługami działał prawidłowo, przed uruchomieniem należy wykonać kilka zmian w plikach)
2.1 Plik pierwszy to build.xml
Ścieżka:
C:\mobicents\examples\lib\build.xml należy zmienić wpis:

    < property name=”jnpPorst” value=”1099” / >
    < property name=”jnpHost” value=”local_ip” />

local_ip na IP na którym będziemy uruchamiać serwer Mobicents

2.2 Plik drugi to sipra.entity
Ścieżka:
C:\mobicents\examples\lib\slee-sip-ra\sipra.entity

    #Hot Deployment
    #For this use case use those properties - change them for each entity
    #Propertis have the same name as described in ra-jar.xml and the same constrains apply
    ip=local_ip
    #port=7888
    #fireXEvents=false
    #dialogIdleTimeTimeout=36000
    #cancelWait=1000
    #transports=udp

Również ustawiamy wartość IP

2.3 Plik trzeci to profiles.bsh
Ścieżka:
C:\mobicents\examples\call-controller2\scripts\profiles.bsh:

    String jbossBindAddress = „local_ip”;

3. Uruchomienie
3.1 Uruchomienie serwera

W wiersza poleceń przechodzimy do folderu katalogu mobicents
C:\mobicents\server\bin
gdzie wywołujemy komendę:

    run.bat –c all –b lokalne_ip

Wynik działania uruchomionego serwera zauważyć możemy w przeglądarce internetowej po wpisaniu lokalnego IP pod adresem:
http://localne_ip:8080/manamement-console

3.2 Uruchomienie usług (VoiceMailService, CallBlockingService, CallForwardingService)
Aby uruchomić usługi Mobicents należy w katalogu:
C:\mobicents\examples\call-controller2
Użyć polecenia ant:

    C:\mobicents\tools\ant\bin\ant.bat deploy-all

Czyli utworzyć plik .xml. Wykonanie tego polecenia poprawnie powiadamiane jest komunikatem BUILD SUCCESSFUL

Uruchomienie wszystkich usług poprawnie sprawdzić można w przeglądarce internetowej pod adresem IP na serwerze Mobicents (Services)

Services

Uruchomione usługi to:
• VoiceMailService – poczta głosowa
• CallBlockingService – blokowanie niepożądanych połączeń
• CallForwardingService – przekazywanie połączeń
Wszystkie 3 usługi wchodzą w skład przykładu call-controller2 zainstalowanego razem z serwerem Mobicents.

4. Konfiguracja klientów (hostów)
Do komunikowania się użytkowników użyliśmy aplikacji 3CX Phone (łatwy do konfiguracji i „łatwego” pokazania rejestracji użytkownika na serwerze)

Aby rejestracja przebiegła pomyślnie należy podan następujące parametry:
User name – nazwa użytkownika dzięki której będziemy się komunikować w sieci.
Domena – potrzebna do określenia domeny bądź adresu IP danej sieci.
Local port – port 5060 wykorzystywany w sesji SIP
Adres IP - (local_ip) na którym uruchomiliśmy serwer Mobicents.
Po zapisaniu zmian „Save” w pasku stanu można zobaczyć czy użytkownik został zarejestrowany czy też nie.

W taki sposób przedstawiony wyżej konfigurujemy klienta A (mobicents) oraz klienta B (vmail)

5. Komunikacja klientów (Sesja SIP)
5.1 Tradycyjna rozmowa
5.2 Blocking (blokowanie)

Wg tabeli profili zawartej w pliku
C:\mobicents\examples\call-controller2\scripts\profiles.bsh
User profile
Użytkownik mobicents oraz hugo są blokowani przez użytkownika torosvi. Nie mogą się do niego dodzwonić.
5.3 Forwarding (prziekierowanie)
W tym przykładzie dowolny użytkownik dzwoniący do użytkownika victor zostaje przekierowany do użytkownika torosvi, o ile zostanie to zaznaczone w profilu.
5.3 VoiceMail (poczta głosowa)
Dzwonimy do użytkownika torosvi, który nie jest zalogowany. Otrzymujemy komunikat “Begin recording after the tone”, po którym możemy zostawić wiadomość. Zostaje ona zapisana na dysku C: pod nazwą użytkownika, w naszym przypadku torosvi.wav – format .wav. Aby odebrać pocztę głosową należy zadzwonić na użytkownika vmail, odtwarzana jest informacja aby nacisnąć 1 w celu odsłuchania wiadomości, jednak po naciśnięciu serwer nie reaguje tak jak powinien. Usługa nie jest możliwa do zrealizowania w wersji Mobicents 1.0.03.GA, ponieważ istnieją dwa błędy, które to uniemożliwiają. Po pierwsze jest problem ze znalezieniem ścieżki do pliku z nagraniem poczty głosowej, po drugie mediaRA nagrywa dźwięk w formacie, którego sam nie potrafi odtworzyć (nagrywa au, odtwarza wav). Błędy te zostały już zlokalizowane i w najnowszej wersji serwera Mobicents powinny zostać poprawione. Co się okaże w najbliższym czasie.

Jeśli chodzi punkt 5 komunikacja klientów (przykładowe sesje SIP) umieszczę oraz opiszę je w najbliższym czasie.


  1. no udało nam sie:) i to najważniejsze;)

Leave a Reply