Abstract
El projecte consisteix en crear una aplicació web que, en primera instància, podria actuar
d’àudio-guia d’un museu tot i que pot tenir altres utilitats. Aquestes podrien ser, per exemple,
un assistent a una tenda de roba o una aplicació d’ajuda per a cecs.
En aquest cas, l’usuari que visiti el museu, es podrà connectar a la xarxa Wifi des del seu
terminal i amb el navegador web, es connectarà a la càmera del seu telèfon mòbil i escanejarà
un codi QR situat al costat d’una obra d’art. Llavors, rebrà un àudio de veu amb l’explicació
d’aquesta obra.
L’aplicació s’allotja en un servidor Linux Ubuntu Server. A dins d’aquest, hi ha un
servidor Apache2, que junt amb llenguatge PHP és l’encarregat de proveir la interfície web i
la gestió de sessions a l’usuari.
Per altra banda, també s’hi allotjarà un servidor Asterisk, que proporciona les
funcionalitats d’una central telefònica. Asterisk gestionarà els usuaris SIP, rebrà les peticions
SIP i enviarà els àudios als terminals mòbils. El protocol SIP és un estàndard per a la
iniciació, manteniment i finalització de connexions multimèdia.
La connexió entre HTML5/JavaScript, és a dir, la plana web, i Asterisk, es produeix
mitjançant la API WebRTC. Aquesta API té funcions per a connectar, enviar peticions i
codificar/descodificar els àudios i vídeo que s’envien entre terminal mòbil i servidor.
Tant la informació de les sessions com la dels usuaris SIP, s’allotja en una base de dades
PostgreSQL. La gestió d’aquesta base de dades, es realitza amb codi PHP inserit a dins del
codi HTML5 o bé utilitzant el programa de gestió de PHPpgAdmin.
El proyecto consiste en crear una aplicación web que, en primera instancia, podría actuar
de audio-guía de un museo, a pesar de que puede tener otras utilidades. Estas podrían ser, por
ejemplo, un asistente en una tienda de ropa o una aplicación de ayuda para ciegos.
En este caso, el usuario que visite el museo se podrá conectar a la red Wifi desde su
terminal y, utilizando la cámara de su teléfono móvil, escaneará un código QR situado junto a
una obra de arte. Entonces, recibirá un audio de voz con la explicación de esta obra.
La aplicación se aloja en un servidor Linux Ubuntu Server, dentro del cual hay un servidor
Apache2, que junto con lenguaje PHP es el encargado de proveer la interfaz web y la gestión
de sesiones al usuario.
Por otro lado, también se alojará un servidor Asterisk. Este programa proporciona las
funcionalidades de una central telefónica. Asterisk gestionará los usuarios SIP, recibirá las
peticiones SIP y enviará los audios a los terminales móviles. El protocolo SIP es un estándar
para la iniciación, mantenimiento y finalización de conexiones multimedia.
La conexión entre HTML5/Javascript, es decir, la página web, y Asterisk, se produce
mediante la API WebRTC. Esta API tiene funciones para conectar, enviar peticiones y
codificar/descodificar los audios y vídeo que se envían entre terminal móvil y servidor.
Tanto la información de las sesiones como la de los usuarios SIP, se aloja en una base de
datos PostgreSQL. La gestión de esta base de datos se realiza con código PHP insertado
dentro del código HTML5 o bien utilizando el programa de gestión de PHPpgAdmin.
The project consists in creating a web application that, in first instance, could act as an
audio-guide of a museum, although this can have other utilities. These might be, for example,
an assistant in a tent of clothes or an application for helping blind people.
In that case, the user that visits the museum will be able to connect to the Wifi network
from his terminal and using his phone càmera, he will be aple to scan a QR code situated next
to an artwork. Then, he will receive an audio with the explanation of that artwork.
The application lays in a server Linux Ubuntu Server. Inside this server, there is an
Apache2 server, than together with PHP language is the responsible to provide the web
interface and the management of sessions to the user.
In the other hand, an Asterisk server will also be lodged. This program provides the
functionalities of a telephonic head office. Asterisk will manage the SIP users, this will
receive the SIP requests and this will also send the audios to the mobile terminal. The SIP
protocol is an standard used for the initiation, maintenance and ending of multimedia
connections.
The connection between HTML5/JavaScript, that means, the web page, and Asterisk, is
performed by means of the API WebRTC. This API has functions to connect, send requests
and encode/decode the audios and video sended between the mobile terminal and the server.
Information of the sessions as well as information of the SIP users, lays in a PostgreSQL
database. Management of this database, is done with PHP code inserted in the HTML5 code
or using the program of management of PHPpgAdmin.