Documente Academic
Documente Profesional
Documente Cultură
net/publication/220008380
CITATIONS READS
0 438
1 author:
Herminio Paucar C.
National University of San Marcos
2 PUBLICATIONS 0 CITATIONS
SEE PROFILE
All content following this page was uploaded by Herminio Paucar C. on 02 November 2014.
Resumen
Una de las principales características del estándar ISDB-T de la televisión digital terrestre es
la interactividad que permite al telespectador interactuar a través del televisor con
aplicaciones, como: T-Learning, T-Voting, T-Commerce, T-Goverment, entre otros. En este
panorama, se desarrolló una aplicación interactiva para el registro o solicitud de citas médicas
por televisión. Esta aplicación, permitirá a los pobladores con domicilios alejados de los
hospitales, reservar su cita médica remotamente. Para el desarrollo de esta aplicación, se
utilizaron los lenguajes Ginga NCL y Lua. Posteriormente, las pruebas de validación se
realizaron en un escenario implementado en laboratorio.
Palabras clave: Cita Médica, TdT, ISDB-T, middleware, Ginga-NCL, Lua, interactividad.
Abstract
One of the main features of ISDB-T digital terrestrial television is interactivity, allowing viewers
to interact via the TV applications, such as: T-Learning, T-Voting, T-Commerce, T-Goverment,
among others. In this scenario, we developed an interactive application for registration or
request appointments on television, this application will allow people with homes away from
hospitals, book your appointment remotely. For the development of this application is used
NCL and Ginga languages Lua, then the validation tests were performed in a laboratory
setting implemented.
1. Introducción
En Perú, el servicio de los centros de Salud públicos (hospitales del estado) [EsSalud, 2011]
[MINSA, 2011] son deficientes. Existe una inadecuada atención en la solicitud de citas
médicas en una determinada especialidad que genera disconformidad de la población.
Además, las personas con discapacidad y ancianos no tienen oportunidades iguales que una
persona normal. A la fecha, existen dos maneras de solicitar una cita médica, por teléfono y
personalmente en las oficinas del centro de salud, y recientemente por Internet. Los
pobladores que viven en lugares alejadas de la capital de provincia no cuentan con servicios
básicos de telecomunicaciones, como telefonía o Internet. Como consecuencia, no será
posible solicitar una cita médica mediante una llamada telefónica; por lo tanto la única manera
1
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
Por su naturaleza, la señal de televisión es la que tiene mayor cobertura frente a otros
servicios de telecomunicaciones, y aprovechando las bondades de la tecnología ISDB-T, se
plantea desarrollar una aplicación interactiva para el registro o solicitud de citas médicas por
televisión, donde el poblador o telespectador, desde su domicilio, por medio de la televisión,
podrá solicitar o reservar una cita médica en cualquiera de los centros de salud; de esta
manera, el poblador ahorrará tiempo y dinero que generaría al desplazarse desde su
domicilio. La información que registra el telespectador desde el televisor, se envía por Internet
que se utiliza como canal de retorno para la televisión digital terrestre. La información de
registro que envía el telespectador son: DNI (Documento Nacional de Identidad), Nombre,
Apellido Paterno, Apellido Materno, Edad, Sexo, Correo, Teléfono, Fecha de Nacimiento,
Departamento, Especialidad, Consulta, Día, Turno, entre otros. Como parte del análisis y
diseño de aplicativo, se presenta el modelamiento de la aplicación y su implementación
utilizando el lenguaje Ginga NCL [NCL, 2011] y Lua [Ierusalimschy, 2011]; la cual es simulada
en un escenario de laboratorio utilizando el Virtual Set Top Box Ginga NCL.
2. Trabajos Previos
Estos trabajos han sido la base para el diseño de nuestro proyecto de investigación.
• Redimensionamiento de pantalla.
• Ingreso de información del usuario para solicitar la cita médica.
• Reporte de envío de la información al hospital.
• Sincronización entre los objetos de media con acciones de ejecución e interrupción
realizadas por el usuario mediante el control remoto.
Para el modelado de esta aplicación, se utilizó el UML (Unified Modeling Language, Lenguaje
Unificado de Modelado) y ERWIN, con la finalidad de estandarizar el desarrollo de software,
que se representa a través de los diagramas de casos de uso, diagrama de secuencia y
modelado de datos.
2
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
Registrarse
Usuario
Selecciona opciones
3
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
*Ingresa Datos
*presiona enter
*Crear campo
presiona enviar
enviado Correctamente
Con respecto al modelado de datos, se tiene dos tablas Usuario e Historial; que almacenan la
información registrado
Usuario por el telespectador, como se muestra en la figura 3.
DNI Historial
Nombre id Historial
Apellido Paterno
Control
Apellido Materno
Especialidad
Edad
Consulta
Sexo
Dia
Correo
Turno
Teléfono
DNI (FK)
Fecha de Nacimiento
Departamento
4
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
Para el desarrollo de este aplicativo interactivo, se utilizó el lenguaje NCL. NCL es una
extensión de XML (eXtensible Markup Language, Lenguaje de Etiquetado Extensible) que
permite representar las imágenes en la pantalla del televisor. Asimismo se utilizó el lenguaje
Lua para el procesamiento y envío de datos por Internet, como canal de retorno. Como
herramienta de desarrollo, para esta aplicación se utilizó el IDE (Integrated development
environment, entorno de desarrollo integrado) Eclipse [Eclipse, 2011], conjuntamente con el
plugin (módulo de software) Ncl Eclipse [NCLEclipse, 2011] y Lua Eclipse [LuaEclipse, 2011].
El código fuente de la aplicación interactiva contiene varios archivos de tipo NCL y Lua, que
no podrían describirse en este artículo por el tamaño que presentan. Es por ello que se
describirán los más representativos.
En la figura 4, se muestra una parte del código principal NCL donde se aprecia la
presentación del botón de inicio de interactividad y los archivos media (png y lua) que
representan los botones que serán mostrados en la pantalla principal.
<mediadescriptor="dBotonInteractivo"src="imagenes/botoninteractivo.png"type="im
age/png"id="botonInteractivo"/>
<media
descriptor="dBanner1"src="imagenes/banner1.png"type="image/png"id="mBanner1"/>
<media
descriptor="dBanner2"src="imagenes/banner2.png"type="image/png"id="mBanner2"/>
<media
descriptor="dAvisoFinal"src="imagenes/avisofinal.png"type="image/png"id="mAviso
Final"/>
<media
descriptor="dBotonSalir"src="imagenes/botonsalir.png"type="image/png"id="botonS
alir"/>
<mediatype="application/x-ginga-settings"id="programSettings">
<propertyname="service.currentKeyMaster"value="inputIdx"/>
</media>
<mediaid="input"src="Lua/inputtext.lua"descriptor="dsInput">
<areaid="select"/>
<propertyname="text"/>
</media>
En la figura 5, se muestra una parte del código Lua. Este código almacena los campos
ingresados por el usuario en un archivo tipo texto, para después enviar por el canal de
retorno. Este código Lua recibe datos del código NCL.
5
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
localNom = {
"nombre.txt"
,"apellidop.txt"
,"apellidom.txt"
,"dni.txt"
,"telefono.txt"
,"correo.txt"
,"fechan.txt"
,"departamento.txt"
,"control.txt"
,"especialidad.txt"
,"dia.txt"
,"turno.txt"
,"consulta.txt"
}
localdim = 9
localdx, dy = canvas:attrSize()
canvas:attrFont('vera', 1*dy/13)
functionescribirPalabra(x,y,nom)
canvas:attrColor('white')
canvas:drawText(x,y*dy/19,nom)
canvas:flush()
end
functionescribir(x,y,nom)
fl = assert(io.open("../Datos/"..nom,"r"))--funciona perfectttttttt
txt = fl:read("*all")
fl:close()
En la figura 6, se muestra una parte del código Lua. Este código envía los datos ingresados
por el usuario para el registro de la cita médica. Los datos son enviados por el canal de
retorno.
function subirDatos()
tcp.execute(
function (
tcp.connect(host, 80)
--En este comando deben ir todos los parametros, osea los campos a almacenar
en la base de datos
local url = "GET http://"..host.."/registro/registro.php?
nombre="..P[1].."&&apellidoP="..P[2].."&&apellidoM="..P[3].."&&dni="..P[4].."&&t
elefono="..P[5].."&&correo="..P[6].."&&fechaNacimiento="..P[7].."\n"
tcp.send(url)
end
)
end
Los componentes de interactividad para la solicitud o registro de cita médica por televisión se
divide en lado del telespectador, lado del hospital y el canal de retorno, como se muestra en
la figura 7.
6
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
Lado del hospital. En este componente se encuentra un servidor con la base de datos con
las tablas de Usuario e Historial, donde se almacena la información enviada por el
telespectador. Esta información se envía desde el lado del telespectador a través de Internet,
como canal de retorno.
En este servidor se encuentra instalado el motor de base datos MySQL y el servicio apache
Web. El servicio apache Web permite la conexión entre el código Lua ubicado en el lado del
telespectador, el servidor, normalmente se encuentran ubicado en los Centros de Salud
(hospitales).
5. Pruebas y Resultados
7
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
En las figuras 9, 10, 11, 12, 13, 14 y 15, se muestran las principales pantallas capturadas de
las pruebas de interactividad realizadas en laboratorio.
8
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
En la figura 11, se muestra la pantalla con dos regiones: la región inferior posee el curso de
escritura, este cursor nos indica que debemos ingresar un texto.
En la figura 12, se muestra la pantalla, una vez ingresado todos los datos del usuario, por lo
tanto podemos observar eligiendo el botón mostrar datos ingresados.
9
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
.
Figura 12: Selección del botón para mostrar los datos ingresados
En la figura 13, se muestra la pantalla con los datos ingresados, antes enviar los datos al
servidor. Para salir de esta pantalla, presionar el botón de color verde.
En la figura 14, se muestra la pantalla lista para enviar los datos ingresados; automáticamente
la aplicación verifica que todos los datos hayan sido ingresados correctamente. Una vez
verificada la información, la aplicación procederá a enviar la información al servidor a través
del canal de retorno.
10
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
En la figura 15, se muestra la pantalla después de enviar los datos al servidor. Si el envío fue
correctamente, mostrará el mensaje “información enviada con éxito”. Para regresar a la
pantalla inicial, presionamos el botón verde.
6. Conclusiones
El registro de cita médica por televisión permitirá la inclusión social de las personas de menor
ingreso económico y con domicilio alejado de los hospitales.
11
III CONGRESO INTERNACIONAL DE COMPUTACIÓN Y TELECOMUNICACIONES
La señal de televisión se caracteriza por presentar mayor cobertura que otros servicios de
telecomunicaciones, como el teléfono; por lo tanto, la aplicación interactiva desarrollada,
llegará a la mayoría de la población.
Esta aplicación de registro de cita sirve de base para el desarrollo de aplicaciones de mayor
importancia en el área de la salud y la educación.
Para el desarrollo de esta aplicación, se utilizaron los lenguajes NCL y Lua, con las librerías
tcp lua para el envío de datos a través del canal de retorno.
Referencias
12