1 / 27

Praktikumsprojekt

Praktikumsprojekt. Vorlagen und Beispiele. . Dr. Martin Westphal, westphal@de.ibm.com Praktikum, Universität Karlsruhe WS 2008/2009 http://csl.ira.uka.de. Termin- und Eventplaner. Sie sollen einen sprachgesteuerten Termin-und Eventplaner erstellen

Télécharger la présentation

Praktikumsprojekt

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Praktikumsprojekt Vorlagen und Beispiele  Dr. Martin Westphal, westphal@de.ibm.com Praktikum, Universität Karlsruhe WS 2008/2009 http://csl.ira.uka.de

  2. Termin- und Eventplaner • Sie sollen einen sprachgesteuerten Termin-und Eventplaner erstellen • Schon mal einen wichtigen Termin vergessen? Das soll mit diesem Telefon-basierten System nicht mehr passieren. • Eingabe und Abfrage von Terminen. Auf Wunsch auch erinnern lassen. Andere Leute zu Events einladen und eingeladen werden. • Das alles soll kinderleicht möglich sein und den potentiellen Kunden dieses Services schmackhaft gemacht werden.

  3. Benutzer: Person, die das System benutzt oder benutzen will. Falls nicht gesondert vermerkt, ist ein Benutzer bereits beim System registriert. Termin: Ein Eintrag im Kalender zu dem ein Tag, eine Zeit und eine Dauer gehören. Gemeinsamer Termin: Termin zu dem mindestens ein Freund oder eine Gruppe eingeladen wurde. Freund: Ein anderer Benutzer, der zu eigenen Terminen eingeladen werden kann. Erinnerung/Erinnerungsanruf: Telefonische Benachrichtung für einen Termin. Vorlauf: Zeitspanne, um die der Erinnerungsanruf vor dem Startzeitpunkt des Termines erfolgen soll. Registrierung: Eine Person wird dem System bekannt gegeben. Als Informationen werden Name, PIN, usw eingetragen. Authentifizierung: Ein Benutzer weist sich im Laufe eines Anrufes dem System gegenüber mit seiner PIN aus. PIN: ... ... Beispiel-Terminologie

  4. Use Cases: Administration neuen Benutzer anlegen Benutzer löschen Benutzerdaten ändern Administrator Diese Use Cases werden nicht implementiert, sondern über direkten Datenbankzugriff vorgenommen. Man könnte hierfür auch ein Webinterface einrichten oder diese als Use Case des Benutzers definieren und als Funktion in die Anwendung einbauen (z.B. Benutzerdaten ändern).

  5. Use Cases: Termine <<include>> Tag festlegen neuen Termin anlegen ... <<extend>> (?) Termin suchen <<extend>> (nicht eingeloggt) <<include>> Authentifizierung Termin ändern Benutzer Termin löschen an Termin erinnern

  6. Use Cases: gemeinsame Termine ... ... Termin suchen <<include>> Freund einladen Benutzer Gruppe einladen eingeladener Benutzer an Termin erinnern

  7. Datenbankentwurf 1:n 1:0..1 Benutzer Termin Wiederholung BNummer 4digits Name string PIN 4digits TIndex integer BNummer 4digits Datum date Zeit time Dauer duration Typ enum TIndex integer Zeitraum (Tag, Woche, Monat, Jahr) Anzahl integer Wenn der Benutzername eindeutig ist, könnte die Authenifizierung auch über diesen erfolgen. In jedem Fall kann der Name zur Ansprache des Benutzers verwendet werden. Sollen lieber Vor- und Nachname verwendet werden? Die ‚enum‘-Typen sind noch zu spezifizieren wie im Beispiel Zeitraum.

  8. Dialogfluss Begrüßung Authentifizierung Hauptmenü Benutzernummer Termin anlegen Voice Nummer bestätigen falsch DTMF richtig PIN Eingabe nein count=2? falsch ja richtig

  9. Dialogskript: allgemeines Verhalten

  10. Dialogskript

  11. Neuen Termin anlegen ich möchte einen neuen Termin anlegen neuer Termin Termin eintragen einen neuen Termin bitte Termin festlegen Termin suchen wann ist der nächste Termin? nächster Termin (1) welche Termine habe ich heute? welche Termine habe ich morgen? Termin ändern (2) diesen Termin ändern die Dauer ändern Zeit ändern Termin verschieben Termin löschen (2) diesen Termin bitte löschen den zweiten Termin bitte löschen den vorigen Termin streichen Grammatik: Beispielsätze • Ist nicht eindeutig: ist der nächste ab jetzt gemeint oder derjenige nachdem zuvor gefundenen? • Wie ist das Konzept? Soll zunächst ein Termin gesucht werden, den man dann ändern oder löschen kannoder soll man äußern einen Termin ändern/löschen zu wollen, den man dann suchen muss?

  12. MRCP Umgebung einrichten Lokales VoiceWebmit Datenbank, Web Server, Voice Browser, Voice Server und VoIP Telefon

  13. Übersicht MRCP Umgebung Host System: Windows XP - 192.168.254.1 VMWarePlayer VM: Linux CentOS - 192.168.254.3 VoiceXML SJphone (VoIP phone) SIP WebSphere Application Server Voice Enabler (VoiceXML Browser) Apache (Web Server mit php) php Scripte, Grammatiken, Audiodateien MRCP SQL Voice Server (ASR + TTS) mySQL (Datenbank) Daten

  14. MRCP Umgebung einrichten • VMWare Player/Server installieren • VoiceServer Image kopieren (WVS) • VM konfigurieren und starten • VM Netzwerk konfigurieren • VM Image (CentOS Linux) startenlogin: root password: ibmwvs • WVS starten • VTK starten und für WVS konfigurieren

  15. Configure VMWare Image Host System: 192.168.254.1 VMWarePlayer with VM Image Check connection: > ipconfig > ping 192.168.254.3 VM: 192.168.254.3 Check connection: > ping 192.168.254.1

  16. CentOS Basics

  17. Netzwerkkarte unter CentOS einrichten 1

  18. Netzwerkkarte unter CentOS einrichten 2

  19. WebSphere Voice Server Basics Pfade: • AS=/opt/WebSphere/AppServer/ • VS=/opt/WebSphere/VoiceServer/ AppServer starten und stoppen: • cd $AS/bin; ./startServer.sh server 1 • cd $AS/bin; ./stopServer.sh server 1 VoiceServer Administration: • http://localhost:9090/admin Funktionstest: • cd $VS/firststeps; ./firststeps.sh

  20. Configure VTK for WVS rtsp://192.168.254.3/media/recognizer rtsp://192.168.254.3/media/synthesizer

  21. Grammatiktest über MRCP Voraussetzung: ASR MRCP Serverz.B. WebSphere Voice Server (WVS) • Interaktiv mit VTK (VoiceToolKit)Entwicklung, Funktionstest SISR • Batch-Test mit VTKAbschlusstest, Abdeckung • voiceTestCommand-Line Tool, nur WVS erforderlich

  22. 1) Interaktiver Test mit VTK

  23. 2) Batch-Test mit VTK • Testet große Anzahl Grammatiken und Audiodateien • Spezifikation von Spracherkenner-Parameter • Detailierte Ergebnisanzeige • Speichert, vergleicht und exportiert Daten mehrerer Testläufe • Direkte Einbindung des Transkriptionstools • Analyse der Erkennungsgenauigkeit

  24. 3) voiceTest cd /opt/WebSphere/VoiceServer/lib echo "1 2 3" > 123.txt ./voiceTest.sh synthesize –speak 123.txt –audioTTS 123.wav ./voiceTest.sh recognize –audioASR 123.wav –grammar builtin:grammar/digits –speech-language de_DE

  25. VoiceXML Testumgebungen

  26. VOICE Testcenter http://www.voice-community.de/index.aspx?page=200

More Related