SlideShare una empresa de Scribd logo
1 de 153
Descargar para leer sin conexión
PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR
SEDE IBARRA
(PUCE-SI)
ESCUELA DE INGENIERÍA
INFORME FINAL DEL PROYECTO
“Diseño e implementación de una Web 2.0 para una Red
Social “HUNABKU” perteneciente al Club de Observación
Galileo y su integración a las redes sociales de Facebook y
Twitter mediante API´s utilizando software GNU”.
Línea de Investigación: Investigaciones de nuevas tendencias de tecnología
PREVIO LA OBTENCIÓN DEL TÍTULO DE
“INGENIERO EN SISTEMAS”
AUTOR : Neptalí Mena Cisneros
ASESOR : Ing. Ismael Castro
IBARRA – MAYO 2011
.:: Neptalí Mena Cisneros ::. 2
RESUMEN EJECUTIVO
El presente proyecto tuvo como finalidad el desarrollo de una plataforma Web 2.0
denominada Red Social “HUNABKU”, que permitirá a los miembros del Club de
Observación “Galileo” a nivel provincial y nacional, mantener una comunicación
con todas las personas involucradas dentro de ella, a través de la integración con
las Redes Sociales más utilizadas actualmente como son FACEBOOK Y TWITTER.
Para realizar el estudio se tomó a los miembros del Club Galileo Imbabura como
población, de la cual se obtuvieron los datos necesarios para diagnosticar cuanta
aceptación tendría el desarrollo del sistema propuesto en este proyecto.
Los resultados muestran que, aproximadamente cerca del 80% de los encuestados
utilizan el Internet y las Redes Sociales, así mismo se muestra como todos los
encuestados es decir el 100% tienen una cuenta en una Red Social, el 76% ingresan
a las Redes Sociales para revisar sus estados o notificaciones de amigos, así
mismo, de grupos o de la Red en la que se encuentran inmersos. Esto indica que la
plataforma de la Red Social desarrollada tendrá gran aceptación por parte de los
socios del Club Galileo.
El sistema diseñado está basado en una arquitectura cliente/servidor desarrollado
con herramientas libres para el desarrollo del sitio Web: Joomla!, MySQL y PHP,
JavaScript y la plataforma de Facebook para integración, la administración de la
Red Social HUNABKU, está implementado con el mismo CMS Joomla! y bajo el
componente JomSocial v2.0.2, componente de terceros que se encarga de la
administración de la red social.
Entonces podemos afirmar que el sitio web es una completa y potente Web 2.0
que está diseñada con Joomla! un sistema GNU y con la plataforma de integración
de las API’s de Facebook y Twitter.
.:: Neptalí Mena Cisneros ::. 3
AUTORÍA
Yo, Neptalí Mena Cisneros, portador de la cédula de ciudadanía Nº 100265829-0
declaro bajo juramento que la presente investigación es de total responsabilidad
del autor, y que se han respetado las diferentes fuentes de información realizando
las citas correspondientes.
_______________________
NEPTALÍ MENA CISNEROS
.:: Neptalí Mena Cisneros ::. 4
PRESENTACIÓN
En vista del gran avance tecnológico y de la continua preocupación del hombre por
estar bien informado, este proyecto busca dotar de una innovadora forma de
comunicarse utilizando el Internet, la Web 2.0, y en conjunción las Redes Sociales,
para mantener comunicados a los miembros del Club de Observación Galileo, por
esta razón es que se decide implementar la Red Social “HUNABKU”. Este proyecto
se encuentra estructurado en cinco capítulos: Marco Teórico, Diagnóstico,
Propuesta, Análisis de Impactos y Conclusiones & Recomendaciones.
En el primer capítulo se ha realizado una exhaustiva investigación acerca de la
web2.0 y las redes sociales sus orígenes y su evolución hasta llegar a ser lo que hoy
conocemos como las redes más potentes como son Facebook y Twitter, de igual
forma se detalla cómo funciona la Plataforma de Facebook, su estructura y las
diferentes formas de utilizarlo además se incluye un estudio de conectividad entre
el Sitio Web2.0 y las API’s de la Plataforma de Facebook.
En el segundo capítulo se buscó diagnosticar los actuales medios de comunicación,
conocer cuan aceptable sería la implementación del sistema propuesto en este
proyecto; Para lo cual se tomó a los miembros del Club de Observación Galileo de
Imbabura para obtener los resultados necesarios para este diagnóstico.
Una vez conocida la realidad de los actuales medios de comunicación y de cuan
aceptable sería el desarrollo del sistema que propone este proyecto, el tercer
.:: Neptalí Mena Cisneros ::. 5
capítulo muestra como se desarrolló el mismo, teniendo en consideración las
técnicas y métodos que se utilizan para el desarrollo de software; Este capítulo
contiene el análisis, diseño, desarrollo y pruebas del sistema basados en una
arquitectura de tres capas: Capa de Datos [Back End], Capa de Negocios y Capa de
Presentación [Front End].
En el cuarto capítulo se realiza un análisis de los principales impactos que generó el
sistema en los que se mencionan impactos: tecnológico, educativo, económico y
social-institucional.
Para finalizar este trabajo de investigación y desarrollo se plantea una serie de
conclusiones y recomendaciones que podrían ser tomadas en cuenta en el
desarrollo de futuras investigaciones y aplicaciones que sigan esta misma línea o
pretendan dar una nueva perspectiva.
Este trabajo de investigación se pone a disposición de todas aquellas personas:
miembro del Club Galileo, investigadores del fenómeno OVNI, aficionados,
estudiantes de la PUCE-SI y público en general que desean conocer y profundizar
en el ámbito de la comunicación en internet y las de redes sociales.
.:: Neptalí Mena Cisneros ::. 6
DEDICATORIA
El sistema que se desarrolló en este proyecto me ha llenado de tantas alegrías,
triunfos y mucho conocimiento, así como de trabajo, esfuerzo y mucho sacrificio y
lo dedico a cinco personas que supieron guiarme y ayudarme en mi vida y en el
transcurso de mi carrera universitaria.
A mis Padres, que día a día en su trabajo incansable de guiarme y educarme han
entregado lo mejor de sí, para formar un hombre de bien.
Ing. Ismael Castro, compañero, tutor y sobre todo un gran amigo, que de él
aprendí a desarrollar y buscar nuevas tecnologías que se adapte a mi manera de
crear sistemas, dando solución a muchas cosas y haciéndolo divertido.
Ing. Eugenio Salazar, que me impulso en el medio creativo del mundo multimedia y
me apoya constantemente a surgir en el medio laboral y competitivo.
Ing. Jaime Rodríguez T., que supo darme su confianza y supo mostrarse amigo, y
quien con sus conocimientos, hizo que el espíritu inquieto que estaba en mi, irradie
y siga buscando más respuestas a lo existe más allá de todo este mundo.
.:: Neptalí Mena Cisneros ::. 7
AGRADECIMIENTO
A Dios por haberme concedido la oportunidad de culminar mi carrera, a mis padres
y hermana que con entusiasmo compartieron mis triunfos y derrotas, a todos mis
familiares quienes siempre estuvieron pendientes de mi, a todos mis compañeros,
colegas y amigos de quienes llevo gratos recuerdos, a los docentes de la escuela de
Ingeniería que sin reserva supieron impartir sus conocimientos, a la PUCE-SI y la
Escuela de Ingeniería por recibirme en sus aulas y permitir desarrollarme dentro de
un ambiente donde predomina los valores cristianos; A todos y cada uno de ellos
muchas gracias.
.:: Neptalí Mena Cisneros ::. 8
ÍNDICE
RESUMEN EJECUTIVO 2
AUTORIA 3
PRESENTACIÓN 4
DEDICATORIA 5
AGRADECIMIENTOS 7
ÍNDICE 8
CAPÍTULO l
MARCO TEÓRICO
1.1 INTRODUCCIÓN A LAS REDES SOCIALES Y WEB 2.0 14
Red Social 17
Visión de la Web 2.0 19
1.1.1 Historia de las Redes Sociales en Internet 19
1.1.2 Arquitectura de una Red Social con Web 2.0 21
Componente Social 21
Distribución 22
Aplicación 23
Apis de terceros 23
1.1.3 Características y requerimientos de una Red Social basada en 24
una Web2.0
1.2 CONCEPTOS DE LA PLATAFORMA DE FACEBOOK 27
1.2.1 Núcleo API. 27
Graph API 27
La Autentificación 28
Los Social Plugins 28
Los SDK 28
.:: Neptalí Mena Cisneros ::. 9
1.2.2 Social Plugins 30
Like Button (Botón Me Gusta) 30
Activity Feed (Actividad Reciente) 31
Recommendations (Recomendaciones) 32
Like Box (Caja de Me Gusta) 32
Login Button (Botón de Inicio de Sesión) 33
Registration (Registro) 34
Facepile (Pila de fotos) 34
Comments (Comentarios) 35
Live Stream (Transmisión en vivo) 36
1.2.3 Facebook SDKs 37
JavaScript SDK 37
Facebook SDK PHP 38
1.2.4 API’s Avanzadas 39
Facebook Markup Languaje (FBML) 40
Integración con Facebook Chat 40
Facebook Anuncios API 41
1.3 FUNCIONALIDAD DE LA PLATAFORMA DE FACEBOOK 42
1.3.1 Introducción a la Plataforma de Facebook 42
1.3.2 Descubriendo Facebook 42
Noticias 43
El Perfil 44
El Gráfico Social 45
1.3.3 ¿Qué es la Plataforma de Facebook? 46
Puntos de integración 46
Directorio de aplicaciones de Facebook 47
Aplicaciones Verificadas por Facebook 48
Aplicaciones de Facebook Recomendadas 48
1.3.4 Arquitectura de las Aplicaciones de Facebook 49
1.3.5 Legado API 50
1.3.5.1 Legado REST API 51
1.3.5.2 Legado FQL 54
1.3.5.3 Legado JavaSript SDK 56
.:: Neptalí Mena Cisneros ::. 10
1.4 SERVICIOS WEB 58
1.4.1 Estructura de un sitio web 2.0. 59
1.4.2 Confuguración de un CMS GNU 59
1.4.3 Adaptación de API’s desarroladas para la web 61
CAPÍTULO ll
DIAGNÓSTICO
2.1 ANTECEDENTES DIAGNÓSTICO 62
2.2 OBJETIVOS 63
2.1.1 Objetivo General. 63
2.1.2 Objetivos Específicos. 63
2.3 METODOLOGÍA 64
2.3.1 Métodos. 64
Método Descriptivo 64
Método Experimental 64
2.3.2 Técnicas. 64
Observación 64
Entrevista 64
Encuesta 64
2.3.3 Instrumentos. 65
2.4 ANÁLISIS DE RESULTADOS 65
Observación. 65
Entrevista. 65
Encuesta. 68
2.5 ANÁLISIS DE FACTIVILIDAD 77
Factibilidad Técnica. 77
Factibilidad Económica. 77
Factibilidad Operativa. 78
.:: Neptalí Mena Cisneros ::. 11
2.6 ANÁLISIS FODA 78
Análisis Interno del Club Galileo. 78
Análisis Externo del Club Galileo. 79
Estrategias FA, FO, DO, DA. 80
2.7 INTERPRETACIÓN DEL DIAGNÓSTICO. 81
CAPÍTULO lll
PROPUESTA
3.1 INTRODUCCIÓN 82
3.2 PLATAFORMA 82
3.2.1 Hardware. 82
3.2.2 Software. 83
3.3 DESCRIPCIÓN DEL SISTEMA 86
3.3.1 Sitio Web 87
3.3.2 Usuarios 88
3.3.3 API’s de Integración 88
3.3.4 Plataforma de Facebook 88
3.4 DISEÑO DEL SOFTWARE 89
3.4.1 Diseño e Implementación de la Red Social “Hunabku” 89
3.4.1.1 Instalación e implementación de Joomla! 89
3.4.1.2 Instalación e implementación del Sistema JomSocial 96
3.4.2 Creación y Conexión Facebook API’s 113
3.4.2.1 Construyendo nuestras Aplicaciones 113
Facebook Connect 113
Configuración de usuario 116
Facebook configuración de inicio de sesión 119
Configuración de permisos 120
Trabajando con API’s de Facebook 124
Facebook Markup Language (FBML) 126
Utilizando Facebook Query Language (FQL) 128
Scripts con Facebook JavaScript 129
Construyendo API’s con Facebook Developers Tools 130
.:: Neptalí Mena Cisneros ::. 12
Desarrollo de páginas para Facebook 130
Creación de contenidos para páginas de perfil 135
3.4.3 Datos del Servidor y Web 136
3.4.4 Usuarios Finales 137
3.5 PRUEBAS DEL SISTEMA 139
Conexión red Social/Facebook vía API’s 139
CAPÍTULO lV
ANÁLISIS DE IMPACTOS
4.1 IMPACTO TECNOLÓGICO 143
4.1.1 Evaluación del Impacto Tecnológico. 144
4.1.2 Análisis. 145
4.2 IMPACTO EDUCATIVO 146
4.2.1 Evaluación del Impacto Educativo. 147
4.2.2 Análisis. 147
4.3 IMPACTO ECONÓMICO 148
4.3.1 Evaluación del Impacto Económico. 149
4.3.2 Análisis. 149
4.1 IMPACTO SOCIAL E INSTITUCIONAL 150
4.1.1 Evaluación del Impacto Tecnológico. 151
4.1.2 Análisis. 151
CAPÍTULO V
CONCLUSIONES Y RECOMENDACIONES
5.1 CONCLUSIONES 152
5.2 RECOMENDACIONES 153
.:: Neptalí Mena Cisneros ::. 13
BIBLIOGRAFÍA 154
ANEXOS 156
A1. FORMATO DE ENCUESTA 157
A2. FOTOGRAFIAS DE LA SOCIALIZACIÓN 158
A3. PAPER 159
A4. TABLA DE LA WEB 2.0 160
A5. ANTEPROYECTO 161
A6. CARTA DE SATISFACCIÓN DEL PROYECTO 162
.:: Neptalí Mena Cisneros ::. 14
CAPÍTULO I
MARCO TEÓRICO
1.1 INTRODUCCIÓN A LAS REDES SOCIALES Y WEB 2.0
1.1.1. RED SOCIAL1
. En el ámbito de Internet, las redes sociales son páginas que
permiten a las personas conectarse con sus amigos e incluso realizar nuevas
amistades, a fin de compartir contenidos, interactuar y crear comunidades
sobre intereses similares: trabajo, lecturas, juegos, amistad, relaciones
amorosas, etc.
Figura 1. Relación de personas en una Red Social
Bajo el concepto de Redes, que son formas de interacción social, definida como un
intercambio dinámico entre personas, grupos e instituciones en contextos de
complejidad. Un sistema abierto y en construcción permanente que involucra a
conjuntos que se identifican en las mismas necesidades y problemáticas y que se
organizan para potenciar sus recursos.
Una sociedad fragmentada en minorías aisladas, discriminadas, que ha
desvitalizado sus redes vinculares, con ciudadanos carentes de protagonismo en
procesos transformadores, se condena a una democracia restringida. La
intervención en red es un intento reflexivo y organizador de esas interacciones e
intercambios, donde el sujeto se funda a sí mismo diferenciándose de otros.
1
Fuente: http://es.wikipedia.org/wiki/Red_social
.:: Neptalí Mena Cisneros ::. 15
Entonces, en las redes sociales en Internet tenemos la posibilidad de interactuar
con otras personas aunque no las conozcamos, el sistema es abierto y se va
construyendo obviamente con lo que cada suscripto a la red aporta, cada nuevo
miembro que ingresa transforma al grupo en otro nuevo.
Al crear una red social, se empieza por hallar allí otras personas con quienes
compartir nuestros intereses, preocupaciones o necesidades y aunque no
sucediera más que eso, eso mismo ya es mucho porque rompe el aislamiento que
suele aquejar a la gran mayoría de las personas, lo cual suele manifestarse en
retraimiento y otras veces en excesiva vida social sin afectos comprometidos.
Las redes sociales en Internet suelen posibilitar que pluridad y comunidad se
conjuguen y allí quizás esté gran parte de toda la energía que le da vida a los
grupos humanos que conforman esas redes. Las redes sociales dan al anónimo
popularidad, al discriminado integración, al diferente igualdad, al malhumorado
educación y así muchas cosas más.
Las redes sociales se basan en cinco pilares principales, los cuales son necesarios
para poder lograr el éxito:
• Organización en la red.
• Pequeñas influencias
económicas.
• Métricas Relevantes.
• Tipología de la red.
• Identidad Virtual.
Figura 2. Los cinco pilares de una Red Social
Existen diferentes tipos de redes sociales, estas se pueden clasificar por los
intereses que acercan al usuario a la red social, estas pueden ser de 4 tipos:
Red
Social
Organización
en la Red
Métricas
relevantes
Tipología de
la red
Influencias
económicas
Identidad
Virtual
.:: Neptalí Mena Cisneros ::. 16
• Sociales: se crean comunidades on line para que la gente intercambie
experiencias.
• Profesionales: son aquellas redes en la cuales se intercambia información
profesional.
• Parejas: redes para buscar parejas y amigos.
• Buscar personas: redes que ayudan a retomar el contacto con viejos amigos
y antiguos compañeros de trabajo.
Figura 3. Clasificación de las Redes Sociales.
.:: Neptalí Mena Cisneros ::. 17
1.1.2. WEB 2.02
. Es la representación de la
evolución de las aplicaciones tradicionales
hacia aplicaciones web enfocadas al
usuario final. La Web 2.0 es una actitud y
no precisamente una tecnología, dicho en
otras palabras “es una manera de
entender internet, un internet donde los
usuarios pueden interactuar con otros
usuarios y ser participes activos de la red”.
Ahora no solo se navega y se obtiene
información, ahora se es una entidad
dentro de internet.
La Web 2.0 es la transición que se ha dado de aplicaciones tradicionales hacia
aplicaciones que funcionan a través de la web enfocada al usuario final. Se trata de
aplicaciones que generen colaboración y de servicios que reemplacen las
aplicaciones de escritorio.
Es una etapa que ha definido nuevos proyectos en Internet y está preocupándose
por brindar mejores soluciones para el usuario final. Muchos aseguran que hemos
reinventado lo que era el Internet, otros hablan de burbujas e inversiones, pero la
realidad es que la evolución natural del medio realmente ha propuesto cosas más
interesantes como lo analizamos diariamente en las notas de Actualidad.
Y es que cuando el web inició, nos encontrábamos en un entorno estático, con
páginas en HTML que sufrían pocas actualizaciones y no tenían interacción con el
usuario.
Pero para entender de donde viene el término de Web 2.0 tenemos que
remontarnos al momento en que Dale Dougherty de O’Reilly Media utilizó este
término en una conferencia en la que compartió una lluvia de ideas junto a Craig
Cline de MediaLive. En dicho evento se hablaba del renacimiento y evolución de la
web.
Constantemente estaban surgiendo nuevas aplicaciones y sitios con sorprendentes
funcionalidades. Y así se dio la pauta para la Web 2.0 Conference que arrancó en el
2004 y hoy en día se realiza anualmente en San Francisco, con eventos adicionales
utilizando la marca en otros países.
2
Fuente: http://es.wikipedia.org/wiki/Web_2.0
Figura 4. Interconexión de personas mediante internet
.:: Neptalí Mena Cisneros ::. 18
En la charla inicial del Web Conference se habló de los principios que tenían las
aplicaciones Web 2.0:
x La web es la plataforma
x La información es lo que mueve al Internet
x Efectos de la red movidos por una arquitectura de participación.
x La innovación surge de características distribuidas por desarrolladores
independientes.
x El fin del círculo de adopción de software pues tenemos servicios en beta
perpetuo.
Existen tres aspectos fundamentales
en donde se apoya la web 2.0:
• Tecnología: las nuevas
herramientas tecnológicas y el
mayor ancho de banda, han
facilitado crear aplicaciones web
más interactivas.
• Comunidad: gracias al crecimiento
de la gente que utiliza internet y la
nueva filosofía adquirida a través
de las nuevas tecnologías se puede
acceder a un mayor número de
contenidos.
• Arquitectura Software: las nuevas arquitecturas fundamentadas en internet
facilitan el desarrollo de aplicaciones reutilizando y/o extendiendo
aplicaciones existentes.
Tecnología
Comunidad
Arquitectura
Software
Figura 5. Interconexión de personas mediante internet
.:: Neptalí Mena Cisneros ::. 19
VISIÓN DE LA WEB 2.0
En la web 2.0 se están creando diferentes nichos de aplicaciones.
Para más información acerca de un organigrama de redes sociales ver en el
Anexo1 Mapa de la Web 2.0
1.1.1 HISTORIA DE LAS REDES SOCIALES EN INTERNET.
El origen de las redes sociales se remonta, al menos, a 1995, cuando Randy
Conrads creó el sitio web classmates.com. Con esta red social se pretende que la
gente pueda recuperar o mantener el contacto con antiguos compañeros del
colegio, instituto, universidad, entre otros.
Figura 6. Pilares hacia donde se encuentran orientados la Web 2.0
.:: Neptalí Mena Cisneros ::. 20
3
Varios han sido los fines que han movido la creación de redes sociales a través del
tiempo. Desde 1997 hasta hoy el más representativo ha sido diseñar un lugar para
el encuentro de miles de personas que tengan intereses en común.
a. En 1997 se creó Sixdegrees, este fue el primer servicio que permitió crear un
perfil en la web, agrupar a los contactos directos e intercambiar mensajes con
ellos.
b. Para 1999 se creó LiveJournal.com, este fue uno de los primeros servicios de
redes sociales en ofrecer blogs y diarios en línea.
c. En el 2001 aparece Ryce.com, y nace con ella la primera red social
especializada, en la actualidad ésta agrupa por lo menos a 500 mil
profesionales.
d. En el 2002 nace Friendster que fue la primera en tener un sistema inteligente
capaz de relacionar a los usuarios de la red según sus gustos.
e. También en este año nace Fotolog, la primera red social que nace con el fin de
intercambiar fotografías.
f. Last FM nace en el 2002, en principio con el objetivo de ser una emisora en
línea, pero con el tiempo se convierte en una red social movida por el interés
en la música.
g. En el 2003 se crea linked in, una red social con el fin de propiciar las relaciones
empresariales.
h. En el 2003 nace My Space, tal vez la red más grande del momento agrupando a
más de 250 millones de usuarios.
i. En ese mismo año nace MSN Spaces llamado hoy Windows Live Spaces, que
tiene 100 millones de visitantes únicos al mes. En Colombia hay 1.5 millones
de usuarios de esta red.
j. También en el 2003 nace Hi5 que, hoy por hoy, tiene 50 millones de cuentas
activas.
k. K. Flickr nace en el 2004 como una red social que funciona a través del servicio
de compartir fotografías.
l. En este año también nace Orkut, la red social de Google con gran popularidad
en Brasil y La India.
m. Facebook, la sensación del momento nace en el 2004, tiene más de 37
millones de cuentas activas y 50 millones de usuarios diarios.
n. En el 2005 nace Yahoo 360, la red social de esta empresa que cuenta con
servicio de correo, calendario, fotos, eventos, blog y música.
o. En el 2005 también nace Bebo, una red muy básica con el fin de contactar
amigos e intercambiar multimedia.
3
http://www.medellin.edu.co/sites/Educativo/Docentes/Noticias/Paginas/historiaderedessociales.aspx
.:: Neptalí Mena Cisneros ::. 21
p. Y la última en la cadena ha sido Xing, esta nació en el 2006 con el fin de
agrupar ejecutivos permitiéndoles compartir datos, crear agendas conjuntas y
construir discusiones en torno a un tema común.
1.1.2 ARQUITECTURA DE UNA RED SOCIAL CON WEB 2.0
Para poder construir una aplicación web 2.0 basada en redes sociales lo primero es
tener claro los cuatro pilares básicos de
este tipo de aplicaciones:
• Componente social: fundamental
en el desarrollo de una aplicación de
este tipo. Se describe que aspecto
social va implementar.
• Aplicación: tecnologías a utilizar
para desarrollar la aplicación.
• Distribución: definir las formas de
como otras aplicaciones interactúan
con la nuestra.
• Apis de 3º: incrustar en nuestra aplicación Apis de terceros para aumentar
la interactividad de la aplicación.
COMPONENTE SOCIAL
El componente social define la forma que la comunidad se va a intercomunicar e
interactuar. También define el fin y la temática de la red social que se crea.
Lo más importante en este apartado es la comunicación entre los usuarios y como
los usuarios pueden obtener beneficios de las aportaciones de otros usuarios.
Figura 7. Cuatro pilares de la arquitectura de Web 2.0
.:: Neptalí Mena Cisneros ::. 22
DISTRIBUCIÓN
Una parte principal también de una buena aplicación web 2.0 es la forma de
interactuar con las diferentes aplicaciones existentes y futuras en el mercado. Para
ello se utilizan diferentes protocolos existentes así como servicios estándares que
faciliten la interacción entre dichas aplicaciones.
Figura 9. Comunicación de los componentes sociales
Figura 10. API’s – Widgets - Syndication
.:: Neptalí Mena Cisneros ::. 23
APLICACIÓN
La selección de la tecnología que se utilice para implementar y hacer correr la
aplicación web también es muy importante ya que con ellas podremos avanzar
más rápidamente.
API’S DE TERCEROS
La integración con Apis de terceros puede ser la clave para la aplicación a
desarrollar ya que con ello se conseguirá muchas interactividad con los usuarios y
también entre ellos.
desarrollar ya que con ello se conseguirá muchas interactividad con los usuarios y
también entre ellos.
Figura 11. Aplicaciones para Webs 2.0
Figura 12. API’s de terceros para web 2.0
.:: Neptalí Mena Cisneros ::. 24
1.1.3. CARACTERISTICAS Y REQUERIMIENTOS DE UNA RED SOCIAL BASADA EN
UNA WEB 2.04
Menos es más
Un principio más estético y que rige el desarrollo de las interfaces en el planeta
web 2.0 viene directo de la Bauhaus participa de la idea de "menos es más". Si la
web de las punto com (la web 1.0) se trataba de ofrecer portales donde todo se
podía obtener, llenos de opciones, botones, imágenes en movimiento, inteligencia
artificial, etc.la web 2.0 consiste en la web de la simplicidad: desarrollar interfaces
muy simples, para una función muy específica y con un sistema de funcionamiento
muy básico. No hay más que comparar un portal de la web 1.0 con Google para
notar la diferencia.
Usabilidad como criterio clave
Siguiendo de nuevo la filosofía Bauhaus, las aplicaciones web 2.0 abandonan todas
las exageraciones de estilo de la web 1.0, la idea de crear "interfaces alternativas"
muy innovadoras pero difíciles de utilizar. De nuevo, basta mirar Google o
examinar un Ipod para ver esta filosofía de la usabilidad en acción. Además de ser
un elemento estético clave, también es una pieza importante en el desarrollo
económico. Una interface útil que permite hacer buenas búsquedas, entender
cada paso que se hace, tener confianza en el sistema de pago de comercio
electrónico etc. marca la diferencia entre un sistema fácil de usar, y que genera
confianza y por tanto permite generar negocio y un sistema complejo y poco
amigable que hace mucho más difícil la transacción económica.
Interfaces diseñadas con un único objetivo básico
Este es otro de los puntos clave en el desarrollo de la web 2.0. Si la web 1.0
apostaba por los portales en los que se acumulaba toda la información (así no era
raro encontrarse un portal donde uno podía ver su horóscopo, la hora, el tiempo
que hacía, su correo electrónico, noticias de música, la ventana del chat, artículos
de revista, etc.) la web 2.0 desarrollar aplicaciones sencillas, pensadas para un
único objetivo. De nuevo, la fuente de inspiración es Google que tiene una
interface específica para cada función, optimizada para llevar a cabo una tarea de
la forma más sencilla y usable posible: www.google.com para los buscadores,
4
http://www.redessocialesdistribuidas.net
.:: Neptalí Mena Cisneros ::. 25
www.gmail.com para el correo electrónico, reader.google.com para consultar RSS,
etc.
Acercamiento universalista e inclusivo
La plasticidad de las tecnologías de la información, que permiten reconfigurar los
datos a ofrecer en diferentes formatos de forma que personas con dificultades de
visión o ciegas puedan también tener acceso a los textos en una web, ya sea
aumentando el tamaño de la letra de forma automática o incluso convirtiendo el
texto en habla mediante un programa conversor.
Igualmente, las posibilidades de customizar una aplicación web permiten adaptar
la información presentada al nivel de interés o de conocimientos de un usuario, de
manera que en lugar de ofrecer el mismo contenido para todos podemos tener un
web educativo con diversos formatos y contenidos en función de si uno es
profesor o alumno, también la posibilidad de traducir un website a varias lenguas,
de adaptar la cantidad de jerga técnica o el nivel de detalle en una explicación, etc.
Separación entre forma y contenido
A nivel técnico este elemento es muy importante, tener la forma y el contenido
separados como piezas de un rompecabezas en una base de datos es lo que
permite precisamente el punto anterior, que una web pueda adaptarse a
diferentes usuarios y necesidades. Al separar forma y contenido es mucho más
sencillo ofrecer servicios al usuario como una versión para imprimir de un artículo,
conseguir que ciertas informaciones sean accesibles desde un móvil o una PDA,
poder leer un artículo en nuestra lengua materna, etc. A nivel técnico también
facilita a los técnicos la tarea de revisar un website a la búsqueda de errores, y
para los creadores de contenidos más facilidad a la hora de subirlos, sin tenerse
que preocupar en qué formato va a aparecer.
Reciclado de datos y mashup
Otro fenómeno que por un lado potencia la web 2.0 y por otro le sirve de
combustible para funcionar es el concepto de libre distribución de contenidos. Ya
le llamemos Creative Commons, Copyleft, Software libre, Código Abierto, etc.
parte de la estructura de la web 2.0, especialmente la que se basa en el data remix
y en la aportación de datos por los usuarios, necesita que información, software,
.:: Neptalí Mena Cisneros ::. 26
imágenes, música y otros materiales culturales puedan distribuirse y reusarse de
forma libre. Ello no implica necesariamente violaciones de copyright, aunque sin
duda este nuevo paradigma está poniendo en aprietos los sistemas tradicionales
de distribuir los objetos culturales. Sobre todo se trata, como en el modelo de
Creative Commons de desarrollar nuevos modelos a la hora de distribuir los
contenidos intelectuales, sin necesariamente pasar por el modelo del copyright.
Gracias a este sistema es fácil conseguir nuevos servicios de forma rápida y casi
automática, cruzando los datos de varios websites o servicios on-line en una nueva
aplicación web, siguiendo la filosofía de Internet como base de datos del ya citado
Manovich (2006).
Criterios en el uso de colores, fondos y tipografías
Este informe no está pensado para un análisis detallado de la estética 2.0, ni
tampoco es su función. También hay que recordar que la estética del diseño es
algo eminentemente volátil y que puede cambiar de un mes al siguiente. Sin
embargo, hay algunos aspectos de la estética web 2.0 que tienen que ver con
algunas de las características que hemos mencionado antes.
Así, el uso de fondos blancos, que ofrezcan un buen contraste para la lectura es un
ejemplo de cómo la filosofía de la usabilidad está presente también en la estética
de la web 2.0. Lo mismo sucede con muchas otras características, como el uso de
tipografías san serif (que són más legibles en pantalla) el uso de tamaños grandes
(accesibilidad), etc. Otras características como las formas redondeadas en lugar de
las rectangulares, el uso de colores pastel o los botones grandes con iconos buscan
más una estética amable, familiar, frente a la tendencia de la estética corporativa,
tecnológica e innovador, pero también fría e impersonal- de la burbuja tecnológica
y la web 1.0.
.:: Neptalí Mena Cisneros ::. 27
1.2. CONCEPTOS DE LA PLATAFORMA DE FACEBOOK
1.2.1. Núcleo API
GRAPH API5
La Graph API o API de gráficos es el núcleo de la plataforma de Facebook, lo que le
permite leer y escribir datos en Facebook. Proporciona una visión simple y
consistente de la gráfica social, de manera uniforme que representan objetos (por
ejemplo, la gente, fotos, eventos, y las páginas) y las conexiones entre ellas (por
ejemplo, las relaciones amigo, contenido compartido, y etiquetas de fotos).
Cada objeto en el gráfico social tiene un identificador único. Usted puede acceder
a las propiedades de un objeto por su interés en la página
https://graph.facebook.com/ID. Por ejemplo, la página oficial de la Plataforma
Facebook ha Identificación 19292868552, para que pueda buscar el objeto en la
dirección https://graph.facebook.com/clubgalileoec:
Facebook ha adoptado el modelo de datos Json y ha pasado a generar las
peticiones mediante URLs muy simples.
Por ver unos ejemplos:
- Para ver los datos de la página Matt Cutts: https://graph.facebook.com/36350343556
- Y para ver la foto de esta página: https://graph.facebook.com/36350343556/picture
- O para ver su hilo de mensajes: https://graph.facebook.com/36350343556/feed
Con este tipo de accesos, vemos que las peticiones de datos, sobre todo para
páginas públicas (ya que la información para urls no públicas es un poco más difícil
de extraer) se han vuelto mucho más sencillas. A mí personalmente me recuerdan
5
http://developers.facebook.com/docs/reference/api
{
"id": "222035317567",
"name": "Club de Observaciu00f3n Galileo",
"picture": "http://profile.ak.fbcdn.net/hprofile-ak-
snc4/203468_222035317567_762748_s.jpg",
"link": "http://www.facebook.com/clubgalileoec",
"category": "Science",
"likes": 47,
"website": "www.clubgalileo.com",
"username": "clubgalileoec",
"description": "OVNIS "
}
.:: Neptalí Mena Cisneros ::. 28
a las de la API de Twitter en su sencillez. Esto va a hacer que la creación de
consultas sea muchísimo más sencilla: podremos ver la información en el mismo
tipo de plugins que ahora mimo maneja twitter accediendo incluso de forma
cómoda con javascript.
En si la API de Facebook es una interfaz de servicios Web para acceder a la
programación servicios básicos (perfil, amigos, grupos, eventos, foto) y realizar
otras funcionalidades de Facebook (iniciar la sesión, reorientar, actualizar vista). El
API está basado en una arquitectura basada en REST (que explico más adelante).
Facebook apoya oficialmente bibliotecas de cliente para PHP (4 y 5) y Java. Estos se
puede descargar de developers.facebook.com / resources.php.
Varias bibliotecas de cliente no oficiales se han desarrollado para la mayoría de
todos los principales Lenguajes de programación web, incluyendo ASP.NET, ASP
(VBScript), ColdFusion, C + +, C #, D, Lista de Emacs, PHP4, Lisp, Python Perl, Ruby
on Rails, VB.NET, y Windows Mobile. Para descargar estas versiones no oficiales, ir
a la wiki de documentación. developers.facebook.com
Cuando se utiliza una biblioteca de cliente, utilice los métodos específicos del
idioma para acceder a Facebook servicios. Por ejemplo, aquí está cómo se puede
recuperar el nombre y foto de un usuario y luego mostrar en una página:
No se preocupe por los detalles por ahora. Sólo observe que la información del
usuario específico se accede mediante las llamadas $facebook->api_client-
>users_getInfo()
LA AUTENTIFICACIÓN6
Pero la base de la mayor parte de Facebook es la información privada a la que solo
se puede acceder si se te da permiso como usuario: los amigos, sus feeds, sus
fotos, etc. Esto hace que sea imprescindible una forma de autentificar usuarios.
Facebook no ha querido comerse demasiado la cabeza en este sentido y a
generado por lo que ya podemos decir que es un estándar de identificación: el
OAuth. Usado por Twitter y adaptado recientemente por meebo para crear una
plataforma conjunta de autentificación de la mayor parte de redes sociales (salvo
los dos grandes: Facebook y twitter). Facebook ha hecho también su adaptación
del sistema y la ha llamado OAuth 2.0. Este sistema se basa en que el usuario, con
6
http://developers.facebook.com/docs/authentication/
$user_data = array(‘name’, ‘pic’, ‘activities’);
$current = $facebook->api_client->users_getInfo($user, $user_data);
echo “<p>Tu nombre es {$current[0][‘name’]} </p>”;
echo “<Esto es lo que parece: <img src=’{$current[0][‘pic’]} /></p>”;
.:: Neptalí Mena Cisneros ::. 29
las cookies de login en Facebook ya creadas habilite el acceso con nuestra
aplicación de forma que a nosotros nos vuelva un "Token", un identificador con el
que en cada petición que hagamos demostramos tener acceso a esa información.
Realmente el sistema se ha simplificado hasta el punto que uno mismo puede
entender todos los pasos que se dan al autentificar usuarios. Aun así, sea cual sea
la vía por la que accedamos Facebook va poner en nuestras manos las
herramientas necesarias para que esta parte sea lo más sencilla posible.
LOS SOCIAL PLUGINS
Pero Facebook no se ha quedado ahí y ha sacado formas aún más sencillas para
interactuar con él en lo que ha llamado "Social Plugins". En estos vienen definidos
unos módulos que podemos añadir fácilmente a nuestra web y que se encargan de
aportar a nuestra web de nuevas funcionalidades totalmente gestionadas por
Facebook y en las que muchas ya interactúan por si solas con sus sistemas.
LOS SDK
Facebook también nos brida clases ya trabajadas para poder usar esta nueva API
en nuestras webs. Destaca entre ellas la JavaScript SDK en la que con un simple
código añadimos a nuestras páginas de forma asíncrona el javascript de Facebook
que nos permitirá realizar desde el cliente y a nuestra manera el login del usuario y
las llamadas a las distintas urls de la nueva Graph Api.
Sin embargo, el proceso sigue siendo demasiado complejo para todo aquel que no
sea programador. Este SDK es con diferencia mucho más usable que la API
javascript de Facebook Connect, pero seguimos necesitando entenderlo
totalmente para hacer la mayor parte del trabajo.
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'your app id', status: true, cookie: true,
xfbml: true});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
.:: Neptalí Mena Cisneros ::. 30
1.2.2. Social plugins 7
Dentro de los cambios aportados por
la Facebook Graph API encontramos
como elemento destacado los Social
Plugins. Estos son pequeños
fragmentos de código (Iframes o
etiquetas FBML de Facebook) con los
que dotar a nuestras páginas y
aplicaciones de Facebook de nuevas
opciones sociales y de conectividad
con la red social por excelencia.
Los plugins sociales de Facebook (Facebook) son herramientas que te ayudan a
integrar un sitio web o blog con Facebook, ofrecen funcionalidades para compartir
contenido e interactuar con tu comunidad sin que los lectores dejen el sitio web.
Esto trae consigo el beneficio de generar una exposición del contenido del sitio
muy grande a un mercado mucho más amplio, incrementando así el número de
visitas y la comunicación con los lectores.
Aquí explicaremos brevemente para que se utiliza cada uno. Estos botones los
puedes generar a través de la página oficial de facebook
http://developers.facebook.com/plugins/, para instalarlos básicamente generas
el código html del plugin o los plugins que se vaya a utilizar y se lo inserta en tu
sitio web.
Seguidamente daremos un repaso a los 9 plugins que ha sacado Facebook por el
momento, intentando mostrar sus posibilidades y su utilidad en el desarrollo de
webs.
1. Like Button (Botón Me Gusta)
Explicación:
El Botón de Me Gusta es un icono que permite a
cualquier lector registrado en Facebook compartir el
contenido de un sitio web o blog, pueden ser
productos, servicios, vídeo, música o algún artículo.
Cuando los lectores dan un clic al botón, el contenido aparecerá en el lector
de noticias de sus amigos con un link al sitio o blog donde se encuentran.
Existen dos tipos de botones de “Me Gusta”, la versión con tecnología
XFBML o con Iframe. La versión con XFBML es mucho más versátil, tiene
7
http://developers.facebook.com/docs/plugins
.:: Neptalí Mena Cisneros ::. 31
opciones en tiempo real como ajustar el tamaño automáticamente, mostrar
el número de “Me Gusta” en tiempo real y dar la opción al lector de escribir
un comentario, que se publicara en su Muro con el link al sitio. El Iframe por
otro lado solo mostrara el botón de “Me Gusta”.
Es recomendable para:
Sitios web que tienen contenido muy dinámico
que se puede compartir individualmente como
Tiendas Virtuales, Blogs, sitios de noticias y de
descarga de Apps (Apps)/software.
2. Activity Feed (Actividad Reciente)
Explicación:
Este plugin muestra la actividad más reciente en
facebook de tu sitio, lo que incluye cuantos usuarios
han dado clic al botón “Me Gusta” o compartido el
contenido del sitio en su red de contactos.
Si el usuario esta registrado, el plugin mostrara la actividad de sus amigos y
si no está registrado mostrara las recomendaciones del sitio y la opción de
registrarse.
Es recomendable para:
Sitios con una alta actividad de fans en facebook y
publicación de contenido, específicamente para los
blogs este plugin es una poderosa herramienta que
permite a los lectores ver que temas son los más
relevantes.
Figura 13. Panel de Configuración de “Like Button”
Figura 14. Panel de Configuración de “Activity Feed”
.:: Neptalí Mena Cisneros ::. 32
3. Recommendations (Recomendaciones)
Explicación:
El plugin de recomendaciones muestra el contenido
que más ha gustado a los lectores de un sitio. Como
el contenido está hospedado en Facebook, el plugin
no requiere que el usuario tenga su sesión abierta de facebook.
Para generar las recomendaciones el plugin considera todas las
interacciones sociales con el URL del sitio web o blog.
Es recomendable para:
Sitios web que tengan una gran cantidad de fans en
facebook y quieran mostrar las recomendaciones de su
comunidad a las nuevas visitas del sitio.
4. Like Box (Caja de Me Gusta)
Explicación:
Plugin que permite a los dueños de páginas de
facebook incrementar el número de “Me Gusta”
desde su propio sitio web o blog.
La caja de “Me Gusta” permite a los usuarios:
* Ver el número y fotos del perfil de los usuarios que les gusta la página.
* Leer los artículos más recientes de la página
* Dar clic al botón de “Me Gusta” sin necesidad de visitar la página en
Facebook.
Figura 15. Panel de Configuración de “Recommendations”
.:: Neptalí Mena Cisneros ::. 33
Es recomendada para:
Sitios web que tengan una sección
estática, ya que el objetivo del plugin es
promocionar la marca a través de los
lectores que gusten del contenido y le den
clic a el botón de “Me Gusta”; la diferencia
entre el botón “Me Gusta” y La caja “Me
contenido dinámico individual como
productos, servicios, artículos y la caja está
enfocada a la marca del sitio en general.
5. Login Button (Botón de Inicio de Sesión)
Explicación:
El botón de inicio de sesión ofrece la funcionalidad de
registrarse a Facebook desde un sitio web, además
muestra las fotos del perfil de los amigos del usuario
que ya se ha firmado.
Es posible especificar el número máximo de filas en donde se mostraran las
fotos. El plugin automáticamente se ajusta de tamaño, por ejemplo, si
especifica un máximo de cuatro filas y hay amigos sólo para llenar dos filas,
la altura del plugin será sólo lo necesaria para dos filas de fotos.
Es recomendable para:
Sitios que tengan comunidades, donde los
miembros sean lectores que promuevan
con sus amigos el sitio e interactúen a
través de éste.
Figura 16. Panel de Configuración de “Like Box”
Figura 17. Panel de Configuración de “Login Button”
.:: Neptalí Mena Cisneros ::. 34
6. Registration (Registro)
El registro plugin te da la flexibilidad necesaria para
solicitar información adicional que no está disponible
a través de la API de Facebook (por ejemplo, película
favorita). El plug-in permite a los usuarios que no
tienen una cuenta en Facebook, o si no desea
registrarse en su sitio con Facebook para el uso de la misma forma que los
que se conectan con Facebook. Esto elimina la necesidad de ofrecer dos
experiencias entrada independiente.
Es recomendable para:
Que los usuarios mediante este plugin de registro puedan a suscribirse
fácilmente en su sitio web con su cuenta de Facebook. El plugin es un
Iframe simple que usted puede bajar en su página. Al iniciar la sesión en
Facebook, los usuarios ven un formulario que se rellena con la información
de Facebook en su caso.
7. Facepile (Pila de fotos)
Explicación:
Este plugin despliega las fotos de los usuarios a los
que les gusta el sitio o que se han registrado
previamente. Es muy similar al Botón de inicio de
sesión (Login Button) pero sin la parte de registro.
Si ningún usuario o amigo que visita el sitio tiene abierta su sesión en
facebook, no se mostrara el plugin.
Figura 18. Panel de Configuración de “Registration”
.:: Neptalí Mena Cisneros ::. 35
Es recomendable para:
Sitios que tienen un sistema de registro diferente
y buscan promocionarse a través de mostrar los
amigos de los usuarios que visitan el sitio con la
sesión abierta de Facebook.
8. Comments (Comentarios)
Explicación:
Plugins que permite compartir la actividad y los
comentarios en tiempo real. Funciona mejor cuando
se ejecuta un evento en vivo, como vídeo streaming,
conciertos, discursos, conferencia, chats en vivo, juegos en internet.
Es recomendable para:
Sitios que tienen un sistema de registro diferente y buscan promocionarse a
traves de mostrar los amigos de los usuarios que visitan el sitio con la sesión
abierta de Facebook.
Figura 19. Panel de Configuración de “Facepile”
Figura 20. Panel de Configuración de “Comments”
.:: Neptalí Mena Cisneros ::. 36
9. Live Stream (Transmisión en vivo)
Explicación:
Plugins que permite compartir la actividad y los
comentarios en tiempo real. Funciona mejor cuando
se ejecuta un evento en vivo, como vídeo streaming,
conciertos, discursos, conferencia, chats en vivo, juegos en internet.
Es recomendable para:
Sitios que transmitan eventos en vivo. Es una herramienta poderosa para la
interacción en tiempo real, te apoya a dar seguimiento a preguntas,
comentarios, concursos y promociones.
Figura 21. Panel de Configuración de “Live Stream”
.:: Neptalí Mena Cisneros ::. 37
1.2.3. Facebook SDKs
Facebook cuenta con varios SDK’s8
para uso de programadores, existen los
siguientes JavaScript SDK, iOS SDK (iPhone y IPAD), Android SDK, PHP SDK,
Tools (Herramientas).
Anteriormente hemos indicado todos los SDK con lo que podemos trabajar en
Facebook, pero como en esta tesis la estamos desarrollando con software GNU y
nos basaremos más en el JavaScript SDK y PHP SDK.
JavaScript SDK
El SDK de código JavaScript que permite acceder a todas las funciones de la API de
gráficos y cuadros de diálogo a través de JavaScript. Se proporciona un conjunto
completo de funcionalidades de cliente para la autenticación y la representación
de las versiones XFBML de nuestros plugins sociales.
FBML no es compatible con el uso del estándar de JavaScript utilizando el
elemento de secuencia de comandos.
Sin embargo, Facebook JavaScript (o FBJS, para abreviar) permite una limitada
funcionalidad de secuencias de comandos dentro de una aplicación de Facebook.
Éstos son algunos de los diferencias entre FBJS y JavaScript:
9 En lugar de utilizar el estándar DOM9
JavaScript, Facebook ofrece a sus
propia implementación DOM alternativa.
9 FBJS Muchos objeto implementaciones son las mismas de forma estándar
de JavaScript, aunque hay algunas diferencias. Por ejemplo, en lugar de
acceder a una propiedad de JavaScript (como document.href), FBJS utiliza
un par de obtener y métodos establecidos en su lugar (getHref, setHref).
9 Cuando Facebook procesos código de scripting en el interior de los
elementos de script, tachuelas en el identificador de aplicación a los
nombres de funciones y variables. Facebook hace esto para crear un ámbito
específico de la aplicación.
Facebook JavaScript prevé AJAX y objetos de diálogo para que los desarrolladores
de Facebook aprovechen estas herramientas.
8
SDK – Es un kit de desarrollo de software o SDK (siglas en inglés de software development kit) es
generalmente un conjunto de herramientas de desarrollo que le permite a un programador crear
aplicaciones para un sistema concreto, por ejemplo ciertos paquetes de software, frameworks, plataformas
de hardware, computadoras, videoconsolas, sistemas operativos, etc.
9
DOM - El Document Object Model es una plataforma cruzada y la convención independiente del lenguaje
para representar e interactuar con objetos en HTML, XHTML y documentos XML. La interfaz pública de un
DOM se especifica en su interfaz de programación de aplicaciones (API).
.:: Neptalí Mena Cisneros ::. 38
Facebook SDK PHP
Este SDK proporciona apoyo a la plataforma Facebook a sus aplicaciones web
basado en PHP. Esta biblioteca le ayuda a agregar Facebook sesión y el apoyo
gráfico de la API a su sitio web. Los archivos de repositorio para descargarlos se los
puedes hacer en el link https://github.com/facebook/php-sdk/ y son los siguientes:
Este repositorio contiene el código abierto PHP SDK le permite utilizar todo los
archivos en su sitio web.
Uso
Los ejemplos son un buen lugar para comenzar. El mínimo que se necesita tener
es:
Para hacer llamadas a la API:
Identificados vs registrada de salida:
if ($facebook->getSession()) {
echo '<a href="' . $facebook->getLogoutUrl() . '">Logout</a>';
} else {
echo '<a href="' . $facebook->getLoginUrl() . '">Login</a>';
}
try {
$me = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
}
<?php
require './facebook.php';
$facebook = new Facebook(array(
'appId' => 'YOUR APP ID',
'secret' => 'YOUR API SECRET',
'cookie' => true, // enable optional cookie support
));
Figura 22. Muestra de visualización del sitio del repositorio
.:: Neptalí Mena Cisneros ::. 39
1.2.4. API’s Avanzadas
Hoy en día existen algunas API´s avanzadas que podemos utilizarlas como son las
de Diálogos, FQL, Internacionalización de la API, Créditos de la API, Legado
API, Legado API REST, Legado FBML , Legado API Javascript, pero igualmente
el esta tesis nos basaremos en las siguientes:
Facebook Query Language
Facebook Query Language, o FQL, le permite utilizar una interfaz de estilo SQL para
consultar los datos expuestos por el API de gráficos. Se prevé que algunas de las
características avanzadas no disponibles en la API de gráficos, incluyendo el
procesamiento por lotes varias consultas en una sola llamada.
Facebook (Lenguaje de consulta FQL) es una interfaz basada en SQL en los datos de
Facebook.
Usted puede acceder a muchas tablas de bases de datos de Facebook, incluyendo
el usuario, un amigo, grupo, group_member, evento, event_member, la
foto, álbum, y photo_tag.
El lenguaje en sí mismo es similar al estándar SQL, aunque con algunas
restricciones:
9 Las instrucciones SELECT se debe realizar una tabla a la vez.
9 Únete a las consultas no están permitidas.
9 Una consulta debe ser indexables.
En realidad se puede realizar la mayoría de las rutinas de acceso a los mismos
datos utilizando API o FQL. Para ese momento, varias de las llamadas a la API no
son más que contenedores para las consultas FQL. FQL incluso tiene algunas
ventajas sobre el estándar API interfaz. Se reduce el ancho de banda y gastos
generales de análisis y puede ayudar a reducir al mínimo el número de solicitudes
de datos en situaciones complejas.
(donde la variable $ user es el usuario actual):
$friends = $facebook->api_client->fql_query(“SELECT uid, name
FROM user WHERE
uid IN (SELECT uid2 FROM friend WHERE uid1=$user)”);
.:: Neptalí Mena Cisneros ::. 40
Facebook Markup Language (FBML)
FBML le permite construir aplicaciones de Facebook que integran profundamente
en la experiencia de un usuario de Facebook. Para utilizar JavaScript en FBJS FBML
uso.
Facebook Markup Language (FBML) es un lenguaje HTML que se usa para mostrar
páginas interiores de la tela Facebook. Aquí hay tres hechos básicos sobre FBML:
FBML contiene un subconjunto de los elementos HTML. Tales elementos comunes
como p, ul, y H1 son parte de FBML.
FBML proporciona cualificado de apoyo para los elementos de escritura y estilo.
Normal JavaScript no se admite en un elemento script, aunque Facebook
JavaScript no permite algunas capacidades de scripting. Usted no puede utilizar el
elemento de estilo para ligarse a hojas de estilo externas, pero se puede utilizar
para CSS interna.
FBML también incluye varias extensiones propietarias en Facebook específicos
Elementos de la interfaz, así como el flujo del programa.
Por ejemplo, el FB: elemento de nombre muestra el nombre del usuario,
basándose en el valor del atributo uid:
Algunos elementos FBML ayudar a controlar el flujo de un programa. Por ejemplo,
FB: -si puede-ver sólo muestra el contenido dentro de ella si el usuario tiene
permiso para ver una función específica (el qué atributo) para el usuario
especificado (el uid atributo). Considere lo siguiente:
Integración con Facebook Chat
Puede integrar Facebook Chat en su web, de escritorio, móviles o los productos de
mensajería instantánea. Su cliente de mensajería instantánea se conecta al chat de
Facebook a través de Jabber / XMPP servicio. Este documento describe las
características y limitaciones del protocolo de chat de Facebook de XMPP para el
desarrollador que se propone aplicar un cliente de chat de Facebook.
Facebook Anuncios API
<fb:if-can-see uid=”665127078” what=”profile”>
<p> Se le concede acceso, afortunado!</p>
<fb:else> Ir a otro lugar, que un desafortunado.</fb:else>
</fb:if-can-see>
<p> Su nombre es: <fb:name uid=”665127078” useyou=”false”/></p>
.:: Neptalí Mena Cisneros ::. 41
Los anuncios de Facebook API permiten crear y gestionar sus propios anuncios en
Facebook programación, sin necesidad de utilizar la herramienta Administrador de
Publicidad de Facebook.
Esta API está disponible como parte de un programa beta limitada y está sujeta a
cambios. Si estás interesado en participar en la prueba beta, por favor, contacte
con su administrador de cuentas de publicidad de Facebook. Si usted no tiene un
Facebook cuenta de Administrador de Publicidad, sin embargo, usted puede
solicitar soporte en la página de Facebook.
Puede utilizar la API de anuncios si coincide con uno de estos perfiles:
9 Usted administra su propio anuncio gastar, y tienen muchas cuentas y / o
anuncios de muchos. Puede utilizar la API de anuncios como una alternativa
escalable a la herramienta de Facebook Gerente de Publicidad.
9 Usted es un proveedor de herramientas de publicidad que vende soluciones
de gestión publicitaria a las empresas pequeñas y medianas empresas, así
como a gestionar los anuncios de múltiples fuentes (como Facebook y otros
anunciantes en línea).
9 Usted es una agencia de publicidad de la gestión de presupuestos y
campañas para varios clientes.
Si no quiere construir su propia herramienta de gestión de anuncios, se puede
trabajar con un vendedor que tiene.
1.3. FUNCIONALIDAD DE LA PLATAFORMA DE FACEBOOK
1.3.1. Introducción a la Plataforma de Facebook.
Oímos todo el tiempo acerca de "plataformas" en diversos ámbitos de la vida.
Partidos políticos presentan sus políticas y agendas en documentos llamados
plataformas. Un clavadista olímpico realiza una inmersión perfecta fuera de una
plataforma de 10 metros en el camino en alcanzar con una medalla de oro. Heck,
tenis de plataforma es una forma de tenis que la gente juega con remos.
Facebook también tiene su propia plataforma, que inteligentemente la llamó
Plataforma de Facebook. Afortunadamente para sus compañeros de trabajo, es
una plataforma que no es necesario un traje de baño o una paleta de usar. Sin
embargo, usted necesita saber un lenguaje de programación web tales como PHP
o Java.
Facebook ha ganado popularidad debido a su ambiente estructurado y su red
social, pero la Plataforma de Facebook está demostrando ser un medio
fundamental de ayudar a potenciar un negocio, empresa o persona y que se
convierta en más productivo, gracias a aplicaciones de terceros. Facebook ofrece
.:: Neptalí Mena Cisneros ::. 42
ahora una razón importante para que los usuarios inviertan en sí mismos en
Facebook.com de una manera que nunca fueron realmente capaces de hacer con
los sitios de redes sociales como MySpace. De hecho, sobre el lanzamiento de la
Plataforma, era sólo cuestión de semanas para que los usuarios comenzaran a ver
miles y miles de aplicaciones de todo tipo en Facebook que fueron inspirados por
desarrolladores de las grandes corporaciones o simplemente aficionados que
trabajan en sus casas por diversión.
1.3.2. DESCUBRIENDO FACEBOOK
MySpace y Friendster pueden haber sido los primeros "ir a" lugares de línea
interacción social, pero Facebook ha superado el crecimiento más rápido sitio de
redes sociales en la Web. Su ambiente estructurado, el usuario agradable
experiencia, y la plataforma extensible para aplicaciones de otros fabricantes han
ayudado a que Facebook tenga este nivel de importancia y popularidad.
Antes de empezar a desarrollar aplicaciones para Facebook, se debe llegar a
conocer todos los contenidos del propio Facebook para garantizar plenamente
entender el potencial de la forma en que su aplicación puede aprovechar su
plataforma.
Si es nuevo en Facebook, lo que se necesita primordialmente es tener muy
presente los conceptos importantes de: Noticias y El Perfil.
Noticias
Una vez que haya iniciado sesión en Facebook, la página principal de Facebook
(www.facebook.com) muestra la Noticia, como se muestra en la Figura 23. Piense
en la Noticia como su propio canal de noticias personalizadas - algo así como un
FNN (Noticias de la Red de Amigos), si desea obtener inteligente.
La Noticia contiene una lista en vivo de anuncios o historias sobre la actividad de
su red de amigos en Facebook - quien se hizo amigo, qué aplicaciones se agregó,
cuál es su situación. Por ejemplo, si mi amigo Jaime Albear se convirtió en amigos
con Andrea Hernández, me gustaría recibir la siguiente historia:
Jaime Albear y Andrea Hernández ahora son amigos.
Facebook compila esta lista de historias de noticias sobre la base de varios factores
– la actividad de sus amigos, sus preferencias de tipos de historia, la configuración
de frecuencia en determinados amigos, los niveles de privacidad de tus amigos, la
opinión de un usuario en la calidad de una historia (conocido como "Me Gusta" y
"x" votos) todos mezclados en un detrás de cámaras, el algoritmo de super
secreto. Un usuario puede determinar la frecuencia de las noticias ciertas, pero en
.:: Neptalí Mena Cisneros ::. 43
última instancia, Facebook mantiene el control más de lo que se coloca en el
Servicio de Noticias. Facebook también coloca anuncios sociales en el interior del
servicio de noticias.
El Perfil
Cada usuario de Facebook tiene un perfil individualizado, como la que se muestra
en la Figura 24. Una página de perfil de un usuario "bienes inmuebles" en
Facebook.com, una casa Página para el usuario, amigos y otras personas. Los
usuarios deciden qué información para mostrar o restringir en función de quién es
el visitante.
La página de Facebook contiene una variedad de elementos. Algunos de los más
notables para desarrolladores de aplicaciones son las siguientes:
9 Izquierda de navegación: la barra lateral izquierda de navegación (que mide
150 píxeles de ancho) contiene un menú de aplicaciones en las que los
usuarios pueden acceder rápidamente a las aplicaciones. Los usuarios
pueden arrastrar y soltar sus cinco aplicaciones favoritas en la sección
superior.
9 Canvas: El lienzo o canvas es la sección de 520 píxeles a la derecha de la
izquierda menú y debajo del menú de navegación superior. No sólo es la
página de perfil contenida en el lienzo, pero todas las aplicaciones de
Facebook se incluye también.
Figura 23. “Noticias” contiene la lista de las nuevas novedades de nuestra red de amigos
.:: Neptalí Mena Cisneros ::. 44
9 Mini-Feed: Mini-Feed contiene un resumen de instantáneas de las
actividades de un del usuario. Nótese la diferencia con el Noticias:
Considerando que de Noticias de Facebook.com muestra historias de
amigos, un perfil de Mini-Feed presenta historias sólo se relaciona con el
usuario. Como desarrollador de Facebook, puede publicar un Mini-Feed
historia usando la API.
9 Perfil de la caja: cajas de perfil en la página de perfil del usuario consiste de
una función de Facebook cajas (Mini-Feed, amigos, Educación y Trabajo) y
Facebook aplicaciones. Pueden ser de ancho (400 píxeles) y aparecen en la
sección principal del perfil, o estrecha (100 píxeles) a la izquierda barra
lateral. Un usuario puede arrastrar y soltar cajas perfil a diversas partes del
página y se puede quitar la caja el perfil de una aplicación sin borrar la
aplicación.
9 Muro: Usted puede pensar en la pared como un "tablón de anuncios" de
clases que las personas puede utilizar para enviar notas, comentarios, o
comentario acerca de una persona. Como un desarrollador de Facebook, no
se puede publicar directamente en el interior de la pared su aplicación. Sin
embargo, puede proporcionar un archivo adjunto de la pared para sus
usuarios. Un mensaje que la pared proporciona una forma para que los
usuarios de su aplicación a agregar el contenido específico de la aplicación a
sus paredes.
Figura 24. La página de perfil de "Club Galileo" en Facebook.
.:: Neptalí Mena Cisneros ::. 45
El Gráfico Social
La red social a largo plazo se ha vuelto tan popular y familiar en los últimos años y
aunque la gente no sea aficionada a la tecnología, por lo menos comprende el
significado del término. Facebook, sin embargo, tiene su propia lengua vernácula
en lo que respecta a la comprensión de redes sociales. Lo llaman el gráfico social.
El gráfico social se puede definir como las interconexiones que existen entre la
familia, amigos y conocidos que toda persona tiene.
Tómame como un ejemplo. Tengo una esposa y tres niños, los padres que viven en
Ibarra, una hermana que vive en Otavalo, muchos amigos de mi iglesia, conocidos
de mi pueblo, compañeros de trabajo en los lugares de empleo anteriores, y así
sucesivamente. Algunas de estas personas tienen las interconexiones de los suyos.
Mi esposa conoce a mi hermana, mis hijos y a mis padres. Otros miembros de mi
red no se conocen entre sí. Mis hijos, por ejemplo, nunca conocen a mi ex jefe,
Salomón.
Las relaciones sociales como estos están unidas por algún tipo de
interdependencia entre sí. Puede ser de la familia, la fe, los amigos comunes
intereses, la geografía, o la línea de trabajo. Pero siempre hay algún tipo de vínculo
entre ellos, sin embargo suelto.
En la vida cotidiana, la gente le da un gran valor a su gráfico social. Si estoy en
busca de un trabajo, probablemente comenzará por la creación de redes mis
amigos y antiguos compañeros de trabajo o conocidos en el mundo de alta
tecnología. Si estoy buscando a alguien para ver nuestro perro mientras está de
vacaciones, estoy dispuesto a confiar en la sobrina de su fin amigo para hacer bien
el trabajo, a pesar de que apenas conocen la sobrina personalmente.
Por otra parte, cuando estoy en busca de un dentista, busco y obtengo
recomendaciones de la gente cuya opinión valoro en mi gráfico social. Las
comunidades en línea como Facebook y MySpace buscan volver a crear este
natural fenómeno humano en el mundo digital. Dentro de estas comunidades, que
establecer estos vínculos entre las personas basadas en algún tipo de
interdependencia. A través de los servicios comunitarios, que son capaces de llegar
a saber cuáles son sus amigos y que están haciendo, la música que están
escuchando, las películas que recomendamos, y qué aplicaciones están utilizando.
Sin embargo, las prácticas, el comportamiento y la cultura de estas redes sociales
diferentes al impacto de los sitios que emulan muy bien con el mundo real. En
MySpace, por ejemplo, puedo recoger cientos o incluso miles de conexiones, pero
sólo unos pocos son verdaderamente amigos con algún grado de
interdependencia. En cambio, en un ambiente como el de Facebook, que no
promueve, recogiendo amistades, puede que en la actualidad sólo tienen una
docena de amigos, pero casi todas las conexiones están respaldadas por las
.:: Neptalí Mena Cisneros ::. 46
relaciones del mundo real. Como resultado, tanto el lugar o las opiniones y
actividades de mis amigos en Facebook, no me fuesen posibles en un sitio como
MySpace. Este valor de la interconexión social es importante para el desarrollador
de aplicaciones Facebook creando aplicaciones viables para socializar.
Algo que es curioso para muchos el uso de la palabra, gráfico, en el término gráfico
social. El término red en la red social es lo suficientemente intuitiva, pero el gráfico
de la palabra evoca imágenes de algo que se crea en Microsoft Excel para mostrar
la acción que u operación que se desea mostrar. Aunque el gráfico puede ser un
sinónimo de tabla en el uso cotidiano, Facebook utiliza la definición matemática
del término. En este contexto, se puede pensar en un gráfico como una
abstracción para modelar relaciones entre conjuntos de nodos.
1.3.3. ¿Qué es la Plataforma de Facebook?
La Plataforma de Facebook es un marco de programación basada en estándares
que permite a los desarrolladores crear aplicaciones que interactúan y se integran
con los servicios básicos de Facebook.
Puntos de integración
Cuando se crea una aplicación para la plataforma Facebook, se puede integrar en
varios puntos en el marco de la creación de la aplicación. Dado el gran incremento
de peticiones de aplicaciones que estamos recibiendo, se van necesitando manos
nuevas en el equipo de desarrolladores de aplicaciones para Facebook.
El perfil que se busca serían programadores jóvenes, con ganas de aprender y que
programen en PHP, MySQL y tengan nociones de JQuery/Ajax. Considerándose la
forma en que se integra en Facebook y sus aplicaciones, tanto por lo que se
convierte más y más difícil de distinguir entre las aplicaciones creadas por
Facebook y los desarrollados por terceros.
Ahora podemos decir que las aplicaciones de Facebook son pequeños programas
que se ejecutan dentro de la plataforma de Facebook (Facebook), es decir una
aplicación de Facebook trabaja similar a un plug-in para un navegador o como un
plug-in para un Content Management System (CMS)
Diariamente Usamos aplicaciones dentro de Facebook para facilitarnos muchas
actividades en nuestros perfiles de Facebook por ejemplo (Compartir contenido de
youtube, compartir un enlace o cargar una imagen)
Directorio de aplicaciones de Facebook
.:: Neptalí Mena Cisneros ::. 47
Para conocer todo el potencial que ofrece Facebook con respecto a las
aplicaciones existe el poco conocido Directorio de aplicación de Facebook que
puedes acceder con la siguiente dirección Directorio de aplicaciones en facebook
puedes buscar aplicaciones por categoría, opiniones de los usuarios y conocer
cuales están verificadas y cuales se han agregado recientemente al directorio.
Aplicaciones verificadas por Facebook
Las aplicaciones verificadas por Facebook son todas aquellas que cumplen con
todos los requisitos de transparencia y funcionalidad, respetando la privacidad del
usuario y la de sus amigos cuando envía información e invitaciones sobre la misma.
Figura 24. Directorio de Aplicaciones de Facebook
Figura 25. Aplicaciones verificadas por Facebook
.:: Neptalí Mena Cisneros ::. 48
Aplicaciones de Facebook recomendadas
Desde mi punto de vista las aplicaciones que yo recomiendo y utilizo son las
siguientes:
Aplicaciones para perfiles personales
- YouTube Video Box: Esta aplicación permite publicar y guardar en favoritos todos
tus videos de youtube o la de tu cuenta de forma manual y agregarlos en una
pestaña en tu perfil.
- Selective Tweets: permite integrar tu perfil de twitter y solo publicar aquellos
tweets que consideres importantes, también se utiliza para actualizar aquellas
páginas de Facebook que tú seas administrador y des autorización a dicha
aplicación.
- Twitterfeed (twitterfeed): enlaza con todos los canales RSS que estés suscrito y
los publica en tu perfil de Facebook al igual que en las páginas de Facebook que tú
seas administrador y suministres autorización de publicación.
- Creative Commons License: Permite colocar licencias CC a todos tus
actualizaciones y contenido que cargues dentro de tu perfil de Facebook.
- Profile Box: esta aplicación se utiliza para colocar contenido HTML dentro de tus
pestañas o cajas en tu perfil de Facebook.
Aplicaciones para Páginas de Facebook
- Twitter (Twitter) for Pages (pages): esta aplicación crear una pestaña donde se
publican todos los tweets de la cuenta de twitter que coloquemos en esta
aplicación.
- Selective Tweets: permite actualizar el estado de nuestra página de Facebook a
través de nuestro perfil de twitter.
- FBML: Añade funciones avanzadas a tu página usando la aplicación FBML Estática
de Facebook. Esta aplicación añadirá un botón a tu página en la cual podrás
convertir HTML o FBML (Seleccionador de lenguaje de Facebook) para una
personalización mejorada de la página.
- Networked Blogs: Importar los artículos de tu sitio web, posee soporte para RSS y
Atom, esta aplicación tienes gran utilidad entre la comunidad de bloggers en
Facebook.
Una vez abierto el código de Facebook muchas empresas y Programadores se
dedicaron a desarrollar numerosas aplicaciones de Facebook relacionadas con el
ocio, entretenimiento y profesionales.
.:: Neptalí Mena Cisneros ::. 49
1.3.4. Arquitectura de las Aplicaciones de Facebook
Las Aplicaciones de Facebook no se instalan directamente en el servidor de
Facebook, en su lugar, se colocan en el servidor del desarrollador y luego hace la
llamada por Facebook cuando se solicita la URL de la aplicación.
Para interactuar con las aplicaciones, Facebook utiliza una metáfora de devolución
de llamada, es decir, la dirección URL de su aplicación está asociada con una
aplicación registrada en Facebook. Cuando la URL de la aplicación Facebook se
solicita, Facebook vuelve a dirigir la solicitud a su servidor, la aplicación procesa la
solicitud, se comunica con Facebook utilizando el Facebook Application
Programming Interface (API) o Facebook (Lenguaje de consulta FQL), y devuelve
Facebook Markup Language (FBML) para Facebook para su presentación al usuario
dentro de su grilla o pagina.
Figura 26. Arquitectura Standard de una aplicación Web
Figura 27. Arquitectura de las Aplicaciones de Facebook
.:: Neptalí Mena Cisneros ::. 50
1.3.5. Legado API
En el proceso del desarrollo de la tesis se inició un proceso de desaprobación de
algunas API´s, cambiando de esta manera el modo de programación que se
efectuaba hasta el mes de diciembre del 2010, entonces para esto facebook
recomendaba que si usted está construyendo una nueva aplicación de Facebook,
por favor se utilicen la API de gráficos, nuevos SDK de Javascript y plugins sociales
en su lugar.
A pesar de esto y como es misión de cumplir con los objetivos de la tesis tan solo
detallaremos todas aquellas Apis que se las ha llamado de legado y que darán paso
a nuevas métodos de programación dentro de el nuevo gráfico de Facebook.
1.3.5.1. Legado REST API
La API REST le permite interactuar con el sitio web de Facebook mediante
programación a través de peticiones HTTP.
La API REST OAuth es compatible con 2.0, así como un mayor, esquema
personalizado firma de autorización. Para hacer peticiones a la API REST con
OAuth, que pide direcciones URL en el formato siguiente:
Por ejemplo, puede buscar el perfil Zuck con:
Los métodos de las REST APIS se clasifican en:
Métodos de Administración
9 admin.banUsers
9 admin.getAllocation
9 admin.getAppProperties
9 admin.getBannedUsers
9 admin.getRestrictionInfo
9 admin.setAppProperties
9 admin.setRestrictionInfo
9 admin.unbanUsers
9 ads.getAdreportSchedules
9 application.getPublicInfo
9 batch.run
9 data.setCookie
9 fbml.setRefHandle
9 intl.getTranslations
9 intl.uploadNativeStrings
9 links.getStats
9 migrations.getStatuses
9 migrations.setStatus
9 pages.blockFan
https://api.facebook.com/method/users.getInfo?uids=4&fields=name&access
_token=2227470867|2.hWwHbXXT7t5cpNkw1ZaEYQ__.3600.1300932000-
670080972|w4CUJqc6u1d-otbn2FFuirHBHFI&format=json
https://api.facebook.com/method/method_name?
access_token=oauth_access_token&
arg0=value0&
arg1=value1
Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 52
Métodos de Nombre/autenticación
9 auth.createToken
9 auth.expireSession
9 auth.getSession
9 auth.promoteSession
9 auth.revokeAuthorization
9 auth.revokeExtendedPermission
Métodos de recuperación de datos
9 comments.get
9 data.getCookies
9 fbml.refreshImgSrc
9 fbml.refreshRefUrl
9 fql.multiquery
9 fql.query
9 friends.areFriends
9 friends.get
9 friends.getAppUsers
9 friends.getLists
9 friends.getMutualFriends
9 groups.get
9 groups.getMembers
9 links.get
9 message.getThreadsInFolder
9 notes.get
9 notifications.get
9 notifications.getList
9 pages.getinfo
9 pages.isAdmin
9 pages.isAppAdded
9 pages.isFan
9 photos.get
9 photos.getAlbums
9 photos.getTags
9 privacy.get
9 profile.getFBML
9 profile.getInfo
9 profile.getInfoOptions
9 status.get
9 stream.get
9 stream.getComments
9 stream.getFilters
9 users.getInfo
9 users.getLoggedInUser
9 users.getStandardinfo
9 users.hasAppPermission
9 users.isAppUser
9 users.isVerified
9 video.getUploadLimits
Métodos de publicación
9 comments.add
9 comments.remove
9 links.post
9 links.preview
9 liveMessage.send
9 notes.create
9 notes.delete
9 notes.edit
9 notifications.markRead
9 notifications.sendEmail
9 photos.addTag
9 photos.createAlbum
9 photos.upload
9 profile.setFBML
9 profile.setInfo
9 profile.setInfoOptions
9 status.set
9 stream.addComment
9 stream.addLike
9 stream.publish
9 stream.remove
9 stream.removeComment
9 stream.removeLike
9 users.setStatus
9 video.upload
Métodos de Facebook Connect
9 connect.getUnconnectedFriendsCount
9 connect.registerUsers
9 connect.unregisterUsers
Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 53
Métodos móvil
9 sms.canSend
9 sms.send
Métodos de paneles API
9 dashboard.addGlobalNews
9 dashboard.addNews
9 dashboard.clearGlobalNews
9 dashboard.clearNews
9 dashboard.decrementCount
9 dashboard.getActivity
9 dashboard.getCount
9 dashboard.getGlobalNews
9 dashboard.getNews
9 dashboard.incrementCount
9 dashboard.multiAddNews
9 dashboard.multiClearNews
9 dashboard.multiDecrementCount
9 dashboard.multiGetCount
9 dashboard.multiGetNews
9 dashboard.multiIncrementCount
9 dashboard.multiSetCount
9 dashboard.publishActivity
9 dashboard.removeActivity
9 dashboard.setCount
Métodos de API Eventos
9 events.cancel
9 events.create
9 events.edit
9 events.get
9 events.getMembers
9 events.invite
9 events.rsvp
Métodos de API de etiquetas personalizadas
9 fbml.deleteCustomTags
9 fbml.getCustomTags
9 fbml.registerCustomTags
Métodos de anuncios
9 ads.addAccountUsers
9 ads.createAdGroups
9 ads.createAdreportSchedules
9 ads.createCampaigns
9 ads.createCreatives
9 ads.estimateTargetingStats
9 ads.getAccounts
9 ads.getAdGroupCreatives
9 ads.getAdGroupStats
9 ads.getAdGroupTargeting
9 ads.getAdGroups
9 ads.getAdreportJobs
9 ads.getAutoCompleteData
9 ads.getCampaignStats
9 ads.getCampaigns
9 ads.getConnectionObjectIds
9 ads.getKeywordAutocomplete
9 ads.getKeywordSuggestions
9 ads.getValidKeywords
9 ads.removeAccountUsers
9 ads.setAccountUsersRole
9 ads.updateAdGroups
9 ads.updateAdreportSchedules
9 ads.updateCampaigns
Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 54
1.3.5.2. Legado FQL
FBML le permite construir aplicaciones de Facebook que integran profundamente
en la experiencia de un usuario de Facebook. Para utilizar JavaScript FBJS en FBML.
Herramientas
9 fb:board
9 fb:bookmark
9 fb:chat-invite
9 fb:comments
9 fb:default
9 fb:else
9 fb:feed
9 fb:friend-selector
9 fb:google-analytics
9 fb:if
9 fb:if-multiple-actors
9 fb:multi-friend-input
9 fb:quantcast
9 fb:random
9 fb:random-option
9 fb:switch
9 fb:typeahead-input
9 fb:typeahead-option
9 fb:user-agent
El usuario / Grupos
9 fb:eventlink
9 fb:grouplink
9 fb:if-can-see
9 fb:if-can-see-photo
9 fb:if-is-app-user
9 fb:if-is-friends-with-viewer
9 fb:if-is-group-member
9 fb:if-is-user
9 fb:if-is-verified
9 fb:name
9 fb:profile-pic
9 fb:pronoun
9 fb:user
9 fb:user-status
Notificaciones y Solicitudes
9 fb:application-name
9 fb:multi-friend-selector
9 fb:multi-friend-selector_(condensed)
9 fb:req-choice
9 fb:request-form
9 fb:request-form-submit
Plataforma de Internacionalización
9 fb:date
9 fb:fbml-attribute
9 fb:intl
9 fb:intl-token
9 fb:tag
9 fb:tag-attribute
9 fb:tag-body
9 fb:window-title
Obsoletas
9 fb:if-is-own-profile
9 fb:if-user-has-added-app
9 fb:networklink
9 fb:notif-email
9 fb:notif-page
9 fb:notif-subject
9 fb:profile-action
9 fb:rock-the-vote
9 fb:userlink
9 fb:visible-to-added-app-users
9 fb:visible-to-user
Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 55
Mensajes de estado
9 fb:error
9 fb:explanation
9 fb:message
9 fb:success
Navegación de página
9 fb:create-button
9 fb:dashboard
9 fb:header
9 fb:header-title
9 fb:help
9 fb:mediaheader
9 fb:owner-action
9 fb:tab-item
9 fb:tabs
Muro
9 fb:wall
9 fb:wallpost
9 fb:wallpost-action
Visibilidad sobre el perfil
9 fb:18-plus
9 fb:21-plus
9 fb:restricted-to
9 fb:visible-to-app-users
9 fb:visible-to-connection
9 fb:visible-to-friends
9 fb:visible-to-owner
Visitas al perfil específico
9 fb:action
9 fb:add-section-button
9 fb:if-section-not-added
9 fb:narrow
9 fb:publisher-link
9 fb:subtitle
9 fb:user-item
9 fb:user-table
9 fb:wide
Otros
9 fb:add-profile-tab
9 fb:fbml
9 fb:fbmlversion
9 fb:js-string
9 fb:page-admin-edit-header
9 fb:redirect
9 fb:ref
9 fb:serverFbml
9 fb:time
9 fb:title
Editor de pantalla
9 fb:editor
9 fb:editor-button
9 fb:editor-buttonset
9 fb:editor-cancel
9 fb:editor-custom
9 fb:editor-date
9 fb:editor-divider
9 fb:editor-month
9 fb:editor-text
9 fb:editor-textarea
9 fb:editor-time
Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 56
Incorporado los medios de comunicación
9 fb:flv
9 fb:iframe
9 fb:mp3
9 fb:photo
9 fb:silverlight
9 fb:swf
Diálogo
9 fb:dialog
9 fb:dialog-button
9 fb:dialog-content
9 fb:dialog-title
Permisos adicionales
9 fb:prompt-permission
Plugins sociales
9 fb:comments
9 fb:live-stream
Archivos adjuntos de mensajes
9 fb:attachment-preview
Formularios
9 fb:captcha
9 fb:submit
1.3.5.3. Legado JavaScript SDK
Si actualiza a la nueva SDK JavaScript, por favor asegúrese de quitar todas las
referencias a la antigua biblioteca de JavaScript, ya que son incompatibles y hará
que la aplicación deje de funcionar. Usted puede encontrar referencias a la antigua
biblioteca de JavaScript al buscar la cadena "FeatureLoader.js.php".
FB.CanvasClient
9 FB.CanvasClient.add_windowSizeChan
ged
9 FB.CanvasClient.getCanvasInfo
9 FB.CanvasClient.get_timerInterval
9 FB.CanvasClient.remove_windowSizeC
hanged
9 FB.CanvasClient.setCanvasHeight
9 FB.CanvasClient.set_timerInterval
9 FB.CanvasClient.startTimerToSizeToCo
ntent
9 FB.CanvasClient.stopTimerToSizeToCo
ntent
FB.Connect
9 FB.Connect.addSignedPublicSessionDat
aToUrl
9 FB.Connect.createApplication
9 FB.Connect.forceSessionRefresh
9 FB.Connect.getSignedPublicSessionDat
a
Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 57
9 FB.Connect.getUIServerDialogProperty
9 FB.Connect.get_loggedInUser
9 FB.Connect.get_status
9 FB.Connect.ifUserConnected
9 FB.Connect.inviteConnectUsers
9 FB.Connect.isUIServerEnabled
9 FB.Connect.logout
9 FB.Connect.logoutAndRedirect
9 FB.Connect.pollLoginStatus
9 FB.Connect.requireSession
9 FB.Connect.showAddFriendDialog
9 FB.Connect.showAddSectionButton
9 FB.Connect.showBookmarkDialog
9 FB.Connect.showFeedDialog
9 FB.Connect.showPermissionDialog
9 FB.Connect.showProfileTabDialog
9 FB.Connect.showUIServerDialog
9 FB.Connect.streamPublish
FB.ApiClient
9 FB.ApiClient.auth_getAppPublicKey
9 FB.ApiClient.auth_getSignedPublicSessi
onData
9 FB.ApiClient.callMethod
9 FB.ApiClient.connect_getUnconnected
FriendsCount
9 FB.ApiClient.events_get
9 FB.ApiClient.events_getMembers
9 FB.ApiClient.fbml_refreshImgSrc
9 FB.ApiClient.fbml_refreshRefUrl
9 FB.ApiClient.feed_getAppFriendStories
9 FB.ApiClient.feed_publishUserAction
9 FB.ApiClient.fql_query
9 FB.ApiClient.friends_get
9 FB.ApiClient.get_apiKey
9 FB.ApiClient.get_session
9 FB.ApiClient.get_sessionWaitable
9 FB.ApiClient.pages_getInfo
9 FB.ApiClient.pages_isAdmin
9 FB.ApiClient.pages_isAppAdded
9 FB.ApiClient.pages_isFan
9 FB.ApiClient.photos_addTag
9 FB.ApiClient.photos_createAlbum
9 FB.ApiClient.photos_get
9 FB.ApiClient.photos_getAlbums
9 FB.ApiClient.photos_getTags
9 FB.ApiClient.preloadFQL_get
9 FB.ApiClient.requireLogin
9 FB.ApiClient.revokeAuthorization
9 FB.ApiClient.sessionIsExpired
9 FB.ApiClient.set_session
9 FB.ApiClient.stream_get
9 FB.ApiClient.stream_getComments
9 FB.ApiClient.stream_getFilters
9 FB.ApiClient.users_getInfo
9 FB.ApiClient.users_hasAppPermission
9 FB.ApiClient.users_isAppAdded
9 FB.ApiClient.users_isAppUser
9 FB.ApiClient.users_setStatus
FB.XFBML.Host
9 FB.XFBML.Host.get_areElementsReady
9 FB.XFBML.Host.parseDomElement
9 FB.XFBML.Host.parseDomTree
9 FB.XFBML.Host.refresh
FB.XFBML.Conditions
9 FB.XFBML.Conditions.ifCanSee
FB.Monitor
9 FB.Monitor.bind
9 FB.Monitor.copy
9 FB.Monitor.disableLogging
9 FB.Monitor.externalCallback
9 FB.Monitor.forEach
9 FB.Monitor.logFunction
9 FB.Monitor.logXFBML
9 FB.Monitor.loggingEnabled
9 FB.Monitor.provide
9 FB.Monitor.redo
9 FB.Monitor.resolve
9 FB.Monitor.scheduleSend
9 FB.Monitor.send
9 FB.Monitor.subclass
Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 58
9 FB.Monitor.wrapObject
FB.Facebook
9 FB.Facebook.add_initCalled
9 FB.Facebook.get_baseDomain
9 FB.Facebook.get_initialized
9 FB.Facebook.get_isInCanvas
9 FB.Facebook.get_isInConnect
9 FB.Facebook.get_sessionState
9 FB.Facebook.get_sessionWaitable
9 FB.Facebook.init
9 FB.Facebook.remove_initCalled
9 FB.Facebook.set_baseDomain
FB.Waitable
9 FB.Waitable.add_changed
9 FB.Waitable.onChange
9 FB.Waitable.remove_changed
9 FB.Waitable.resetChange
9 FB.Waitable.waitForCondition
9 FB.Waitable.waitForValue
9 FB.Waitable.waitUntilReady
FB.BatchSequencer
9 FB.BatchSequencer.execute
FB.PendingResult
9 FB.PendingResult.setPendingRes
1.4. SERVICIOS WEB
1.4.1. Estructura de un sitio web 2.0
La nueva era de las páginas web ha llegado y no pasará desapercibida. La Web 2.0
está cambiando de forma radical la forma en la que las empresas, los directores, y
los profesionales están utilizando Internet para sus negocios. Los nuevos retos son
universales e importantes. Aquí tenéis diez apuntes sobre la nueva era de la red.
La Web 2.0 (también conocida como Internet 2.0) no
es un software específico ni tampoco una marca
registrada, pero en cambio se trata de una serie de
aplicaciones web que facilitan el intercambio de
información de forma interactiva, el uso de centros
de diseños y las colaboraciones en la www (World
Wide Web). Normalmente este término se asocia
.:: Neptalí Mena Cisneros ::. 58
con Dale Dougherty, vicepresidente de O’Reilly Media; este hecho se volvió oficial
durante la conferencia de O’Reilly Media en el 2004. El término se refiere a una
actitud sobre el compartir la información y los cambios que se acumulan sobre los
usos de la web. Esta aproximación revolucionaria se basa en la Web como un tipo
de plataforma. El problema con el que aún nos encontramos es el hecho que ni
Dale Dougherty ni tampoco Tim O’Really (presidente de O’Reilly Media) han
formulado una definición clara sobre la Web 2.0. La Web 2.0 representa la
evolución de la www de una serie de portales estáticos hacia un entorno global en
el que el software online, las aplicaciones multimedia y la conexión de banda
ancha permiten ofrecer una mayor cantidad de información y una interacción más
estrecha entre los usuarios.
En este escenario, la ausencia de una única definición ha contribuido a la
generación de un debate internacional (que aún hoy día existe) sobre el término
Web 2.0. Desde el análisis de las afirmaciones de Tim O’Reilly hasta las que frece
Wikipedia y varios posts, creo que las características de la Web 2.0 pueden
resumirse en los siguientes diez apuntes que permitirán una mejor comprensión
sobre la Web 2.0:
1. La Web es una plataforma. Hemos pasado de un software instalable en
nuestros PC’s a servicios de software que son accesibles online.
2. La Web es funcionalidad. La Web ayuda en la transferencia de información
y servicios desde páginas web.
3. La Web es simple. Facilita el uso y el acceso a los servicios web a través de
de pantallas más agradables y fáciles de usar
4. La Web es ligera. Los modelos de desarrollo, los procesos y los modelos de
negocio se vuelven ligeros. La ligereza está asociada con la habilidad para
compartir la información y los servicios de forma fácil y hacerlo posible a
través de la implementación de intuitivos elementos modulares.
5. La Web es social. Las personas crean la Web “popularizan la Web”
mediante la socialización y el movimiento gradual de los miembros del
mundo físico hacia el mundo online.
6. La Web es un flujo. Los usuarios son vistos como co-desarrolladores, la Web
2.0 permanece en el “perpetuo beta”, se encontrará en el nivel de
desarrollo beta por un periodo de tiempo indefinido.
7. La Web es flexible. El software se encuentra en un nivel más avanzando
porque este nivel permite el acceso a contenidos digitales a los que antes
no se podía llegar. Esta idea es similar a la del concepto del “Long Tail”, que
.:: Neptalí Mena Cisneros ::. 59
se centra en el contenido menos popular al que antes no se podía tener
acceso.
8. La Web es combinable. La expansión de códigos para poder modificar las
aplicaciones web (como Google hace con las aplicaciones de Google Maps)
permite a los individuos, que no tienen porque ser profesionales de los
ordenadores, combinar diferentes aplicaciones para crear nuevas.
9. La Web es participativa. La Web 2.0 ha adoptado una estructura de
participación que alientan a los usuarios mejorar la aplicación mientras la
utilizan, en vez de mantenerla rígida y controlada.
10.La Web está en nuestras manos. El aumento de la organización de la
información enfatiza el uso amistoso de la misma a través de los enlaces.
Gracias al fenómeno social del etiquetado cada vez es más fácil acceder a la
información.
1.4.2. Configuración de un CMS GNU
Para el desarrollos de este sitio web se ha
obtado por la utilización del software GNU
Joomla!, ya que este cumple con todas las
características necesarias para desarrollar la
propuesta de este proyecto.
Joomla! es un sistema de gestión de
contenidos, y entre sus principales virtudes
está la de permitir editar el contenido de un
sitio web de manera sencilla. Es una
aplicación de código abierto programada mayoritariamente en PHP bajo una
licencia GPL. Este administrador de contenidos puede trabajar en Internet o
intranets y requiere de una base de datos MySQL, así como, preferiblemente, de
un servidor HTTP Apache.
Joomla! ¿Un sistema seguro?
En términos objetivos, nada que esté publicado en la web puede considerarse
completamente seguro. Si han violado sistemas tan complejos como el de la
Fuerza Aérea norteamericana, poco queda para el resto del contenido de internet.
Ahora bien, si nos plegamos a lo que la generalidad entiende como “seguridad en
internet”, Joomla! es uno de los escasos CMS que cuenta con la suficiente
.:: Neptalí Mena Cisneros ::. 60
participación activa como para generar soluciones precisas en el menor tiempo
posible ante los bugs/vulnerabilidades que se vayan descubriendo.
Esto de la seguridad no es un mal exclusivo de Joomla!; otros CMS han caído bajo
el yugo de los ataques y muchas veces la solución llega demasiado tarde.
Comenzando con Joomla!
En principio es bueno saber cómo están organizados los distintos elementos que
intervienen en Joomla! y cómo actúan para devolver los resultados esperados.
Cuando un usuario escribe o hace click en nuestra dirección web, el index.php
inmediatamente “llama” a la plantilla que estamos usando:
En el index de la plantilla se encuentra buena parte de la información de estructura
de la web, y casi toda la información de los estilos. No toda la estructura se
controla desde la plantilla porque ésta, a su vez, “llama” a los elementos que el
diseñador incluyó con anterioridad.
Es decir, si en la plantilla se requieren módulos, entonces aparecerá el Módulo
específico que originalmente se encuentra en su directorio y ahora se refleja en el
sitio. Igualmente sucede con los Componentes.
.:: Neptalí Mena Cisneros ::. 61
Todo Módulo y Componente tiene insertada su propia estructura HTML, así como
instrucciones PHP particulares para cada caso, y algunas veces hasta su propia hoja
de estilos CSS. Los Módulos están en el directorio /modules/ y los Componentes en
/components/. Puedes probar personalizando el Módulo que más te guste con tus
propias etiquetas y opciones de configuración, ya que cada Módulo tiene sus
parámetros en un archivo XML.
Lo anterior constituye una explicación muy básica (quizás haga falta otro artículo
más técnico y específico al respecto), pero ahora sabes que la “compleja
estructura” no es tan compleja; un archivo llama a otro y todo se refleja como
HTML a la vista de tus visitantes.
1.4.3. Adaptación de API’s desarrolladas para la Web
Las API’S que se utilizarán en este proyecto serán las descritas anteriormente en
ítem 1.2.2. de los Socials Plugins, además se podrá integrar más aplicaciones a
medida que se vayan presentando necesidades.
.:: Neptalí Mena Cisneros ::. 62
CAPÍTULO ll
DIAGNÓSTICO
2.1. ANTECEDENTES DIAGNÓSTICO
El Club de Observación Galileo fue creado ya hace más de 15 años, su fundador y
representante el Ufólogo Jaime Rodríguez T. que es muy conocido en medios
televisivos y radiales tanto a nivel nacional como internacional con su programa
“Evidencia Ovni”, conjuntamente con un grupo de amigos dan los inicios a la
primera entidad dedicada a la Investigación del Fenómeno Ovni en nuestro país,
este club nació bajo la necesidad de tratar de abastecer conocimientos acerca de
este tema, a todos los llamados “espíritus inquietos” (personas que se interesan en
el tema OVNI), brindándoles también la oportunidad de colaborar en importantes
investigaciones tanto nacionales como internacionales como por ejemplo: “Tayos,
un mundo intraterrestre”, “Área 51: Secretos que matan”, “Billy Meier, la historia”,
“Chupacabras, ¿mascota extraterrestre?” y así una gran cantidad de evidencia y
casos por investigar que existía sobre este tema y que de una u otra manera se
necesitaba incrementar en número de personas para agilitar el proceso de
investigación.
Viendo estas necesidades, se decidió conformar un grupo que los una en el
esfuerzo de investigación para de esta manera seguir consiguiendo más Evidencia
Ovni, y a su vez brindando la oportunidad a todas las personas interesadas en
formar parte del equipo de investigación, aportando con su conocimiento y su
apoyo al enriquecimiento de las pruebas presentadas por este fenómeno.
Hace 3 años atrás se lanzó oficialmente el sitio web de dicha entidad con el
dominio registrado de www.clubgalileo.com; este sitio sirve para personas que se
interesaran en el tema puedan mantenerse al tanto de noticias sobre el fenómeno
OVNI y del mismo Club.
Sin embargo el Club Galileo se ha visto en la necesidad de cada vez actualizar y
mejorar su modo de comunicación con los demás miembros y gracias a los avances
de la tecnología y la Web 2.0, podemos decir que hoy en día las Redes Sociales
han ganado su lugar de una manera vertiginosa, convirtiéndose en promisorio
crecimiento de entidades o lugares de encuentros de personas que compartan las
mismas ideologías, estableciendo estas un nuevo hito dentro de la comunicación y
expresión de opinión sobre algún tema a debatir con fines netamente de
compartir con los demás, entonces es así como el Club de Observación Galileo ha
optado por incluir esta herramienta tecnológica dentro de sus objetivos a futuro,
para poder conectar en una sola red a las personas que les interese el fenómeno
OVNI y los grandes enigmas de la humanidad.
.:: Neptalí Mena Cisneros ::. 63
2.2. OBJETIVOS DE DIAGNÓSTICO.
2.1.1. Objetivo General
Diseñar e Implementar una Web 2.0 para la Red Social “HUNABKU” perteneciente
al Club de Observación Galileo y su integración a las redes sociales de Facebook y
Twitter mediante API´s utilizando software GNU.
2.1.2. Objetivos Específicos.
2.1.2.1. Investigar y recolectar información sobre la Web 2.0, Redes Sociales y su
acción dentro de la sociedad, en el campo de la comunicación y tecnología, así
como también sobre la API’s de autentificación, plugins sociales y API’s gráficos
correspondientes a la plataforma de Facebook y API’s Twitter.
2.1.2.2. Diagnosticar el estado actual del sistema web del Club de Observación
Galileo, determinando la forma de cómo se han estado relacionando,
intercomunicando y organizando.
2.1.2.3. Modificar API’s de Facebook tales como de autentificación, plugins sociales
y API’s gráficos según las necesidades del club, además los API’s de Twitter para su
integración en redes sociales.
2.1.2.4. Implementar API’s de Facebook que ayuden al mejoramiento de los
procesos que maneja el Club Galileo, para ayudarlos a impulsarlos mediante
herramientas de e-marketing en la web.
2.1.2.5. Diseñar, implementar e implantar el sistema de la Red Social “HunabKu”
para el sitio del Club de Observación Galileo, aplicando los conocimientos
adquirido sobre las API’s y plataforma de Facebook.
2.1.2.6. Realizar pruebas de funcionamiento del sistema para corregir fallos y
errores que se generen en el diseño y desarrollo.
2.1.2.7. Analizar los impactos generados por el sistema de la Red Social
“HunabKu”, documentar el Proyecto con el procedimiento del funcionamiento y
uso de todas las API’s aplicadas, en un Informe.
2.1.2.8. Socializar los resultados del proyecto.
.:: Neptalí Mena Cisneros ::. 64
2.3. METODOLOGÍA.
METODOS
x Método Descriptivo. Permitirá la descripción del estado actual de los medios
de comunicación en la escuela de Ingeniería de la PUCE-SI, para obtener un punto
de referencia en el desarrollo de la solución informática.
x Método Experimental. Con este método se procederá a modificar la realidad
actual, mediante la implementación e implantación del presente proyecto y
poder describir en qué forma afectó y podría seguir afectando la solución
informática a la problemática mencionada.
2.3.2. TÉCNICAS
x Observación. Nos permite conocer cuál es la forma en la que se establece el
proceso de comunicación entre los miembros del Club Galileo, que nos permite
conocer a los responsables de esta acción y los beneficiarios del mismo. Dicha
técnica permite recabar gran cantidad de datos y por ende información que serán
utilizadas en el proceso del diseño e implantación del sistema del sitio Web.
x Entrevista. Mediante esta técnica, se pretende obtener importante información
acerca de cómo se han venido comunicando los miembros del Club a través de
experiencias que les han permitido comunicarse. De estas entrevistas se
recopilará información valiosa para deducir que opciones y soluciones serán
acogidos por el sistema a desarrollar.
x Encuesta. Sin duda, la técnica de encuesta es la más utilizada por los
investigadores, se la realizará a los miembros del Club de Observación Galileo
para conocer la información y aplicaciones que les gustaría que tenga el sitio
web.
.:: Neptalí Mena Cisneros ::. 65
2.3.3. INSTRUMENTOS
Para realizar la investigación es necesario contar con los siguientes instrumentos
de investigación:
x Hojas de recolección de datos.
x Computador.
x Dispositivos de almacenamiento como Memorias Flash o CD’s.
x Software y Hardware para el desarrollo de la aplicación.
2.4 ANÁLISIS DE LOS RESULTADOS
OBSERVACIÓN.
A través de esta técnica se ha obtenido los siguientes resultados:
El Club de Observación Galileo, cuenta con una persona encargada que viene ser
un Coordinador por provincia, quien difunde la información y contacta por vía
telefónica o vía e-mail a los miembros del Club. Por otro lado, los miembros del
Club, se ven en la necesidad de hacer llamadas al Coordinador o a otros
miembros del Grupo, para saber la información acerca de un evento o de un caso
de investigación a tratarse.
ENTREVISTA.
Las entrevistas realizadas a los miembros del Club Galileo, arrojaron grandes
aportaciones para el desarrollo de esta aplicación y a continuación se detalla un
resumen de la información recolectada en estas entrevistas.
x Medios de comunicación. Una forma de comunicarse entre los miembros del
Club, es a través de llamadas telefónicas, haciendo un proceso con el que el
Coordinador tiene que hacer una llamada telefónica a cada uno de los miembros,
para transmitir información sobre un evento o casos a investigarse, haciéndose
.:: Neptalí Mena Cisneros ::. 66
repetitivo y tedioso para cada uno de los integrantes del Club haciendo que este
medio sea sumamente costoso.
x Ahora se puede prestar atención especial a la acogida que ha tenido el uso del
internet en nuestro país y a nivel mundial, se dice que al menos cerca del 60% de
la población ecuatoriana tiene acceso al Internet, siendo que muy pocas
entidades se ha dedicado a transmitir información por medio de esta gran
herramienta de la comunicación actual.
Mediante el Internet con la Web 2.0 y con las herramientas: Facebook y Twitter
que se encargan de difundir algún tipo de información ya sea de noticias, y otros
aspectos de interés personal y un sin fin de alternativas para los usuarios y lo más
importante es que, los costos para la publicación de una noticia o evento son
gratuitos, y se lo hace simplemente ingresando a la página con la que se conoce
en forma inmediata cualquier información que se requiera.
x Ing. Sistemas. La tecnología sin duda revolucionó a la humanidad, con ella
todo es posible, hace unas décadas atrás era fascinante ver películas de Ciencia
Ficción en las que la gente podía volar, comunicarse a través de complejos
dispositivos que le permitía visualizar a la apersona con la que sostenían la
conversación, complejos sistemas de seguridad y muchas otras cosas que en la
actualidad ya han dejado de ser ciencia ficción.
Específicamente la tecnología ha tenido gran repercusión en las comunicaciones
actualmente el Planeta cuenta con una gran cantidad de satélites, antenas y
líneas de cable interoceánico que se han encargado de acortar las distancias en la
Tierra y solo hace falta retroceder 20 años y echar un vistazo a lo que hacían
nuestros antepasados para comunicarse con cualquier familiar o conocido en
otra ciudad y a otro país.
.:: Neptalí Mena Cisneros ::. 67
Esta generación se dedicó a la escritura, su única forma de comunicarse era a
través de las casi olvidadas cartas y para esa época era lo máximo en
comunicación, un mensaje tardaba días en llegar a su destino y días en obtener
una respuesta, hoy en la actualidad la carta ha sido reemplazada por los emails es
imposible establecer un negocio, trabajar e inclusive hacer amistades sin tener un
email.
Sin duda esta es una excelente forma de comunicarse y como es el caso de esta
investigación el mantener informados a gran cantidad de usuarios y sin costo
alguno, muchas empresas ya han implementado servicios a través del Internet y
la Web 2.0, como son consultas bancarias, envío de pedidos a proveedores y
cualquier servicio que requiera localizar al usuario en la mayor cantidad de sitios
en el país.
TABULACIÓN Y ANÁLISIS DE LA INFORMACIÓN.
Para la recolección de Información en este proyecto de investigación se
utilizará los métodos o técnicas como: Encuestas y entrevistas, a los socios
del Club Galileo más cercano, que en este caso sería el Club Galileo
Imbabura, que se vería favorecido con este proyecto, Esta información será
relevante en el desarrollo del diseño e implantación del Sistema.
.:: Neptalí Mena Cisneros ::. 68
ENCUESTA
La encuesta realizada a 25 personas dio como resultado los siguientes datos:
1.- ¿Usted es parte de alguna red social?
RESPUESTAS FRECUENCIA PORCENTAJE
SI 25 100%
NO 0 0%
Total 25 100%
Observamos que el 100% de los encuestados tiene una cuenta en una red social.
100%
0%
Pregunta #1
si no
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466
T72466

Más contenido relacionado

Similar a T72466

Diapositivas slideshare
Diapositivas   slideshareDiapositivas   slideshare
Diapositivas slidesharelamunoz844
 
Proyecto tecnologia ii
Proyecto tecnologia iiProyecto tecnologia ii
Proyecto tecnologia iinatylito
 
Las redes sociales en la UPV (I. Despujol y J.L. Díez)
Las redes sociales en la UPV (I. Despujol y J.L. Díez)Las redes sociales en la UPV (I. Despujol y J.L. Díez)
Las redes sociales en la UPV (I. Despujol y J.L. Díez)Comunica2 Campus Gandia
 
Informe Final Seguridad en las comunicaciones
Informe Final Seguridad en las comunicacionesInforme Final Seguridad en las comunicaciones
Informe Final Seguridad en las comunicacionesMaria Tobon
 
Articulo plep sistemas operativo Javier Cruz
Articulo plep sistemas operativo Javier CruzArticulo plep sistemas operativo Javier Cruz
Articulo plep sistemas operativo Javier CruzJavier Tafur
 
4 racconto de capacitaciones 2008-2009-2010-2011
4   racconto de capacitaciones 2008-2009-2010-20114   racconto de capacitaciones 2008-2009-2010-2011
4 racconto de capacitaciones 2008-2009-2010-2011INT
 
Evolucion de la web
Evolucion de la webEvolucion de la web
Evolucion de la webEveliinPinto
 
Proyecto taller de medios digitales
Proyecto taller de medios digitalesProyecto taller de medios digitales
Proyecto taller de medios digitalesFlorencia Peralta
 
Tarea por parejas jose maría alberto
Tarea por parejas jose maría albertoTarea por parejas jose maría alberto
Tarea por parejas jose maría alberto_vk33
 

Similar a T72466 (20)

Jimmy tercera parte
Jimmy tercera parteJimmy tercera parte
Jimmy tercera parte
 
Jimmy tercera parte
Jimmy tercera parteJimmy tercera parte
Jimmy tercera parte
 
Conferencia "Maestro Digital"-Fundación Backus
Conferencia "Maestro Digital"-Fundación BackusConferencia "Maestro Digital"-Fundación Backus
Conferencia "Maestro Digital"-Fundación Backus
 
Taller Backus
Taller BackusTaller Backus
Taller Backus
 
Diapositivas slideshare
Diapositivas   slideshareDiapositivas   slideshare
Diapositivas slideshare
 
Masoneria final-taller-de-medios
Masoneria final-taller-de-mediosMasoneria final-taller-de-medios
Masoneria final-taller-de-medios
 
Masoneria final-taller-de-medios
Masoneria final-taller-de-mediosMasoneria final-taller-de-medios
Masoneria final-taller-de-medios
 
Educacionweb
EducacionwebEducacionweb
Educacionweb
 
Proyecto tecnologia ii
Proyecto tecnologia iiProyecto tecnologia ii
Proyecto tecnologia ii
 
Jornadas gandíacompleto
Jornadas gandíacompletoJornadas gandíacompleto
Jornadas gandíacompleto
 
Las redes sociales en la UPV (I. Despujol y J.L. Díez)
Las redes sociales en la UPV (I. Despujol y J.L. Díez)Las redes sociales en la UPV (I. Despujol y J.L. Díez)
Las redes sociales en la UPV (I. Despujol y J.L. Díez)
 
Practicas
PracticasPracticas
Practicas
 
Informe Final Seguridad en las comunicaciones
Informe Final Seguridad en las comunicacionesInforme Final Seguridad en las comunicaciones
Informe Final Seguridad en las comunicaciones
 
Articulo plep sistemas operativo Javier Cruz
Articulo plep sistemas operativo Javier CruzArticulo plep sistemas operativo Javier Cruz
Articulo plep sistemas operativo Javier Cruz
 
4 racconto de capacitaciones 2008-2009-2010-2011
4   racconto de capacitaciones 2008-2009-2010-20114   racconto de capacitaciones 2008-2009-2010-2011
4 racconto de capacitaciones 2008-2009-2010-2011
 
Evolucion de la web
Evolucion de la webEvolucion de la web
Evolucion de la web
 
Proyecto taller de medios digitales
Proyecto taller de medios digitalesProyecto taller de medios digitales
Proyecto taller de medios digitales
 
Tarea por parejas jose maría alberto
Tarea por parejas jose maría albertoTarea por parejas jose maría alberto
Tarea por parejas jose maría alberto
 
Conociendo La Web 2.0
Conociendo La Web 2.0Conociendo La Web 2.0
Conociendo La Web 2.0
 
Manual taller multimedia 2012
Manual taller multimedia 2012Manual taller multimedia 2012
Manual taller multimedia 2012
 

T72466

  • 1. PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE IBARRA (PUCE-SI) ESCUELA DE INGENIERÍA INFORME FINAL DEL PROYECTO “Diseño e implementación de una Web 2.0 para una Red Social “HUNABKU” perteneciente al Club de Observación Galileo y su integración a las redes sociales de Facebook y Twitter mediante API´s utilizando software GNU”. Línea de Investigación: Investigaciones de nuevas tendencias de tecnología PREVIO LA OBTENCIÓN DEL TÍTULO DE “INGENIERO EN SISTEMAS” AUTOR : Neptalí Mena Cisneros ASESOR : Ing. Ismael Castro IBARRA – MAYO 2011
  • 2. .:: Neptalí Mena Cisneros ::. 2 RESUMEN EJECUTIVO El presente proyecto tuvo como finalidad el desarrollo de una plataforma Web 2.0 denominada Red Social “HUNABKU”, que permitirá a los miembros del Club de Observación “Galileo” a nivel provincial y nacional, mantener una comunicación con todas las personas involucradas dentro de ella, a través de la integración con las Redes Sociales más utilizadas actualmente como son FACEBOOK Y TWITTER. Para realizar el estudio se tomó a los miembros del Club Galileo Imbabura como población, de la cual se obtuvieron los datos necesarios para diagnosticar cuanta aceptación tendría el desarrollo del sistema propuesto en este proyecto. Los resultados muestran que, aproximadamente cerca del 80% de los encuestados utilizan el Internet y las Redes Sociales, así mismo se muestra como todos los encuestados es decir el 100% tienen una cuenta en una Red Social, el 76% ingresan a las Redes Sociales para revisar sus estados o notificaciones de amigos, así mismo, de grupos o de la Red en la que se encuentran inmersos. Esto indica que la plataforma de la Red Social desarrollada tendrá gran aceptación por parte de los socios del Club Galileo. El sistema diseñado está basado en una arquitectura cliente/servidor desarrollado con herramientas libres para el desarrollo del sitio Web: Joomla!, MySQL y PHP, JavaScript y la plataforma de Facebook para integración, la administración de la Red Social HUNABKU, está implementado con el mismo CMS Joomla! y bajo el componente JomSocial v2.0.2, componente de terceros que se encarga de la administración de la red social. Entonces podemos afirmar que el sitio web es una completa y potente Web 2.0 que está diseñada con Joomla! un sistema GNU y con la plataforma de integración de las API’s de Facebook y Twitter.
  • 3. .:: Neptalí Mena Cisneros ::. 3 AUTORÍA Yo, Neptalí Mena Cisneros, portador de la cédula de ciudadanía Nº 100265829-0 declaro bajo juramento que la presente investigación es de total responsabilidad del autor, y que se han respetado las diferentes fuentes de información realizando las citas correspondientes. _______________________ NEPTALÍ MENA CISNEROS
  • 4. .:: Neptalí Mena Cisneros ::. 4 PRESENTACIÓN En vista del gran avance tecnológico y de la continua preocupación del hombre por estar bien informado, este proyecto busca dotar de una innovadora forma de comunicarse utilizando el Internet, la Web 2.0, y en conjunción las Redes Sociales, para mantener comunicados a los miembros del Club de Observación Galileo, por esta razón es que se decide implementar la Red Social “HUNABKU”. Este proyecto se encuentra estructurado en cinco capítulos: Marco Teórico, Diagnóstico, Propuesta, Análisis de Impactos y Conclusiones & Recomendaciones. En el primer capítulo se ha realizado una exhaustiva investigación acerca de la web2.0 y las redes sociales sus orígenes y su evolución hasta llegar a ser lo que hoy conocemos como las redes más potentes como son Facebook y Twitter, de igual forma se detalla cómo funciona la Plataforma de Facebook, su estructura y las diferentes formas de utilizarlo además se incluye un estudio de conectividad entre el Sitio Web2.0 y las API’s de la Plataforma de Facebook. En el segundo capítulo se buscó diagnosticar los actuales medios de comunicación, conocer cuan aceptable sería la implementación del sistema propuesto en este proyecto; Para lo cual se tomó a los miembros del Club de Observación Galileo de Imbabura para obtener los resultados necesarios para este diagnóstico. Una vez conocida la realidad de los actuales medios de comunicación y de cuan aceptable sería el desarrollo del sistema que propone este proyecto, el tercer
  • 5. .:: Neptalí Mena Cisneros ::. 5 capítulo muestra como se desarrolló el mismo, teniendo en consideración las técnicas y métodos que se utilizan para el desarrollo de software; Este capítulo contiene el análisis, diseño, desarrollo y pruebas del sistema basados en una arquitectura de tres capas: Capa de Datos [Back End], Capa de Negocios y Capa de Presentación [Front End]. En el cuarto capítulo se realiza un análisis de los principales impactos que generó el sistema en los que se mencionan impactos: tecnológico, educativo, económico y social-institucional. Para finalizar este trabajo de investigación y desarrollo se plantea una serie de conclusiones y recomendaciones que podrían ser tomadas en cuenta en el desarrollo de futuras investigaciones y aplicaciones que sigan esta misma línea o pretendan dar una nueva perspectiva. Este trabajo de investigación se pone a disposición de todas aquellas personas: miembro del Club Galileo, investigadores del fenómeno OVNI, aficionados, estudiantes de la PUCE-SI y público en general que desean conocer y profundizar en el ámbito de la comunicación en internet y las de redes sociales.
  • 6. .:: Neptalí Mena Cisneros ::. 6 DEDICATORIA El sistema que se desarrolló en este proyecto me ha llenado de tantas alegrías, triunfos y mucho conocimiento, así como de trabajo, esfuerzo y mucho sacrificio y lo dedico a cinco personas que supieron guiarme y ayudarme en mi vida y en el transcurso de mi carrera universitaria. A mis Padres, que día a día en su trabajo incansable de guiarme y educarme han entregado lo mejor de sí, para formar un hombre de bien. Ing. Ismael Castro, compañero, tutor y sobre todo un gran amigo, que de él aprendí a desarrollar y buscar nuevas tecnologías que se adapte a mi manera de crear sistemas, dando solución a muchas cosas y haciéndolo divertido. Ing. Eugenio Salazar, que me impulso en el medio creativo del mundo multimedia y me apoya constantemente a surgir en el medio laboral y competitivo. Ing. Jaime Rodríguez T., que supo darme su confianza y supo mostrarse amigo, y quien con sus conocimientos, hizo que el espíritu inquieto que estaba en mi, irradie y siga buscando más respuestas a lo existe más allá de todo este mundo.
  • 7. .:: Neptalí Mena Cisneros ::. 7 AGRADECIMIENTO A Dios por haberme concedido la oportunidad de culminar mi carrera, a mis padres y hermana que con entusiasmo compartieron mis triunfos y derrotas, a todos mis familiares quienes siempre estuvieron pendientes de mi, a todos mis compañeros, colegas y amigos de quienes llevo gratos recuerdos, a los docentes de la escuela de Ingeniería que sin reserva supieron impartir sus conocimientos, a la PUCE-SI y la Escuela de Ingeniería por recibirme en sus aulas y permitir desarrollarme dentro de un ambiente donde predomina los valores cristianos; A todos y cada uno de ellos muchas gracias.
  • 8. .:: Neptalí Mena Cisneros ::. 8 ÍNDICE RESUMEN EJECUTIVO 2 AUTORIA 3 PRESENTACIÓN 4 DEDICATORIA 5 AGRADECIMIENTOS 7 ÍNDICE 8 CAPÍTULO l MARCO TEÓRICO 1.1 INTRODUCCIÓN A LAS REDES SOCIALES Y WEB 2.0 14 Red Social 17 Visión de la Web 2.0 19 1.1.1 Historia de las Redes Sociales en Internet 19 1.1.2 Arquitectura de una Red Social con Web 2.0 21 Componente Social 21 Distribución 22 Aplicación 23 Apis de terceros 23 1.1.3 Características y requerimientos de una Red Social basada en 24 una Web2.0 1.2 CONCEPTOS DE LA PLATAFORMA DE FACEBOOK 27 1.2.1 Núcleo API. 27 Graph API 27 La Autentificación 28 Los Social Plugins 28 Los SDK 28
  • 9. .:: Neptalí Mena Cisneros ::. 9 1.2.2 Social Plugins 30 Like Button (Botón Me Gusta) 30 Activity Feed (Actividad Reciente) 31 Recommendations (Recomendaciones) 32 Like Box (Caja de Me Gusta) 32 Login Button (Botón de Inicio de Sesión) 33 Registration (Registro) 34 Facepile (Pila de fotos) 34 Comments (Comentarios) 35 Live Stream (Transmisión en vivo) 36 1.2.3 Facebook SDKs 37 JavaScript SDK 37 Facebook SDK PHP 38 1.2.4 API’s Avanzadas 39 Facebook Markup Languaje (FBML) 40 Integración con Facebook Chat 40 Facebook Anuncios API 41 1.3 FUNCIONALIDAD DE LA PLATAFORMA DE FACEBOOK 42 1.3.1 Introducción a la Plataforma de Facebook 42 1.3.2 Descubriendo Facebook 42 Noticias 43 El Perfil 44 El Gráfico Social 45 1.3.3 ¿Qué es la Plataforma de Facebook? 46 Puntos de integración 46 Directorio de aplicaciones de Facebook 47 Aplicaciones Verificadas por Facebook 48 Aplicaciones de Facebook Recomendadas 48 1.3.4 Arquitectura de las Aplicaciones de Facebook 49 1.3.5 Legado API 50 1.3.5.1 Legado REST API 51 1.3.5.2 Legado FQL 54 1.3.5.3 Legado JavaSript SDK 56
  • 10. .:: Neptalí Mena Cisneros ::. 10 1.4 SERVICIOS WEB 58 1.4.1 Estructura de un sitio web 2.0. 59 1.4.2 Confuguración de un CMS GNU 59 1.4.3 Adaptación de API’s desarroladas para la web 61 CAPÍTULO ll DIAGNÓSTICO 2.1 ANTECEDENTES DIAGNÓSTICO 62 2.2 OBJETIVOS 63 2.1.1 Objetivo General. 63 2.1.2 Objetivos Específicos. 63 2.3 METODOLOGÍA 64 2.3.1 Métodos. 64 Método Descriptivo 64 Método Experimental 64 2.3.2 Técnicas. 64 Observación 64 Entrevista 64 Encuesta 64 2.3.3 Instrumentos. 65 2.4 ANÁLISIS DE RESULTADOS 65 Observación. 65 Entrevista. 65 Encuesta. 68 2.5 ANÁLISIS DE FACTIVILIDAD 77 Factibilidad Técnica. 77 Factibilidad Económica. 77 Factibilidad Operativa. 78
  • 11. .:: Neptalí Mena Cisneros ::. 11 2.6 ANÁLISIS FODA 78 Análisis Interno del Club Galileo. 78 Análisis Externo del Club Galileo. 79 Estrategias FA, FO, DO, DA. 80 2.7 INTERPRETACIÓN DEL DIAGNÓSTICO. 81 CAPÍTULO lll PROPUESTA 3.1 INTRODUCCIÓN 82 3.2 PLATAFORMA 82 3.2.1 Hardware. 82 3.2.2 Software. 83 3.3 DESCRIPCIÓN DEL SISTEMA 86 3.3.1 Sitio Web 87 3.3.2 Usuarios 88 3.3.3 API’s de Integración 88 3.3.4 Plataforma de Facebook 88 3.4 DISEÑO DEL SOFTWARE 89 3.4.1 Diseño e Implementación de la Red Social “Hunabku” 89 3.4.1.1 Instalación e implementación de Joomla! 89 3.4.1.2 Instalación e implementación del Sistema JomSocial 96 3.4.2 Creación y Conexión Facebook API’s 113 3.4.2.1 Construyendo nuestras Aplicaciones 113 Facebook Connect 113 Configuración de usuario 116 Facebook configuración de inicio de sesión 119 Configuración de permisos 120 Trabajando con API’s de Facebook 124 Facebook Markup Language (FBML) 126 Utilizando Facebook Query Language (FQL) 128 Scripts con Facebook JavaScript 129 Construyendo API’s con Facebook Developers Tools 130
  • 12. .:: Neptalí Mena Cisneros ::. 12 Desarrollo de páginas para Facebook 130 Creación de contenidos para páginas de perfil 135 3.4.3 Datos del Servidor y Web 136 3.4.4 Usuarios Finales 137 3.5 PRUEBAS DEL SISTEMA 139 Conexión red Social/Facebook vía API’s 139 CAPÍTULO lV ANÁLISIS DE IMPACTOS 4.1 IMPACTO TECNOLÓGICO 143 4.1.1 Evaluación del Impacto Tecnológico. 144 4.1.2 Análisis. 145 4.2 IMPACTO EDUCATIVO 146 4.2.1 Evaluación del Impacto Educativo. 147 4.2.2 Análisis. 147 4.3 IMPACTO ECONÓMICO 148 4.3.1 Evaluación del Impacto Económico. 149 4.3.2 Análisis. 149 4.1 IMPACTO SOCIAL E INSTITUCIONAL 150 4.1.1 Evaluación del Impacto Tecnológico. 151 4.1.2 Análisis. 151 CAPÍTULO V CONCLUSIONES Y RECOMENDACIONES 5.1 CONCLUSIONES 152 5.2 RECOMENDACIONES 153
  • 13. .:: Neptalí Mena Cisneros ::. 13 BIBLIOGRAFÍA 154 ANEXOS 156 A1. FORMATO DE ENCUESTA 157 A2. FOTOGRAFIAS DE LA SOCIALIZACIÓN 158 A3. PAPER 159 A4. TABLA DE LA WEB 2.0 160 A5. ANTEPROYECTO 161 A6. CARTA DE SATISFACCIÓN DEL PROYECTO 162
  • 14. .:: Neptalí Mena Cisneros ::. 14 CAPÍTULO I MARCO TEÓRICO 1.1 INTRODUCCIÓN A LAS REDES SOCIALES Y WEB 2.0 1.1.1. RED SOCIAL1 . En el ámbito de Internet, las redes sociales son páginas que permiten a las personas conectarse con sus amigos e incluso realizar nuevas amistades, a fin de compartir contenidos, interactuar y crear comunidades sobre intereses similares: trabajo, lecturas, juegos, amistad, relaciones amorosas, etc. Figura 1. Relación de personas en una Red Social Bajo el concepto de Redes, que son formas de interacción social, definida como un intercambio dinámico entre personas, grupos e instituciones en contextos de complejidad. Un sistema abierto y en construcción permanente que involucra a conjuntos que se identifican en las mismas necesidades y problemáticas y que se organizan para potenciar sus recursos. Una sociedad fragmentada en minorías aisladas, discriminadas, que ha desvitalizado sus redes vinculares, con ciudadanos carentes de protagonismo en procesos transformadores, se condena a una democracia restringida. La intervención en red es un intento reflexivo y organizador de esas interacciones e intercambios, donde el sujeto se funda a sí mismo diferenciándose de otros. 1 Fuente: http://es.wikipedia.org/wiki/Red_social
  • 15. .:: Neptalí Mena Cisneros ::. 15 Entonces, en las redes sociales en Internet tenemos la posibilidad de interactuar con otras personas aunque no las conozcamos, el sistema es abierto y se va construyendo obviamente con lo que cada suscripto a la red aporta, cada nuevo miembro que ingresa transforma al grupo en otro nuevo. Al crear una red social, se empieza por hallar allí otras personas con quienes compartir nuestros intereses, preocupaciones o necesidades y aunque no sucediera más que eso, eso mismo ya es mucho porque rompe el aislamiento que suele aquejar a la gran mayoría de las personas, lo cual suele manifestarse en retraimiento y otras veces en excesiva vida social sin afectos comprometidos. Las redes sociales en Internet suelen posibilitar que pluridad y comunidad se conjuguen y allí quizás esté gran parte de toda la energía que le da vida a los grupos humanos que conforman esas redes. Las redes sociales dan al anónimo popularidad, al discriminado integración, al diferente igualdad, al malhumorado educación y así muchas cosas más. Las redes sociales se basan en cinco pilares principales, los cuales son necesarios para poder lograr el éxito: • Organización en la red. • Pequeñas influencias económicas. • Métricas Relevantes. • Tipología de la red. • Identidad Virtual. Figura 2. Los cinco pilares de una Red Social Existen diferentes tipos de redes sociales, estas se pueden clasificar por los intereses que acercan al usuario a la red social, estas pueden ser de 4 tipos: Red Social Organización en la Red Métricas relevantes Tipología de la red Influencias económicas Identidad Virtual
  • 16. .:: Neptalí Mena Cisneros ::. 16 • Sociales: se crean comunidades on line para que la gente intercambie experiencias. • Profesionales: son aquellas redes en la cuales se intercambia información profesional. • Parejas: redes para buscar parejas y amigos. • Buscar personas: redes que ayudan a retomar el contacto con viejos amigos y antiguos compañeros de trabajo. Figura 3. Clasificación de las Redes Sociales.
  • 17. .:: Neptalí Mena Cisneros ::. 17 1.1.2. WEB 2.02 . Es la representación de la evolución de las aplicaciones tradicionales hacia aplicaciones web enfocadas al usuario final. La Web 2.0 es una actitud y no precisamente una tecnología, dicho en otras palabras “es una manera de entender internet, un internet donde los usuarios pueden interactuar con otros usuarios y ser participes activos de la red”. Ahora no solo se navega y se obtiene información, ahora se es una entidad dentro de internet. La Web 2.0 es la transición que se ha dado de aplicaciones tradicionales hacia aplicaciones que funcionan a través de la web enfocada al usuario final. Se trata de aplicaciones que generen colaboración y de servicios que reemplacen las aplicaciones de escritorio. Es una etapa que ha definido nuevos proyectos en Internet y está preocupándose por brindar mejores soluciones para el usuario final. Muchos aseguran que hemos reinventado lo que era el Internet, otros hablan de burbujas e inversiones, pero la realidad es que la evolución natural del medio realmente ha propuesto cosas más interesantes como lo analizamos diariamente en las notas de Actualidad. Y es que cuando el web inició, nos encontrábamos en un entorno estático, con páginas en HTML que sufrían pocas actualizaciones y no tenían interacción con el usuario. Pero para entender de donde viene el término de Web 2.0 tenemos que remontarnos al momento en que Dale Dougherty de O’Reilly Media utilizó este término en una conferencia en la que compartió una lluvia de ideas junto a Craig Cline de MediaLive. En dicho evento se hablaba del renacimiento y evolución de la web. Constantemente estaban surgiendo nuevas aplicaciones y sitios con sorprendentes funcionalidades. Y así se dio la pauta para la Web 2.0 Conference que arrancó en el 2004 y hoy en día se realiza anualmente en San Francisco, con eventos adicionales utilizando la marca en otros países. 2 Fuente: http://es.wikipedia.org/wiki/Web_2.0 Figura 4. Interconexión de personas mediante internet
  • 18. .:: Neptalí Mena Cisneros ::. 18 En la charla inicial del Web Conference se habló de los principios que tenían las aplicaciones Web 2.0: x La web es la plataforma x La información es lo que mueve al Internet x Efectos de la red movidos por una arquitectura de participación. x La innovación surge de características distribuidas por desarrolladores independientes. x El fin del círculo de adopción de software pues tenemos servicios en beta perpetuo. Existen tres aspectos fundamentales en donde se apoya la web 2.0: • Tecnología: las nuevas herramientas tecnológicas y el mayor ancho de banda, han facilitado crear aplicaciones web más interactivas. • Comunidad: gracias al crecimiento de la gente que utiliza internet y la nueva filosofía adquirida a través de las nuevas tecnologías se puede acceder a un mayor número de contenidos. • Arquitectura Software: las nuevas arquitecturas fundamentadas en internet facilitan el desarrollo de aplicaciones reutilizando y/o extendiendo aplicaciones existentes. Tecnología Comunidad Arquitectura Software Figura 5. Interconexión de personas mediante internet
  • 19. .:: Neptalí Mena Cisneros ::. 19 VISIÓN DE LA WEB 2.0 En la web 2.0 se están creando diferentes nichos de aplicaciones. Para más información acerca de un organigrama de redes sociales ver en el Anexo1 Mapa de la Web 2.0 1.1.1 HISTORIA DE LAS REDES SOCIALES EN INTERNET. El origen de las redes sociales se remonta, al menos, a 1995, cuando Randy Conrads creó el sitio web classmates.com. Con esta red social se pretende que la gente pueda recuperar o mantener el contacto con antiguos compañeros del colegio, instituto, universidad, entre otros. Figura 6. Pilares hacia donde se encuentran orientados la Web 2.0
  • 20. .:: Neptalí Mena Cisneros ::. 20 3 Varios han sido los fines que han movido la creación de redes sociales a través del tiempo. Desde 1997 hasta hoy el más representativo ha sido diseñar un lugar para el encuentro de miles de personas que tengan intereses en común. a. En 1997 se creó Sixdegrees, este fue el primer servicio que permitió crear un perfil en la web, agrupar a los contactos directos e intercambiar mensajes con ellos. b. Para 1999 se creó LiveJournal.com, este fue uno de los primeros servicios de redes sociales en ofrecer blogs y diarios en línea. c. En el 2001 aparece Ryce.com, y nace con ella la primera red social especializada, en la actualidad ésta agrupa por lo menos a 500 mil profesionales. d. En el 2002 nace Friendster que fue la primera en tener un sistema inteligente capaz de relacionar a los usuarios de la red según sus gustos. e. También en este año nace Fotolog, la primera red social que nace con el fin de intercambiar fotografías. f. Last FM nace en el 2002, en principio con el objetivo de ser una emisora en línea, pero con el tiempo se convierte en una red social movida por el interés en la música. g. En el 2003 se crea linked in, una red social con el fin de propiciar las relaciones empresariales. h. En el 2003 nace My Space, tal vez la red más grande del momento agrupando a más de 250 millones de usuarios. i. En ese mismo año nace MSN Spaces llamado hoy Windows Live Spaces, que tiene 100 millones de visitantes únicos al mes. En Colombia hay 1.5 millones de usuarios de esta red. j. También en el 2003 nace Hi5 que, hoy por hoy, tiene 50 millones de cuentas activas. k. K. Flickr nace en el 2004 como una red social que funciona a través del servicio de compartir fotografías. l. En este año también nace Orkut, la red social de Google con gran popularidad en Brasil y La India. m. Facebook, la sensación del momento nace en el 2004, tiene más de 37 millones de cuentas activas y 50 millones de usuarios diarios. n. En el 2005 nace Yahoo 360, la red social de esta empresa que cuenta con servicio de correo, calendario, fotos, eventos, blog y música. o. En el 2005 también nace Bebo, una red muy básica con el fin de contactar amigos e intercambiar multimedia. 3 http://www.medellin.edu.co/sites/Educativo/Docentes/Noticias/Paginas/historiaderedessociales.aspx
  • 21. .:: Neptalí Mena Cisneros ::. 21 p. Y la última en la cadena ha sido Xing, esta nació en el 2006 con el fin de agrupar ejecutivos permitiéndoles compartir datos, crear agendas conjuntas y construir discusiones en torno a un tema común. 1.1.2 ARQUITECTURA DE UNA RED SOCIAL CON WEB 2.0 Para poder construir una aplicación web 2.0 basada en redes sociales lo primero es tener claro los cuatro pilares básicos de este tipo de aplicaciones: • Componente social: fundamental en el desarrollo de una aplicación de este tipo. Se describe que aspecto social va implementar. • Aplicación: tecnologías a utilizar para desarrollar la aplicación. • Distribución: definir las formas de como otras aplicaciones interactúan con la nuestra. • Apis de 3º: incrustar en nuestra aplicación Apis de terceros para aumentar la interactividad de la aplicación. COMPONENTE SOCIAL El componente social define la forma que la comunidad se va a intercomunicar e interactuar. También define el fin y la temática de la red social que se crea. Lo más importante en este apartado es la comunicación entre los usuarios y como los usuarios pueden obtener beneficios de las aportaciones de otros usuarios. Figura 7. Cuatro pilares de la arquitectura de Web 2.0
  • 22. .:: Neptalí Mena Cisneros ::. 22 DISTRIBUCIÓN Una parte principal también de una buena aplicación web 2.0 es la forma de interactuar con las diferentes aplicaciones existentes y futuras en el mercado. Para ello se utilizan diferentes protocolos existentes así como servicios estándares que faciliten la interacción entre dichas aplicaciones. Figura 9. Comunicación de los componentes sociales Figura 10. API’s – Widgets - Syndication
  • 23. .:: Neptalí Mena Cisneros ::. 23 APLICACIÓN La selección de la tecnología que se utilice para implementar y hacer correr la aplicación web también es muy importante ya que con ellas podremos avanzar más rápidamente. API’S DE TERCEROS La integración con Apis de terceros puede ser la clave para la aplicación a desarrollar ya que con ello se conseguirá muchas interactividad con los usuarios y también entre ellos. desarrollar ya que con ello se conseguirá muchas interactividad con los usuarios y también entre ellos. Figura 11. Aplicaciones para Webs 2.0 Figura 12. API’s de terceros para web 2.0
  • 24. .:: Neptalí Mena Cisneros ::. 24 1.1.3. CARACTERISTICAS Y REQUERIMIENTOS DE UNA RED SOCIAL BASADA EN UNA WEB 2.04 Menos es más Un principio más estético y que rige el desarrollo de las interfaces en el planeta web 2.0 viene directo de la Bauhaus participa de la idea de "menos es más". Si la web de las punto com (la web 1.0) se trataba de ofrecer portales donde todo se podía obtener, llenos de opciones, botones, imágenes en movimiento, inteligencia artificial, etc.la web 2.0 consiste en la web de la simplicidad: desarrollar interfaces muy simples, para una función muy específica y con un sistema de funcionamiento muy básico. No hay más que comparar un portal de la web 1.0 con Google para notar la diferencia. Usabilidad como criterio clave Siguiendo de nuevo la filosofía Bauhaus, las aplicaciones web 2.0 abandonan todas las exageraciones de estilo de la web 1.0, la idea de crear "interfaces alternativas" muy innovadoras pero difíciles de utilizar. De nuevo, basta mirar Google o examinar un Ipod para ver esta filosofía de la usabilidad en acción. Además de ser un elemento estético clave, también es una pieza importante en el desarrollo económico. Una interface útil que permite hacer buenas búsquedas, entender cada paso que se hace, tener confianza en el sistema de pago de comercio electrónico etc. marca la diferencia entre un sistema fácil de usar, y que genera confianza y por tanto permite generar negocio y un sistema complejo y poco amigable que hace mucho más difícil la transacción económica. Interfaces diseñadas con un único objetivo básico Este es otro de los puntos clave en el desarrollo de la web 2.0. Si la web 1.0 apostaba por los portales en los que se acumulaba toda la información (así no era raro encontrarse un portal donde uno podía ver su horóscopo, la hora, el tiempo que hacía, su correo electrónico, noticias de música, la ventana del chat, artículos de revista, etc.) la web 2.0 desarrollar aplicaciones sencillas, pensadas para un único objetivo. De nuevo, la fuente de inspiración es Google que tiene una interface específica para cada función, optimizada para llevar a cabo una tarea de la forma más sencilla y usable posible: www.google.com para los buscadores, 4 http://www.redessocialesdistribuidas.net
  • 25. .:: Neptalí Mena Cisneros ::. 25 www.gmail.com para el correo electrónico, reader.google.com para consultar RSS, etc. Acercamiento universalista e inclusivo La plasticidad de las tecnologías de la información, que permiten reconfigurar los datos a ofrecer en diferentes formatos de forma que personas con dificultades de visión o ciegas puedan también tener acceso a los textos en una web, ya sea aumentando el tamaño de la letra de forma automática o incluso convirtiendo el texto en habla mediante un programa conversor. Igualmente, las posibilidades de customizar una aplicación web permiten adaptar la información presentada al nivel de interés o de conocimientos de un usuario, de manera que en lugar de ofrecer el mismo contenido para todos podemos tener un web educativo con diversos formatos y contenidos en función de si uno es profesor o alumno, también la posibilidad de traducir un website a varias lenguas, de adaptar la cantidad de jerga técnica o el nivel de detalle en una explicación, etc. Separación entre forma y contenido A nivel técnico este elemento es muy importante, tener la forma y el contenido separados como piezas de un rompecabezas en una base de datos es lo que permite precisamente el punto anterior, que una web pueda adaptarse a diferentes usuarios y necesidades. Al separar forma y contenido es mucho más sencillo ofrecer servicios al usuario como una versión para imprimir de un artículo, conseguir que ciertas informaciones sean accesibles desde un móvil o una PDA, poder leer un artículo en nuestra lengua materna, etc. A nivel técnico también facilita a los técnicos la tarea de revisar un website a la búsqueda de errores, y para los creadores de contenidos más facilidad a la hora de subirlos, sin tenerse que preocupar en qué formato va a aparecer. Reciclado de datos y mashup Otro fenómeno que por un lado potencia la web 2.0 y por otro le sirve de combustible para funcionar es el concepto de libre distribución de contenidos. Ya le llamemos Creative Commons, Copyleft, Software libre, Código Abierto, etc. parte de la estructura de la web 2.0, especialmente la que se basa en el data remix y en la aportación de datos por los usuarios, necesita que información, software,
  • 26. .:: Neptalí Mena Cisneros ::. 26 imágenes, música y otros materiales culturales puedan distribuirse y reusarse de forma libre. Ello no implica necesariamente violaciones de copyright, aunque sin duda este nuevo paradigma está poniendo en aprietos los sistemas tradicionales de distribuir los objetos culturales. Sobre todo se trata, como en el modelo de Creative Commons de desarrollar nuevos modelos a la hora de distribuir los contenidos intelectuales, sin necesariamente pasar por el modelo del copyright. Gracias a este sistema es fácil conseguir nuevos servicios de forma rápida y casi automática, cruzando los datos de varios websites o servicios on-line en una nueva aplicación web, siguiendo la filosofía de Internet como base de datos del ya citado Manovich (2006). Criterios en el uso de colores, fondos y tipografías Este informe no está pensado para un análisis detallado de la estética 2.0, ni tampoco es su función. También hay que recordar que la estética del diseño es algo eminentemente volátil y que puede cambiar de un mes al siguiente. Sin embargo, hay algunos aspectos de la estética web 2.0 que tienen que ver con algunas de las características que hemos mencionado antes. Así, el uso de fondos blancos, que ofrezcan un buen contraste para la lectura es un ejemplo de cómo la filosofía de la usabilidad está presente también en la estética de la web 2.0. Lo mismo sucede con muchas otras características, como el uso de tipografías san serif (que són más legibles en pantalla) el uso de tamaños grandes (accesibilidad), etc. Otras características como las formas redondeadas en lugar de las rectangulares, el uso de colores pastel o los botones grandes con iconos buscan más una estética amable, familiar, frente a la tendencia de la estética corporativa, tecnológica e innovador, pero también fría e impersonal- de la burbuja tecnológica y la web 1.0.
  • 27. .:: Neptalí Mena Cisneros ::. 27 1.2. CONCEPTOS DE LA PLATAFORMA DE FACEBOOK 1.2.1. Núcleo API GRAPH API5 La Graph API o API de gráficos es el núcleo de la plataforma de Facebook, lo que le permite leer y escribir datos en Facebook. Proporciona una visión simple y consistente de la gráfica social, de manera uniforme que representan objetos (por ejemplo, la gente, fotos, eventos, y las páginas) y las conexiones entre ellas (por ejemplo, las relaciones amigo, contenido compartido, y etiquetas de fotos). Cada objeto en el gráfico social tiene un identificador único. Usted puede acceder a las propiedades de un objeto por su interés en la página https://graph.facebook.com/ID. Por ejemplo, la página oficial de la Plataforma Facebook ha Identificación 19292868552, para que pueda buscar el objeto en la dirección https://graph.facebook.com/clubgalileoec: Facebook ha adoptado el modelo de datos Json y ha pasado a generar las peticiones mediante URLs muy simples. Por ver unos ejemplos: - Para ver los datos de la página Matt Cutts: https://graph.facebook.com/36350343556 - Y para ver la foto de esta página: https://graph.facebook.com/36350343556/picture - O para ver su hilo de mensajes: https://graph.facebook.com/36350343556/feed Con este tipo de accesos, vemos que las peticiones de datos, sobre todo para páginas públicas (ya que la información para urls no públicas es un poco más difícil de extraer) se han vuelto mucho más sencillas. A mí personalmente me recuerdan 5 http://developers.facebook.com/docs/reference/api { "id": "222035317567", "name": "Club de Observaciu00f3n Galileo", "picture": "http://profile.ak.fbcdn.net/hprofile-ak- snc4/203468_222035317567_762748_s.jpg", "link": "http://www.facebook.com/clubgalileoec", "category": "Science", "likes": 47, "website": "www.clubgalileo.com", "username": "clubgalileoec", "description": "OVNIS " }
  • 28. .:: Neptalí Mena Cisneros ::. 28 a las de la API de Twitter en su sencillez. Esto va a hacer que la creación de consultas sea muchísimo más sencilla: podremos ver la información en el mismo tipo de plugins que ahora mimo maneja twitter accediendo incluso de forma cómoda con javascript. En si la API de Facebook es una interfaz de servicios Web para acceder a la programación servicios básicos (perfil, amigos, grupos, eventos, foto) y realizar otras funcionalidades de Facebook (iniciar la sesión, reorientar, actualizar vista). El API está basado en una arquitectura basada en REST (que explico más adelante). Facebook apoya oficialmente bibliotecas de cliente para PHP (4 y 5) y Java. Estos se puede descargar de developers.facebook.com / resources.php. Varias bibliotecas de cliente no oficiales se han desarrollado para la mayoría de todos los principales Lenguajes de programación web, incluyendo ASP.NET, ASP (VBScript), ColdFusion, C + +, C #, D, Lista de Emacs, PHP4, Lisp, Python Perl, Ruby on Rails, VB.NET, y Windows Mobile. Para descargar estas versiones no oficiales, ir a la wiki de documentación. developers.facebook.com Cuando se utiliza una biblioteca de cliente, utilice los métodos específicos del idioma para acceder a Facebook servicios. Por ejemplo, aquí está cómo se puede recuperar el nombre y foto de un usuario y luego mostrar en una página: No se preocupe por los detalles por ahora. Sólo observe que la información del usuario específico se accede mediante las llamadas $facebook->api_client- >users_getInfo() LA AUTENTIFICACIÓN6 Pero la base de la mayor parte de Facebook es la información privada a la que solo se puede acceder si se te da permiso como usuario: los amigos, sus feeds, sus fotos, etc. Esto hace que sea imprescindible una forma de autentificar usuarios. Facebook no ha querido comerse demasiado la cabeza en este sentido y a generado por lo que ya podemos decir que es un estándar de identificación: el OAuth. Usado por Twitter y adaptado recientemente por meebo para crear una plataforma conjunta de autentificación de la mayor parte de redes sociales (salvo los dos grandes: Facebook y twitter). Facebook ha hecho también su adaptación del sistema y la ha llamado OAuth 2.0. Este sistema se basa en que el usuario, con 6 http://developers.facebook.com/docs/authentication/ $user_data = array(‘name’, ‘pic’, ‘activities’); $current = $facebook->api_client->users_getInfo($user, $user_data); echo “<p>Tu nombre es {$current[0][‘name’]} </p>”; echo “<Esto es lo que parece: <img src=’{$current[0][‘pic’]} /></p>”;
  • 29. .:: Neptalí Mena Cisneros ::. 29 las cookies de login en Facebook ya creadas habilite el acceso con nuestra aplicación de forma que a nosotros nos vuelva un "Token", un identificador con el que en cada petición que hagamos demostramos tener acceso a esa información. Realmente el sistema se ha simplificado hasta el punto que uno mismo puede entender todos los pasos que se dan al autentificar usuarios. Aun así, sea cual sea la vía por la que accedamos Facebook va poner en nuestras manos las herramientas necesarias para que esta parte sea lo más sencilla posible. LOS SOCIAL PLUGINS Pero Facebook no se ha quedado ahí y ha sacado formas aún más sencillas para interactuar con él en lo que ha llamado "Social Plugins". En estos vienen definidos unos módulos que podemos añadir fácilmente a nuestra web y que se encargan de aportar a nuestra web de nuevas funcionalidades totalmente gestionadas por Facebook y en las que muchas ya interactúan por si solas con sus sistemas. LOS SDK Facebook también nos brida clases ya trabajadas para poder usar esta nueva API en nuestras webs. Destaca entre ellas la JavaScript SDK en la que con un simple código añadimos a nuestras páginas de forma asíncrona el javascript de Facebook que nos permitirá realizar desde el cliente y a nuestra manera el login del usuario y las llamadas a las distintas urls de la nueva Graph Api. Sin embargo, el proceso sigue siendo demasiado complejo para todo aquel que no sea programador. Este SDK es con diferencia mucho más usable que la API javascript de Facebook Connect, pero seguimos necesitando entenderlo totalmente para hacer la mayor parte del trabajo. <div id="fb-root"></div> <script> window.fbAsyncInit = function() { FB.init({appId: 'your app id', status: true, cookie: true, xfbml: true}); }; (function() { var e = document.createElement('script'); e.async = true; e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; document.getElementById('fb-root').appendChild(e); }()); </script>
  • 30. .:: Neptalí Mena Cisneros ::. 30 1.2.2. Social plugins 7 Dentro de los cambios aportados por la Facebook Graph API encontramos como elemento destacado los Social Plugins. Estos son pequeños fragmentos de código (Iframes o etiquetas FBML de Facebook) con los que dotar a nuestras páginas y aplicaciones de Facebook de nuevas opciones sociales y de conectividad con la red social por excelencia. Los plugins sociales de Facebook (Facebook) son herramientas que te ayudan a integrar un sitio web o blog con Facebook, ofrecen funcionalidades para compartir contenido e interactuar con tu comunidad sin que los lectores dejen el sitio web. Esto trae consigo el beneficio de generar una exposición del contenido del sitio muy grande a un mercado mucho más amplio, incrementando así el número de visitas y la comunicación con los lectores. Aquí explicaremos brevemente para que se utiliza cada uno. Estos botones los puedes generar a través de la página oficial de facebook http://developers.facebook.com/plugins/, para instalarlos básicamente generas el código html del plugin o los plugins que se vaya a utilizar y se lo inserta en tu sitio web. Seguidamente daremos un repaso a los 9 plugins que ha sacado Facebook por el momento, intentando mostrar sus posibilidades y su utilidad en el desarrollo de webs. 1. Like Button (Botón Me Gusta) Explicación: El Botón de Me Gusta es un icono que permite a cualquier lector registrado en Facebook compartir el contenido de un sitio web o blog, pueden ser productos, servicios, vídeo, música o algún artículo. Cuando los lectores dan un clic al botón, el contenido aparecerá en el lector de noticias de sus amigos con un link al sitio o blog donde se encuentran. Existen dos tipos de botones de “Me Gusta”, la versión con tecnología XFBML o con Iframe. La versión con XFBML es mucho más versátil, tiene 7 http://developers.facebook.com/docs/plugins
  • 31. .:: Neptalí Mena Cisneros ::. 31 opciones en tiempo real como ajustar el tamaño automáticamente, mostrar el número de “Me Gusta” en tiempo real y dar la opción al lector de escribir un comentario, que se publicara en su Muro con el link al sitio. El Iframe por otro lado solo mostrara el botón de “Me Gusta”. Es recomendable para: Sitios web que tienen contenido muy dinámico que se puede compartir individualmente como Tiendas Virtuales, Blogs, sitios de noticias y de descarga de Apps (Apps)/software. 2. Activity Feed (Actividad Reciente) Explicación: Este plugin muestra la actividad más reciente en facebook de tu sitio, lo que incluye cuantos usuarios han dado clic al botón “Me Gusta” o compartido el contenido del sitio en su red de contactos. Si el usuario esta registrado, el plugin mostrara la actividad de sus amigos y si no está registrado mostrara las recomendaciones del sitio y la opción de registrarse. Es recomendable para: Sitios con una alta actividad de fans en facebook y publicación de contenido, específicamente para los blogs este plugin es una poderosa herramienta que permite a los lectores ver que temas son los más relevantes. Figura 13. Panel de Configuración de “Like Button” Figura 14. Panel de Configuración de “Activity Feed”
  • 32. .:: Neptalí Mena Cisneros ::. 32 3. Recommendations (Recomendaciones) Explicación: El plugin de recomendaciones muestra el contenido que más ha gustado a los lectores de un sitio. Como el contenido está hospedado en Facebook, el plugin no requiere que el usuario tenga su sesión abierta de facebook. Para generar las recomendaciones el plugin considera todas las interacciones sociales con el URL del sitio web o blog. Es recomendable para: Sitios web que tengan una gran cantidad de fans en facebook y quieran mostrar las recomendaciones de su comunidad a las nuevas visitas del sitio. 4. Like Box (Caja de Me Gusta) Explicación: Plugin que permite a los dueños de páginas de facebook incrementar el número de “Me Gusta” desde su propio sitio web o blog. La caja de “Me Gusta” permite a los usuarios: * Ver el número y fotos del perfil de los usuarios que les gusta la página. * Leer los artículos más recientes de la página * Dar clic al botón de “Me Gusta” sin necesidad de visitar la página en Facebook. Figura 15. Panel de Configuración de “Recommendations”
  • 33. .:: Neptalí Mena Cisneros ::. 33 Es recomendada para: Sitios web que tengan una sección estática, ya que el objetivo del plugin es promocionar la marca a través de los lectores que gusten del contenido y le den clic a el botón de “Me Gusta”; la diferencia entre el botón “Me Gusta” y La caja “Me contenido dinámico individual como productos, servicios, artículos y la caja está enfocada a la marca del sitio en general. 5. Login Button (Botón de Inicio de Sesión) Explicación: El botón de inicio de sesión ofrece la funcionalidad de registrarse a Facebook desde un sitio web, además muestra las fotos del perfil de los amigos del usuario que ya se ha firmado. Es posible especificar el número máximo de filas en donde se mostraran las fotos. El plugin automáticamente se ajusta de tamaño, por ejemplo, si especifica un máximo de cuatro filas y hay amigos sólo para llenar dos filas, la altura del plugin será sólo lo necesaria para dos filas de fotos. Es recomendable para: Sitios que tengan comunidades, donde los miembros sean lectores que promuevan con sus amigos el sitio e interactúen a través de éste. Figura 16. Panel de Configuración de “Like Box” Figura 17. Panel de Configuración de “Login Button”
  • 34. .:: Neptalí Mena Cisneros ::. 34 6. Registration (Registro) El registro plugin te da la flexibilidad necesaria para solicitar información adicional que no está disponible a través de la API de Facebook (por ejemplo, película favorita). El plug-in permite a los usuarios que no tienen una cuenta en Facebook, o si no desea registrarse en su sitio con Facebook para el uso de la misma forma que los que se conectan con Facebook. Esto elimina la necesidad de ofrecer dos experiencias entrada independiente. Es recomendable para: Que los usuarios mediante este plugin de registro puedan a suscribirse fácilmente en su sitio web con su cuenta de Facebook. El plugin es un Iframe simple que usted puede bajar en su página. Al iniciar la sesión en Facebook, los usuarios ven un formulario que se rellena con la información de Facebook en su caso. 7. Facepile (Pila de fotos) Explicación: Este plugin despliega las fotos de los usuarios a los que les gusta el sitio o que se han registrado previamente. Es muy similar al Botón de inicio de sesión (Login Button) pero sin la parte de registro. Si ningún usuario o amigo que visita el sitio tiene abierta su sesión en facebook, no se mostrara el plugin. Figura 18. Panel de Configuración de “Registration”
  • 35. .:: Neptalí Mena Cisneros ::. 35 Es recomendable para: Sitios que tienen un sistema de registro diferente y buscan promocionarse a través de mostrar los amigos de los usuarios que visitan el sitio con la sesión abierta de Facebook. 8. Comments (Comentarios) Explicación: Plugins que permite compartir la actividad y los comentarios en tiempo real. Funciona mejor cuando se ejecuta un evento en vivo, como vídeo streaming, conciertos, discursos, conferencia, chats en vivo, juegos en internet. Es recomendable para: Sitios que tienen un sistema de registro diferente y buscan promocionarse a traves de mostrar los amigos de los usuarios que visitan el sitio con la sesión abierta de Facebook. Figura 19. Panel de Configuración de “Facepile” Figura 20. Panel de Configuración de “Comments”
  • 36. .:: Neptalí Mena Cisneros ::. 36 9. Live Stream (Transmisión en vivo) Explicación: Plugins que permite compartir la actividad y los comentarios en tiempo real. Funciona mejor cuando se ejecuta un evento en vivo, como vídeo streaming, conciertos, discursos, conferencia, chats en vivo, juegos en internet. Es recomendable para: Sitios que transmitan eventos en vivo. Es una herramienta poderosa para la interacción en tiempo real, te apoya a dar seguimiento a preguntas, comentarios, concursos y promociones. Figura 21. Panel de Configuración de “Live Stream”
  • 37. .:: Neptalí Mena Cisneros ::. 37 1.2.3. Facebook SDKs Facebook cuenta con varios SDK’s8 para uso de programadores, existen los siguientes JavaScript SDK, iOS SDK (iPhone y IPAD), Android SDK, PHP SDK, Tools (Herramientas). Anteriormente hemos indicado todos los SDK con lo que podemos trabajar en Facebook, pero como en esta tesis la estamos desarrollando con software GNU y nos basaremos más en el JavaScript SDK y PHP SDK. JavaScript SDK El SDK de código JavaScript que permite acceder a todas las funciones de la API de gráficos y cuadros de diálogo a través de JavaScript. Se proporciona un conjunto completo de funcionalidades de cliente para la autenticación y la representación de las versiones XFBML de nuestros plugins sociales. FBML no es compatible con el uso del estándar de JavaScript utilizando el elemento de secuencia de comandos. Sin embargo, Facebook JavaScript (o FBJS, para abreviar) permite una limitada funcionalidad de secuencias de comandos dentro de una aplicación de Facebook. Éstos son algunos de los diferencias entre FBJS y JavaScript: 9 En lugar de utilizar el estándar DOM9 JavaScript, Facebook ofrece a sus propia implementación DOM alternativa. 9 FBJS Muchos objeto implementaciones son las mismas de forma estándar de JavaScript, aunque hay algunas diferencias. Por ejemplo, en lugar de acceder a una propiedad de JavaScript (como document.href), FBJS utiliza un par de obtener y métodos establecidos en su lugar (getHref, setHref). 9 Cuando Facebook procesos código de scripting en el interior de los elementos de script, tachuelas en el identificador de aplicación a los nombres de funciones y variables. Facebook hace esto para crear un ámbito específico de la aplicación. Facebook JavaScript prevé AJAX y objetos de diálogo para que los desarrolladores de Facebook aprovechen estas herramientas. 8 SDK – Es un kit de desarrollo de software o SDK (siglas en inglés de software development kit) es generalmente un conjunto de herramientas de desarrollo que le permite a un programador crear aplicaciones para un sistema concreto, por ejemplo ciertos paquetes de software, frameworks, plataformas de hardware, computadoras, videoconsolas, sistemas operativos, etc. 9 DOM - El Document Object Model es una plataforma cruzada y la convención independiente del lenguaje para representar e interactuar con objetos en HTML, XHTML y documentos XML. La interfaz pública de un DOM se especifica en su interfaz de programación de aplicaciones (API).
  • 38. .:: Neptalí Mena Cisneros ::. 38 Facebook SDK PHP Este SDK proporciona apoyo a la plataforma Facebook a sus aplicaciones web basado en PHP. Esta biblioteca le ayuda a agregar Facebook sesión y el apoyo gráfico de la API a su sitio web. Los archivos de repositorio para descargarlos se los puedes hacer en el link https://github.com/facebook/php-sdk/ y son los siguientes: Este repositorio contiene el código abierto PHP SDK le permite utilizar todo los archivos en su sitio web. Uso Los ejemplos son un buen lugar para comenzar. El mínimo que se necesita tener es: Para hacer llamadas a la API: Identificados vs registrada de salida: if ($facebook->getSession()) { echo '<a href="' . $facebook->getLogoutUrl() . '">Logout</a>'; } else { echo '<a href="' . $facebook->getLoginUrl() . '">Login</a>'; } try { $me = $facebook->api('/me'); } catch (FacebookApiException $e) { error_log($e); } <?php require './facebook.php'; $facebook = new Facebook(array( 'appId' => 'YOUR APP ID', 'secret' => 'YOUR API SECRET', 'cookie' => true, // enable optional cookie support )); Figura 22. Muestra de visualización del sitio del repositorio
  • 39. .:: Neptalí Mena Cisneros ::. 39 1.2.4. API’s Avanzadas Hoy en día existen algunas API´s avanzadas que podemos utilizarlas como son las de Diálogos, FQL, Internacionalización de la API, Créditos de la API, Legado API, Legado API REST, Legado FBML , Legado API Javascript, pero igualmente el esta tesis nos basaremos en las siguientes: Facebook Query Language Facebook Query Language, o FQL, le permite utilizar una interfaz de estilo SQL para consultar los datos expuestos por el API de gráficos. Se prevé que algunas de las características avanzadas no disponibles en la API de gráficos, incluyendo el procesamiento por lotes varias consultas en una sola llamada. Facebook (Lenguaje de consulta FQL) es una interfaz basada en SQL en los datos de Facebook. Usted puede acceder a muchas tablas de bases de datos de Facebook, incluyendo el usuario, un amigo, grupo, group_member, evento, event_member, la foto, álbum, y photo_tag. El lenguaje en sí mismo es similar al estándar SQL, aunque con algunas restricciones: 9 Las instrucciones SELECT se debe realizar una tabla a la vez. 9 Únete a las consultas no están permitidas. 9 Una consulta debe ser indexables. En realidad se puede realizar la mayoría de las rutinas de acceso a los mismos datos utilizando API o FQL. Para ese momento, varias de las llamadas a la API no son más que contenedores para las consultas FQL. FQL incluso tiene algunas ventajas sobre el estándar API interfaz. Se reduce el ancho de banda y gastos generales de análisis y puede ayudar a reducir al mínimo el número de solicitudes de datos en situaciones complejas. (donde la variable $ user es el usuario actual): $friends = $facebook->api_client->fql_query(“SELECT uid, name FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1=$user)”);
  • 40. .:: Neptalí Mena Cisneros ::. 40 Facebook Markup Language (FBML) FBML le permite construir aplicaciones de Facebook que integran profundamente en la experiencia de un usuario de Facebook. Para utilizar JavaScript en FBJS FBML uso. Facebook Markup Language (FBML) es un lenguaje HTML que se usa para mostrar páginas interiores de la tela Facebook. Aquí hay tres hechos básicos sobre FBML: FBML contiene un subconjunto de los elementos HTML. Tales elementos comunes como p, ul, y H1 son parte de FBML. FBML proporciona cualificado de apoyo para los elementos de escritura y estilo. Normal JavaScript no se admite en un elemento script, aunque Facebook JavaScript no permite algunas capacidades de scripting. Usted no puede utilizar el elemento de estilo para ligarse a hojas de estilo externas, pero se puede utilizar para CSS interna. FBML también incluye varias extensiones propietarias en Facebook específicos Elementos de la interfaz, así como el flujo del programa. Por ejemplo, el FB: elemento de nombre muestra el nombre del usuario, basándose en el valor del atributo uid: Algunos elementos FBML ayudar a controlar el flujo de un programa. Por ejemplo, FB: -si puede-ver sólo muestra el contenido dentro de ella si el usuario tiene permiso para ver una función específica (el qué atributo) para el usuario especificado (el uid atributo). Considere lo siguiente: Integración con Facebook Chat Puede integrar Facebook Chat en su web, de escritorio, móviles o los productos de mensajería instantánea. Su cliente de mensajería instantánea se conecta al chat de Facebook a través de Jabber / XMPP servicio. Este documento describe las características y limitaciones del protocolo de chat de Facebook de XMPP para el desarrollador que se propone aplicar un cliente de chat de Facebook. Facebook Anuncios API <fb:if-can-see uid=”665127078” what=”profile”> <p> Se le concede acceso, afortunado!</p> <fb:else> Ir a otro lugar, que un desafortunado.</fb:else> </fb:if-can-see> <p> Su nombre es: <fb:name uid=”665127078” useyou=”false”/></p>
  • 41. .:: Neptalí Mena Cisneros ::. 41 Los anuncios de Facebook API permiten crear y gestionar sus propios anuncios en Facebook programación, sin necesidad de utilizar la herramienta Administrador de Publicidad de Facebook. Esta API está disponible como parte de un programa beta limitada y está sujeta a cambios. Si estás interesado en participar en la prueba beta, por favor, contacte con su administrador de cuentas de publicidad de Facebook. Si usted no tiene un Facebook cuenta de Administrador de Publicidad, sin embargo, usted puede solicitar soporte en la página de Facebook. Puede utilizar la API de anuncios si coincide con uno de estos perfiles: 9 Usted administra su propio anuncio gastar, y tienen muchas cuentas y / o anuncios de muchos. Puede utilizar la API de anuncios como una alternativa escalable a la herramienta de Facebook Gerente de Publicidad. 9 Usted es un proveedor de herramientas de publicidad que vende soluciones de gestión publicitaria a las empresas pequeñas y medianas empresas, así como a gestionar los anuncios de múltiples fuentes (como Facebook y otros anunciantes en línea). 9 Usted es una agencia de publicidad de la gestión de presupuestos y campañas para varios clientes. Si no quiere construir su propia herramienta de gestión de anuncios, se puede trabajar con un vendedor que tiene. 1.3. FUNCIONALIDAD DE LA PLATAFORMA DE FACEBOOK 1.3.1. Introducción a la Plataforma de Facebook. Oímos todo el tiempo acerca de "plataformas" en diversos ámbitos de la vida. Partidos políticos presentan sus políticas y agendas en documentos llamados plataformas. Un clavadista olímpico realiza una inmersión perfecta fuera de una plataforma de 10 metros en el camino en alcanzar con una medalla de oro. Heck, tenis de plataforma es una forma de tenis que la gente juega con remos. Facebook también tiene su propia plataforma, que inteligentemente la llamó Plataforma de Facebook. Afortunadamente para sus compañeros de trabajo, es una plataforma que no es necesario un traje de baño o una paleta de usar. Sin embargo, usted necesita saber un lenguaje de programación web tales como PHP o Java. Facebook ha ganado popularidad debido a su ambiente estructurado y su red social, pero la Plataforma de Facebook está demostrando ser un medio fundamental de ayudar a potenciar un negocio, empresa o persona y que se convierta en más productivo, gracias a aplicaciones de terceros. Facebook ofrece
  • 42. .:: Neptalí Mena Cisneros ::. 42 ahora una razón importante para que los usuarios inviertan en sí mismos en Facebook.com de una manera que nunca fueron realmente capaces de hacer con los sitios de redes sociales como MySpace. De hecho, sobre el lanzamiento de la Plataforma, era sólo cuestión de semanas para que los usuarios comenzaran a ver miles y miles de aplicaciones de todo tipo en Facebook que fueron inspirados por desarrolladores de las grandes corporaciones o simplemente aficionados que trabajan en sus casas por diversión. 1.3.2. DESCUBRIENDO FACEBOOK MySpace y Friendster pueden haber sido los primeros "ir a" lugares de línea interacción social, pero Facebook ha superado el crecimiento más rápido sitio de redes sociales en la Web. Su ambiente estructurado, el usuario agradable experiencia, y la plataforma extensible para aplicaciones de otros fabricantes han ayudado a que Facebook tenga este nivel de importancia y popularidad. Antes de empezar a desarrollar aplicaciones para Facebook, se debe llegar a conocer todos los contenidos del propio Facebook para garantizar plenamente entender el potencial de la forma en que su aplicación puede aprovechar su plataforma. Si es nuevo en Facebook, lo que se necesita primordialmente es tener muy presente los conceptos importantes de: Noticias y El Perfil. Noticias Una vez que haya iniciado sesión en Facebook, la página principal de Facebook (www.facebook.com) muestra la Noticia, como se muestra en la Figura 23. Piense en la Noticia como su propio canal de noticias personalizadas - algo así como un FNN (Noticias de la Red de Amigos), si desea obtener inteligente. La Noticia contiene una lista en vivo de anuncios o historias sobre la actividad de su red de amigos en Facebook - quien se hizo amigo, qué aplicaciones se agregó, cuál es su situación. Por ejemplo, si mi amigo Jaime Albear se convirtió en amigos con Andrea Hernández, me gustaría recibir la siguiente historia: Jaime Albear y Andrea Hernández ahora son amigos. Facebook compila esta lista de historias de noticias sobre la base de varios factores – la actividad de sus amigos, sus preferencias de tipos de historia, la configuración de frecuencia en determinados amigos, los niveles de privacidad de tus amigos, la opinión de un usuario en la calidad de una historia (conocido como "Me Gusta" y "x" votos) todos mezclados en un detrás de cámaras, el algoritmo de super secreto. Un usuario puede determinar la frecuencia de las noticias ciertas, pero en
  • 43. .:: Neptalí Mena Cisneros ::. 43 última instancia, Facebook mantiene el control más de lo que se coloca en el Servicio de Noticias. Facebook también coloca anuncios sociales en el interior del servicio de noticias. El Perfil Cada usuario de Facebook tiene un perfil individualizado, como la que se muestra en la Figura 24. Una página de perfil de un usuario "bienes inmuebles" en Facebook.com, una casa Página para el usuario, amigos y otras personas. Los usuarios deciden qué información para mostrar o restringir en función de quién es el visitante. La página de Facebook contiene una variedad de elementos. Algunos de los más notables para desarrolladores de aplicaciones son las siguientes: 9 Izquierda de navegación: la barra lateral izquierda de navegación (que mide 150 píxeles de ancho) contiene un menú de aplicaciones en las que los usuarios pueden acceder rápidamente a las aplicaciones. Los usuarios pueden arrastrar y soltar sus cinco aplicaciones favoritas en la sección superior. 9 Canvas: El lienzo o canvas es la sección de 520 píxeles a la derecha de la izquierda menú y debajo del menú de navegación superior. No sólo es la página de perfil contenida en el lienzo, pero todas las aplicaciones de Facebook se incluye también. Figura 23. “Noticias” contiene la lista de las nuevas novedades de nuestra red de amigos
  • 44. .:: Neptalí Mena Cisneros ::. 44 9 Mini-Feed: Mini-Feed contiene un resumen de instantáneas de las actividades de un del usuario. Nótese la diferencia con el Noticias: Considerando que de Noticias de Facebook.com muestra historias de amigos, un perfil de Mini-Feed presenta historias sólo se relaciona con el usuario. Como desarrollador de Facebook, puede publicar un Mini-Feed historia usando la API. 9 Perfil de la caja: cajas de perfil en la página de perfil del usuario consiste de una función de Facebook cajas (Mini-Feed, amigos, Educación y Trabajo) y Facebook aplicaciones. Pueden ser de ancho (400 píxeles) y aparecen en la sección principal del perfil, o estrecha (100 píxeles) a la izquierda barra lateral. Un usuario puede arrastrar y soltar cajas perfil a diversas partes del página y se puede quitar la caja el perfil de una aplicación sin borrar la aplicación. 9 Muro: Usted puede pensar en la pared como un "tablón de anuncios" de clases que las personas puede utilizar para enviar notas, comentarios, o comentario acerca de una persona. Como un desarrollador de Facebook, no se puede publicar directamente en el interior de la pared su aplicación. Sin embargo, puede proporcionar un archivo adjunto de la pared para sus usuarios. Un mensaje que la pared proporciona una forma para que los usuarios de su aplicación a agregar el contenido específico de la aplicación a sus paredes. Figura 24. La página de perfil de "Club Galileo" en Facebook.
  • 45. .:: Neptalí Mena Cisneros ::. 45 El Gráfico Social La red social a largo plazo se ha vuelto tan popular y familiar en los últimos años y aunque la gente no sea aficionada a la tecnología, por lo menos comprende el significado del término. Facebook, sin embargo, tiene su propia lengua vernácula en lo que respecta a la comprensión de redes sociales. Lo llaman el gráfico social. El gráfico social se puede definir como las interconexiones que existen entre la familia, amigos y conocidos que toda persona tiene. Tómame como un ejemplo. Tengo una esposa y tres niños, los padres que viven en Ibarra, una hermana que vive en Otavalo, muchos amigos de mi iglesia, conocidos de mi pueblo, compañeros de trabajo en los lugares de empleo anteriores, y así sucesivamente. Algunas de estas personas tienen las interconexiones de los suyos. Mi esposa conoce a mi hermana, mis hijos y a mis padres. Otros miembros de mi red no se conocen entre sí. Mis hijos, por ejemplo, nunca conocen a mi ex jefe, Salomón. Las relaciones sociales como estos están unidas por algún tipo de interdependencia entre sí. Puede ser de la familia, la fe, los amigos comunes intereses, la geografía, o la línea de trabajo. Pero siempre hay algún tipo de vínculo entre ellos, sin embargo suelto. En la vida cotidiana, la gente le da un gran valor a su gráfico social. Si estoy en busca de un trabajo, probablemente comenzará por la creación de redes mis amigos y antiguos compañeros de trabajo o conocidos en el mundo de alta tecnología. Si estoy buscando a alguien para ver nuestro perro mientras está de vacaciones, estoy dispuesto a confiar en la sobrina de su fin amigo para hacer bien el trabajo, a pesar de que apenas conocen la sobrina personalmente. Por otra parte, cuando estoy en busca de un dentista, busco y obtengo recomendaciones de la gente cuya opinión valoro en mi gráfico social. Las comunidades en línea como Facebook y MySpace buscan volver a crear este natural fenómeno humano en el mundo digital. Dentro de estas comunidades, que establecer estos vínculos entre las personas basadas en algún tipo de interdependencia. A través de los servicios comunitarios, que son capaces de llegar a saber cuáles son sus amigos y que están haciendo, la música que están escuchando, las películas que recomendamos, y qué aplicaciones están utilizando. Sin embargo, las prácticas, el comportamiento y la cultura de estas redes sociales diferentes al impacto de los sitios que emulan muy bien con el mundo real. En MySpace, por ejemplo, puedo recoger cientos o incluso miles de conexiones, pero sólo unos pocos son verdaderamente amigos con algún grado de interdependencia. En cambio, en un ambiente como el de Facebook, que no promueve, recogiendo amistades, puede que en la actualidad sólo tienen una docena de amigos, pero casi todas las conexiones están respaldadas por las
  • 46. .:: Neptalí Mena Cisneros ::. 46 relaciones del mundo real. Como resultado, tanto el lugar o las opiniones y actividades de mis amigos en Facebook, no me fuesen posibles en un sitio como MySpace. Este valor de la interconexión social es importante para el desarrollador de aplicaciones Facebook creando aplicaciones viables para socializar. Algo que es curioso para muchos el uso de la palabra, gráfico, en el término gráfico social. El término red en la red social es lo suficientemente intuitiva, pero el gráfico de la palabra evoca imágenes de algo que se crea en Microsoft Excel para mostrar la acción que u operación que se desea mostrar. Aunque el gráfico puede ser un sinónimo de tabla en el uso cotidiano, Facebook utiliza la definición matemática del término. En este contexto, se puede pensar en un gráfico como una abstracción para modelar relaciones entre conjuntos de nodos. 1.3.3. ¿Qué es la Plataforma de Facebook? La Plataforma de Facebook es un marco de programación basada en estándares que permite a los desarrolladores crear aplicaciones que interactúan y se integran con los servicios básicos de Facebook. Puntos de integración Cuando se crea una aplicación para la plataforma Facebook, se puede integrar en varios puntos en el marco de la creación de la aplicación. Dado el gran incremento de peticiones de aplicaciones que estamos recibiendo, se van necesitando manos nuevas en el equipo de desarrolladores de aplicaciones para Facebook. El perfil que se busca serían programadores jóvenes, con ganas de aprender y que programen en PHP, MySQL y tengan nociones de JQuery/Ajax. Considerándose la forma en que se integra en Facebook y sus aplicaciones, tanto por lo que se convierte más y más difícil de distinguir entre las aplicaciones creadas por Facebook y los desarrollados por terceros. Ahora podemos decir que las aplicaciones de Facebook son pequeños programas que se ejecutan dentro de la plataforma de Facebook (Facebook), es decir una aplicación de Facebook trabaja similar a un plug-in para un navegador o como un plug-in para un Content Management System (CMS) Diariamente Usamos aplicaciones dentro de Facebook para facilitarnos muchas actividades en nuestros perfiles de Facebook por ejemplo (Compartir contenido de youtube, compartir un enlace o cargar una imagen) Directorio de aplicaciones de Facebook
  • 47. .:: Neptalí Mena Cisneros ::. 47 Para conocer todo el potencial que ofrece Facebook con respecto a las aplicaciones existe el poco conocido Directorio de aplicación de Facebook que puedes acceder con la siguiente dirección Directorio de aplicaciones en facebook puedes buscar aplicaciones por categoría, opiniones de los usuarios y conocer cuales están verificadas y cuales se han agregado recientemente al directorio. Aplicaciones verificadas por Facebook Las aplicaciones verificadas por Facebook son todas aquellas que cumplen con todos los requisitos de transparencia y funcionalidad, respetando la privacidad del usuario y la de sus amigos cuando envía información e invitaciones sobre la misma. Figura 24. Directorio de Aplicaciones de Facebook Figura 25. Aplicaciones verificadas por Facebook
  • 48. .:: Neptalí Mena Cisneros ::. 48 Aplicaciones de Facebook recomendadas Desde mi punto de vista las aplicaciones que yo recomiendo y utilizo son las siguientes: Aplicaciones para perfiles personales - YouTube Video Box: Esta aplicación permite publicar y guardar en favoritos todos tus videos de youtube o la de tu cuenta de forma manual y agregarlos en una pestaña en tu perfil. - Selective Tweets: permite integrar tu perfil de twitter y solo publicar aquellos tweets que consideres importantes, también se utiliza para actualizar aquellas páginas de Facebook que tú seas administrador y des autorización a dicha aplicación. - Twitterfeed (twitterfeed): enlaza con todos los canales RSS que estés suscrito y los publica en tu perfil de Facebook al igual que en las páginas de Facebook que tú seas administrador y suministres autorización de publicación. - Creative Commons License: Permite colocar licencias CC a todos tus actualizaciones y contenido que cargues dentro de tu perfil de Facebook. - Profile Box: esta aplicación se utiliza para colocar contenido HTML dentro de tus pestañas o cajas en tu perfil de Facebook. Aplicaciones para Páginas de Facebook - Twitter (Twitter) for Pages (pages): esta aplicación crear una pestaña donde se publican todos los tweets de la cuenta de twitter que coloquemos en esta aplicación. - Selective Tweets: permite actualizar el estado de nuestra página de Facebook a través de nuestro perfil de twitter. - FBML: Añade funciones avanzadas a tu página usando la aplicación FBML Estática de Facebook. Esta aplicación añadirá un botón a tu página en la cual podrás convertir HTML o FBML (Seleccionador de lenguaje de Facebook) para una personalización mejorada de la página. - Networked Blogs: Importar los artículos de tu sitio web, posee soporte para RSS y Atom, esta aplicación tienes gran utilidad entre la comunidad de bloggers en Facebook. Una vez abierto el código de Facebook muchas empresas y Programadores se dedicaron a desarrollar numerosas aplicaciones de Facebook relacionadas con el ocio, entretenimiento y profesionales.
  • 49. .:: Neptalí Mena Cisneros ::. 49 1.3.4. Arquitectura de las Aplicaciones de Facebook Las Aplicaciones de Facebook no se instalan directamente en el servidor de Facebook, en su lugar, se colocan en el servidor del desarrollador y luego hace la llamada por Facebook cuando se solicita la URL de la aplicación. Para interactuar con las aplicaciones, Facebook utiliza una metáfora de devolución de llamada, es decir, la dirección URL de su aplicación está asociada con una aplicación registrada en Facebook. Cuando la URL de la aplicación Facebook se solicita, Facebook vuelve a dirigir la solicitud a su servidor, la aplicación procesa la solicitud, se comunica con Facebook utilizando el Facebook Application Programming Interface (API) o Facebook (Lenguaje de consulta FQL), y devuelve Facebook Markup Language (FBML) para Facebook para su presentación al usuario dentro de su grilla o pagina. Figura 26. Arquitectura Standard de una aplicación Web Figura 27. Arquitectura de las Aplicaciones de Facebook
  • 50. .:: Neptalí Mena Cisneros ::. 50 1.3.5. Legado API En el proceso del desarrollo de la tesis se inició un proceso de desaprobación de algunas API´s, cambiando de esta manera el modo de programación que se efectuaba hasta el mes de diciembre del 2010, entonces para esto facebook recomendaba que si usted está construyendo una nueva aplicación de Facebook, por favor se utilicen la API de gráficos, nuevos SDK de Javascript y plugins sociales en su lugar. A pesar de esto y como es misión de cumplir con los objetivos de la tesis tan solo detallaremos todas aquellas Apis que se las ha llamado de legado y que darán paso a nuevas métodos de programación dentro de el nuevo gráfico de Facebook. 1.3.5.1. Legado REST API La API REST le permite interactuar con el sitio web de Facebook mediante programación a través de peticiones HTTP. La API REST OAuth es compatible con 2.0, así como un mayor, esquema personalizado firma de autorización. Para hacer peticiones a la API REST con OAuth, que pide direcciones URL en el formato siguiente: Por ejemplo, puede buscar el perfil Zuck con: Los métodos de las REST APIS se clasifican en: Métodos de Administración 9 admin.banUsers 9 admin.getAllocation 9 admin.getAppProperties 9 admin.getBannedUsers 9 admin.getRestrictionInfo 9 admin.setAppProperties 9 admin.setRestrictionInfo 9 admin.unbanUsers 9 ads.getAdreportSchedules 9 application.getPublicInfo 9 batch.run 9 data.setCookie 9 fbml.setRefHandle 9 intl.getTranslations 9 intl.uploadNativeStrings 9 links.getStats 9 migrations.getStatuses 9 migrations.setStatus 9 pages.blockFan https://api.facebook.com/method/users.getInfo?uids=4&fields=name&access _token=2227470867|2.hWwHbXXT7t5cpNkw1ZaEYQ__.3600.1300932000- 670080972|w4CUJqc6u1d-otbn2FFuirHBHFI&format=json https://api.facebook.com/method/method_name? access_token=oauth_access_token& arg0=value0& arg1=value1
  • 51. Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 52 Métodos de Nombre/autenticación 9 auth.createToken 9 auth.expireSession 9 auth.getSession 9 auth.promoteSession 9 auth.revokeAuthorization 9 auth.revokeExtendedPermission Métodos de recuperación de datos 9 comments.get 9 data.getCookies 9 fbml.refreshImgSrc 9 fbml.refreshRefUrl 9 fql.multiquery 9 fql.query 9 friends.areFriends 9 friends.get 9 friends.getAppUsers 9 friends.getLists 9 friends.getMutualFriends 9 groups.get 9 groups.getMembers 9 links.get 9 message.getThreadsInFolder 9 notes.get 9 notifications.get 9 notifications.getList 9 pages.getinfo 9 pages.isAdmin 9 pages.isAppAdded 9 pages.isFan 9 photos.get 9 photos.getAlbums 9 photos.getTags 9 privacy.get 9 profile.getFBML 9 profile.getInfo 9 profile.getInfoOptions 9 status.get 9 stream.get 9 stream.getComments 9 stream.getFilters 9 users.getInfo 9 users.getLoggedInUser 9 users.getStandardinfo 9 users.hasAppPermission 9 users.isAppUser 9 users.isVerified 9 video.getUploadLimits Métodos de publicación 9 comments.add 9 comments.remove 9 links.post 9 links.preview 9 liveMessage.send 9 notes.create 9 notes.delete 9 notes.edit 9 notifications.markRead 9 notifications.sendEmail 9 photos.addTag 9 photos.createAlbum 9 photos.upload 9 profile.setFBML 9 profile.setInfo 9 profile.setInfoOptions 9 status.set 9 stream.addComment 9 stream.addLike 9 stream.publish 9 stream.remove 9 stream.removeComment 9 stream.removeLike 9 users.setStatus 9 video.upload Métodos de Facebook Connect 9 connect.getUnconnectedFriendsCount 9 connect.registerUsers 9 connect.unregisterUsers
  • 52. Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 53 Métodos móvil 9 sms.canSend 9 sms.send Métodos de paneles API 9 dashboard.addGlobalNews 9 dashboard.addNews 9 dashboard.clearGlobalNews 9 dashboard.clearNews 9 dashboard.decrementCount 9 dashboard.getActivity 9 dashboard.getCount 9 dashboard.getGlobalNews 9 dashboard.getNews 9 dashboard.incrementCount 9 dashboard.multiAddNews 9 dashboard.multiClearNews 9 dashboard.multiDecrementCount 9 dashboard.multiGetCount 9 dashboard.multiGetNews 9 dashboard.multiIncrementCount 9 dashboard.multiSetCount 9 dashboard.publishActivity 9 dashboard.removeActivity 9 dashboard.setCount Métodos de API Eventos 9 events.cancel 9 events.create 9 events.edit 9 events.get 9 events.getMembers 9 events.invite 9 events.rsvp Métodos de API de etiquetas personalizadas 9 fbml.deleteCustomTags 9 fbml.getCustomTags 9 fbml.registerCustomTags Métodos de anuncios 9 ads.addAccountUsers 9 ads.createAdGroups 9 ads.createAdreportSchedules 9 ads.createCampaigns 9 ads.createCreatives 9 ads.estimateTargetingStats 9 ads.getAccounts 9 ads.getAdGroupCreatives 9 ads.getAdGroupStats 9 ads.getAdGroupTargeting 9 ads.getAdGroups 9 ads.getAdreportJobs 9 ads.getAutoCompleteData 9 ads.getCampaignStats 9 ads.getCampaigns 9 ads.getConnectionObjectIds 9 ads.getKeywordAutocomplete 9 ads.getKeywordSuggestions 9 ads.getValidKeywords 9 ads.removeAccountUsers 9 ads.setAccountUsersRole 9 ads.updateAdGroups 9 ads.updateAdreportSchedules 9 ads.updateCampaigns
  • 53. Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 54 1.3.5.2. Legado FQL FBML le permite construir aplicaciones de Facebook que integran profundamente en la experiencia de un usuario de Facebook. Para utilizar JavaScript FBJS en FBML. Herramientas 9 fb:board 9 fb:bookmark 9 fb:chat-invite 9 fb:comments 9 fb:default 9 fb:else 9 fb:feed 9 fb:friend-selector 9 fb:google-analytics 9 fb:if 9 fb:if-multiple-actors 9 fb:multi-friend-input 9 fb:quantcast 9 fb:random 9 fb:random-option 9 fb:switch 9 fb:typeahead-input 9 fb:typeahead-option 9 fb:user-agent El usuario / Grupos 9 fb:eventlink 9 fb:grouplink 9 fb:if-can-see 9 fb:if-can-see-photo 9 fb:if-is-app-user 9 fb:if-is-friends-with-viewer 9 fb:if-is-group-member 9 fb:if-is-user 9 fb:if-is-verified 9 fb:name 9 fb:profile-pic 9 fb:pronoun 9 fb:user 9 fb:user-status Notificaciones y Solicitudes 9 fb:application-name 9 fb:multi-friend-selector 9 fb:multi-friend-selector_(condensed) 9 fb:req-choice 9 fb:request-form 9 fb:request-form-submit Plataforma de Internacionalización 9 fb:date 9 fb:fbml-attribute 9 fb:intl 9 fb:intl-token 9 fb:tag 9 fb:tag-attribute 9 fb:tag-body 9 fb:window-title Obsoletas 9 fb:if-is-own-profile 9 fb:if-user-has-added-app 9 fb:networklink 9 fb:notif-email 9 fb:notif-page 9 fb:notif-subject 9 fb:profile-action 9 fb:rock-the-vote 9 fb:userlink 9 fb:visible-to-added-app-users 9 fb:visible-to-user
  • 54. Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 55 Mensajes de estado 9 fb:error 9 fb:explanation 9 fb:message 9 fb:success Navegación de página 9 fb:create-button 9 fb:dashboard 9 fb:header 9 fb:header-title 9 fb:help 9 fb:mediaheader 9 fb:owner-action 9 fb:tab-item 9 fb:tabs Muro 9 fb:wall 9 fb:wallpost 9 fb:wallpost-action Visibilidad sobre el perfil 9 fb:18-plus 9 fb:21-plus 9 fb:restricted-to 9 fb:visible-to-app-users 9 fb:visible-to-connection 9 fb:visible-to-friends 9 fb:visible-to-owner Visitas al perfil específico 9 fb:action 9 fb:add-section-button 9 fb:if-section-not-added 9 fb:narrow 9 fb:publisher-link 9 fb:subtitle 9 fb:user-item 9 fb:user-table 9 fb:wide Otros 9 fb:add-profile-tab 9 fb:fbml 9 fb:fbmlversion 9 fb:js-string 9 fb:page-admin-edit-header 9 fb:redirect 9 fb:ref 9 fb:serverFbml 9 fb:time 9 fb:title Editor de pantalla 9 fb:editor 9 fb:editor-button 9 fb:editor-buttonset 9 fb:editor-cancel 9 fb:editor-custom 9 fb:editor-date 9 fb:editor-divider 9 fb:editor-month 9 fb:editor-text 9 fb:editor-textarea 9 fb:editor-time
  • 55. Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 56 Incorporado los medios de comunicación 9 fb:flv 9 fb:iframe 9 fb:mp3 9 fb:photo 9 fb:silverlight 9 fb:swf Diálogo 9 fb:dialog 9 fb:dialog-button 9 fb:dialog-content 9 fb:dialog-title Permisos adicionales 9 fb:prompt-permission Plugins sociales 9 fb:comments 9 fb:live-stream Archivos adjuntos de mensajes 9 fb:attachment-preview Formularios 9 fb:captcha 9 fb:submit 1.3.5.3. Legado JavaScript SDK Si actualiza a la nueva SDK JavaScript, por favor asegúrese de quitar todas las referencias a la antigua biblioteca de JavaScript, ya que son incompatibles y hará que la aplicación deje de funcionar. Usted puede encontrar referencias a la antigua biblioteca de JavaScript al buscar la cadena "FeatureLoader.js.php". FB.CanvasClient 9 FB.CanvasClient.add_windowSizeChan ged 9 FB.CanvasClient.getCanvasInfo 9 FB.CanvasClient.get_timerInterval 9 FB.CanvasClient.remove_windowSizeC hanged 9 FB.CanvasClient.setCanvasHeight 9 FB.CanvasClient.set_timerInterval 9 FB.CanvasClient.startTimerToSizeToCo ntent 9 FB.CanvasClient.stopTimerToSizeToCo ntent FB.Connect 9 FB.Connect.addSignedPublicSessionDat aToUrl 9 FB.Connect.createApplication 9 FB.Connect.forceSessionRefresh 9 FB.Connect.getSignedPublicSessionDat a
  • 56. Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 57 9 FB.Connect.getUIServerDialogProperty 9 FB.Connect.get_loggedInUser 9 FB.Connect.get_status 9 FB.Connect.ifUserConnected 9 FB.Connect.inviteConnectUsers 9 FB.Connect.isUIServerEnabled 9 FB.Connect.logout 9 FB.Connect.logoutAndRedirect 9 FB.Connect.pollLoginStatus 9 FB.Connect.requireSession 9 FB.Connect.showAddFriendDialog 9 FB.Connect.showAddSectionButton 9 FB.Connect.showBookmarkDialog 9 FB.Connect.showFeedDialog 9 FB.Connect.showPermissionDialog 9 FB.Connect.showProfileTabDialog 9 FB.Connect.showUIServerDialog 9 FB.Connect.streamPublish FB.ApiClient 9 FB.ApiClient.auth_getAppPublicKey 9 FB.ApiClient.auth_getSignedPublicSessi onData 9 FB.ApiClient.callMethod 9 FB.ApiClient.connect_getUnconnected FriendsCount 9 FB.ApiClient.events_get 9 FB.ApiClient.events_getMembers 9 FB.ApiClient.fbml_refreshImgSrc 9 FB.ApiClient.fbml_refreshRefUrl 9 FB.ApiClient.feed_getAppFriendStories 9 FB.ApiClient.feed_publishUserAction 9 FB.ApiClient.fql_query 9 FB.ApiClient.friends_get 9 FB.ApiClient.get_apiKey 9 FB.ApiClient.get_session 9 FB.ApiClient.get_sessionWaitable 9 FB.ApiClient.pages_getInfo 9 FB.ApiClient.pages_isAdmin 9 FB.ApiClient.pages_isAppAdded 9 FB.ApiClient.pages_isFan 9 FB.ApiClient.photos_addTag 9 FB.ApiClient.photos_createAlbum 9 FB.ApiClient.photos_get 9 FB.ApiClient.photos_getAlbums 9 FB.ApiClient.photos_getTags 9 FB.ApiClient.preloadFQL_get 9 FB.ApiClient.requireLogin 9 FB.ApiClient.revokeAuthorization 9 FB.ApiClient.sessionIsExpired 9 FB.ApiClient.set_session 9 FB.ApiClient.stream_get 9 FB.ApiClient.stream_getComments 9 FB.ApiClient.stream_getFilters 9 FB.ApiClient.users_getInfo 9 FB.ApiClient.users_hasAppPermission 9 FB.ApiClient.users_isAppAdded 9 FB.ApiClient.users_isAppUser 9 FB.ApiClient.users_setStatus FB.XFBML.Host 9 FB.XFBML.Host.get_areElementsReady 9 FB.XFBML.Host.parseDomElement 9 FB.XFBML.Host.parseDomTree 9 FB.XFBML.Host.refresh FB.XFBML.Conditions 9 FB.XFBML.Conditions.ifCanSee FB.Monitor 9 FB.Monitor.bind 9 FB.Monitor.copy 9 FB.Monitor.disableLogging 9 FB.Monitor.externalCallback 9 FB.Monitor.forEach 9 FB.Monitor.logFunction 9 FB.Monitor.logXFBML 9 FB.Monitor.loggingEnabled 9 FB.Monitor.provide 9 FB.Monitor.redo 9 FB.Monitor.resolve 9 FB.Monitor.scheduleSend 9 FB.Monitor.send 9 FB.Monitor.subclass
  • 57. Neptalí Mena Cisneros .::NEMECIS SOLUTIONS®::. 58 9 FB.Monitor.wrapObject FB.Facebook 9 FB.Facebook.add_initCalled 9 FB.Facebook.get_baseDomain 9 FB.Facebook.get_initialized 9 FB.Facebook.get_isInCanvas 9 FB.Facebook.get_isInConnect 9 FB.Facebook.get_sessionState 9 FB.Facebook.get_sessionWaitable 9 FB.Facebook.init 9 FB.Facebook.remove_initCalled 9 FB.Facebook.set_baseDomain FB.Waitable 9 FB.Waitable.add_changed 9 FB.Waitable.onChange 9 FB.Waitable.remove_changed 9 FB.Waitable.resetChange 9 FB.Waitable.waitForCondition 9 FB.Waitable.waitForValue 9 FB.Waitable.waitUntilReady FB.BatchSequencer 9 FB.BatchSequencer.execute FB.PendingResult 9 FB.PendingResult.setPendingRes 1.4. SERVICIOS WEB 1.4.1. Estructura de un sitio web 2.0 La nueva era de las páginas web ha llegado y no pasará desapercibida. La Web 2.0 está cambiando de forma radical la forma en la que las empresas, los directores, y los profesionales están utilizando Internet para sus negocios. Los nuevos retos son universales e importantes. Aquí tenéis diez apuntes sobre la nueva era de la red. La Web 2.0 (también conocida como Internet 2.0) no es un software específico ni tampoco una marca registrada, pero en cambio se trata de una serie de aplicaciones web que facilitan el intercambio de información de forma interactiva, el uso de centros de diseños y las colaboraciones en la www (World Wide Web). Normalmente este término se asocia
  • 58. .:: Neptalí Mena Cisneros ::. 58 con Dale Dougherty, vicepresidente de O’Reilly Media; este hecho se volvió oficial durante la conferencia de O’Reilly Media en el 2004. El término se refiere a una actitud sobre el compartir la información y los cambios que se acumulan sobre los usos de la web. Esta aproximación revolucionaria se basa en la Web como un tipo de plataforma. El problema con el que aún nos encontramos es el hecho que ni Dale Dougherty ni tampoco Tim O’Really (presidente de O’Reilly Media) han formulado una definición clara sobre la Web 2.0. La Web 2.0 representa la evolución de la www de una serie de portales estáticos hacia un entorno global en el que el software online, las aplicaciones multimedia y la conexión de banda ancha permiten ofrecer una mayor cantidad de información y una interacción más estrecha entre los usuarios. En este escenario, la ausencia de una única definición ha contribuido a la generación de un debate internacional (que aún hoy día existe) sobre el término Web 2.0. Desde el análisis de las afirmaciones de Tim O’Reilly hasta las que frece Wikipedia y varios posts, creo que las características de la Web 2.0 pueden resumirse en los siguientes diez apuntes que permitirán una mejor comprensión sobre la Web 2.0: 1. La Web es una plataforma. Hemos pasado de un software instalable en nuestros PC’s a servicios de software que son accesibles online. 2. La Web es funcionalidad. La Web ayuda en la transferencia de información y servicios desde páginas web. 3. La Web es simple. Facilita el uso y el acceso a los servicios web a través de de pantallas más agradables y fáciles de usar 4. La Web es ligera. Los modelos de desarrollo, los procesos y los modelos de negocio se vuelven ligeros. La ligereza está asociada con la habilidad para compartir la información y los servicios de forma fácil y hacerlo posible a través de la implementación de intuitivos elementos modulares. 5. La Web es social. Las personas crean la Web “popularizan la Web” mediante la socialización y el movimiento gradual de los miembros del mundo físico hacia el mundo online. 6. La Web es un flujo. Los usuarios son vistos como co-desarrolladores, la Web 2.0 permanece en el “perpetuo beta”, se encontrará en el nivel de desarrollo beta por un periodo de tiempo indefinido. 7. La Web es flexible. El software se encuentra en un nivel más avanzando porque este nivel permite el acceso a contenidos digitales a los que antes no se podía llegar. Esta idea es similar a la del concepto del “Long Tail”, que
  • 59. .:: Neptalí Mena Cisneros ::. 59 se centra en el contenido menos popular al que antes no se podía tener acceso. 8. La Web es combinable. La expansión de códigos para poder modificar las aplicaciones web (como Google hace con las aplicaciones de Google Maps) permite a los individuos, que no tienen porque ser profesionales de los ordenadores, combinar diferentes aplicaciones para crear nuevas. 9. La Web es participativa. La Web 2.0 ha adoptado una estructura de participación que alientan a los usuarios mejorar la aplicación mientras la utilizan, en vez de mantenerla rígida y controlada. 10.La Web está en nuestras manos. El aumento de la organización de la información enfatiza el uso amistoso de la misma a través de los enlaces. Gracias al fenómeno social del etiquetado cada vez es más fácil acceder a la información. 1.4.2. Configuración de un CMS GNU Para el desarrollos de este sitio web se ha obtado por la utilización del software GNU Joomla!, ya que este cumple con todas las características necesarias para desarrollar la propuesta de este proyecto. Joomla! es un sistema de gestión de contenidos, y entre sus principales virtudes está la de permitir editar el contenido de un sitio web de manera sencilla. Es una aplicación de código abierto programada mayoritariamente en PHP bajo una licencia GPL. Este administrador de contenidos puede trabajar en Internet o intranets y requiere de una base de datos MySQL, así como, preferiblemente, de un servidor HTTP Apache. Joomla! ¿Un sistema seguro? En términos objetivos, nada que esté publicado en la web puede considerarse completamente seguro. Si han violado sistemas tan complejos como el de la Fuerza Aérea norteamericana, poco queda para el resto del contenido de internet. Ahora bien, si nos plegamos a lo que la generalidad entiende como “seguridad en internet”, Joomla! es uno de los escasos CMS que cuenta con la suficiente
  • 60. .:: Neptalí Mena Cisneros ::. 60 participación activa como para generar soluciones precisas en el menor tiempo posible ante los bugs/vulnerabilidades que se vayan descubriendo. Esto de la seguridad no es un mal exclusivo de Joomla!; otros CMS han caído bajo el yugo de los ataques y muchas veces la solución llega demasiado tarde. Comenzando con Joomla! En principio es bueno saber cómo están organizados los distintos elementos que intervienen en Joomla! y cómo actúan para devolver los resultados esperados. Cuando un usuario escribe o hace click en nuestra dirección web, el index.php inmediatamente “llama” a la plantilla que estamos usando: En el index de la plantilla se encuentra buena parte de la información de estructura de la web, y casi toda la información de los estilos. No toda la estructura se controla desde la plantilla porque ésta, a su vez, “llama” a los elementos que el diseñador incluyó con anterioridad. Es decir, si en la plantilla se requieren módulos, entonces aparecerá el Módulo específico que originalmente se encuentra en su directorio y ahora se refleja en el sitio. Igualmente sucede con los Componentes.
  • 61. .:: Neptalí Mena Cisneros ::. 61 Todo Módulo y Componente tiene insertada su propia estructura HTML, así como instrucciones PHP particulares para cada caso, y algunas veces hasta su propia hoja de estilos CSS. Los Módulos están en el directorio /modules/ y los Componentes en /components/. Puedes probar personalizando el Módulo que más te guste con tus propias etiquetas y opciones de configuración, ya que cada Módulo tiene sus parámetros en un archivo XML. Lo anterior constituye una explicación muy básica (quizás haga falta otro artículo más técnico y específico al respecto), pero ahora sabes que la “compleja estructura” no es tan compleja; un archivo llama a otro y todo se refleja como HTML a la vista de tus visitantes. 1.4.3. Adaptación de API’s desarrolladas para la Web Las API’S que se utilizarán en este proyecto serán las descritas anteriormente en ítem 1.2.2. de los Socials Plugins, además se podrá integrar más aplicaciones a medida que se vayan presentando necesidades.
  • 62. .:: Neptalí Mena Cisneros ::. 62 CAPÍTULO ll DIAGNÓSTICO 2.1. ANTECEDENTES DIAGNÓSTICO El Club de Observación Galileo fue creado ya hace más de 15 años, su fundador y representante el Ufólogo Jaime Rodríguez T. que es muy conocido en medios televisivos y radiales tanto a nivel nacional como internacional con su programa “Evidencia Ovni”, conjuntamente con un grupo de amigos dan los inicios a la primera entidad dedicada a la Investigación del Fenómeno Ovni en nuestro país, este club nació bajo la necesidad de tratar de abastecer conocimientos acerca de este tema, a todos los llamados “espíritus inquietos” (personas que se interesan en el tema OVNI), brindándoles también la oportunidad de colaborar en importantes investigaciones tanto nacionales como internacionales como por ejemplo: “Tayos, un mundo intraterrestre”, “Área 51: Secretos que matan”, “Billy Meier, la historia”, “Chupacabras, ¿mascota extraterrestre?” y así una gran cantidad de evidencia y casos por investigar que existía sobre este tema y que de una u otra manera se necesitaba incrementar en número de personas para agilitar el proceso de investigación. Viendo estas necesidades, se decidió conformar un grupo que los una en el esfuerzo de investigación para de esta manera seguir consiguiendo más Evidencia Ovni, y a su vez brindando la oportunidad a todas las personas interesadas en formar parte del equipo de investigación, aportando con su conocimiento y su apoyo al enriquecimiento de las pruebas presentadas por este fenómeno. Hace 3 años atrás se lanzó oficialmente el sitio web de dicha entidad con el dominio registrado de www.clubgalileo.com; este sitio sirve para personas que se interesaran en el tema puedan mantenerse al tanto de noticias sobre el fenómeno OVNI y del mismo Club. Sin embargo el Club Galileo se ha visto en la necesidad de cada vez actualizar y mejorar su modo de comunicación con los demás miembros y gracias a los avances de la tecnología y la Web 2.0, podemos decir que hoy en día las Redes Sociales han ganado su lugar de una manera vertiginosa, convirtiéndose en promisorio crecimiento de entidades o lugares de encuentros de personas que compartan las mismas ideologías, estableciendo estas un nuevo hito dentro de la comunicación y expresión de opinión sobre algún tema a debatir con fines netamente de compartir con los demás, entonces es así como el Club de Observación Galileo ha optado por incluir esta herramienta tecnológica dentro de sus objetivos a futuro, para poder conectar en una sola red a las personas que les interese el fenómeno OVNI y los grandes enigmas de la humanidad.
  • 63. .:: Neptalí Mena Cisneros ::. 63 2.2. OBJETIVOS DE DIAGNÓSTICO. 2.1.1. Objetivo General Diseñar e Implementar una Web 2.0 para la Red Social “HUNABKU” perteneciente al Club de Observación Galileo y su integración a las redes sociales de Facebook y Twitter mediante API´s utilizando software GNU. 2.1.2. Objetivos Específicos. 2.1.2.1. Investigar y recolectar información sobre la Web 2.0, Redes Sociales y su acción dentro de la sociedad, en el campo de la comunicación y tecnología, así como también sobre la API’s de autentificación, plugins sociales y API’s gráficos correspondientes a la plataforma de Facebook y API’s Twitter. 2.1.2.2. Diagnosticar el estado actual del sistema web del Club de Observación Galileo, determinando la forma de cómo se han estado relacionando, intercomunicando y organizando. 2.1.2.3. Modificar API’s de Facebook tales como de autentificación, plugins sociales y API’s gráficos según las necesidades del club, además los API’s de Twitter para su integración en redes sociales. 2.1.2.4. Implementar API’s de Facebook que ayuden al mejoramiento de los procesos que maneja el Club Galileo, para ayudarlos a impulsarlos mediante herramientas de e-marketing en la web. 2.1.2.5. Diseñar, implementar e implantar el sistema de la Red Social “HunabKu” para el sitio del Club de Observación Galileo, aplicando los conocimientos adquirido sobre las API’s y plataforma de Facebook. 2.1.2.6. Realizar pruebas de funcionamiento del sistema para corregir fallos y errores que se generen en el diseño y desarrollo. 2.1.2.7. Analizar los impactos generados por el sistema de la Red Social “HunabKu”, documentar el Proyecto con el procedimiento del funcionamiento y uso de todas las API’s aplicadas, en un Informe. 2.1.2.8. Socializar los resultados del proyecto.
  • 64. .:: Neptalí Mena Cisneros ::. 64 2.3. METODOLOGÍA. METODOS x Método Descriptivo. Permitirá la descripción del estado actual de los medios de comunicación en la escuela de Ingeniería de la PUCE-SI, para obtener un punto de referencia en el desarrollo de la solución informática. x Método Experimental. Con este método se procederá a modificar la realidad actual, mediante la implementación e implantación del presente proyecto y poder describir en qué forma afectó y podría seguir afectando la solución informática a la problemática mencionada. 2.3.2. TÉCNICAS x Observación. Nos permite conocer cuál es la forma en la que se establece el proceso de comunicación entre los miembros del Club Galileo, que nos permite conocer a los responsables de esta acción y los beneficiarios del mismo. Dicha técnica permite recabar gran cantidad de datos y por ende información que serán utilizadas en el proceso del diseño e implantación del sistema del sitio Web. x Entrevista. Mediante esta técnica, se pretende obtener importante información acerca de cómo se han venido comunicando los miembros del Club a través de experiencias que les han permitido comunicarse. De estas entrevistas se recopilará información valiosa para deducir que opciones y soluciones serán acogidos por el sistema a desarrollar. x Encuesta. Sin duda, la técnica de encuesta es la más utilizada por los investigadores, se la realizará a los miembros del Club de Observación Galileo para conocer la información y aplicaciones que les gustaría que tenga el sitio web.
  • 65. .:: Neptalí Mena Cisneros ::. 65 2.3.3. INSTRUMENTOS Para realizar la investigación es necesario contar con los siguientes instrumentos de investigación: x Hojas de recolección de datos. x Computador. x Dispositivos de almacenamiento como Memorias Flash o CD’s. x Software y Hardware para el desarrollo de la aplicación. 2.4 ANÁLISIS DE LOS RESULTADOS OBSERVACIÓN. A través de esta técnica se ha obtenido los siguientes resultados: El Club de Observación Galileo, cuenta con una persona encargada que viene ser un Coordinador por provincia, quien difunde la información y contacta por vía telefónica o vía e-mail a los miembros del Club. Por otro lado, los miembros del Club, se ven en la necesidad de hacer llamadas al Coordinador o a otros miembros del Grupo, para saber la información acerca de un evento o de un caso de investigación a tratarse. ENTREVISTA. Las entrevistas realizadas a los miembros del Club Galileo, arrojaron grandes aportaciones para el desarrollo de esta aplicación y a continuación se detalla un resumen de la información recolectada en estas entrevistas. x Medios de comunicación. Una forma de comunicarse entre los miembros del Club, es a través de llamadas telefónicas, haciendo un proceso con el que el Coordinador tiene que hacer una llamada telefónica a cada uno de los miembros, para transmitir información sobre un evento o casos a investigarse, haciéndose
  • 66. .:: Neptalí Mena Cisneros ::. 66 repetitivo y tedioso para cada uno de los integrantes del Club haciendo que este medio sea sumamente costoso. x Ahora se puede prestar atención especial a la acogida que ha tenido el uso del internet en nuestro país y a nivel mundial, se dice que al menos cerca del 60% de la población ecuatoriana tiene acceso al Internet, siendo que muy pocas entidades se ha dedicado a transmitir información por medio de esta gran herramienta de la comunicación actual. Mediante el Internet con la Web 2.0 y con las herramientas: Facebook y Twitter que se encargan de difundir algún tipo de información ya sea de noticias, y otros aspectos de interés personal y un sin fin de alternativas para los usuarios y lo más importante es que, los costos para la publicación de una noticia o evento son gratuitos, y se lo hace simplemente ingresando a la página con la que se conoce en forma inmediata cualquier información que se requiera. x Ing. Sistemas. La tecnología sin duda revolucionó a la humanidad, con ella todo es posible, hace unas décadas atrás era fascinante ver películas de Ciencia Ficción en las que la gente podía volar, comunicarse a través de complejos dispositivos que le permitía visualizar a la apersona con la que sostenían la conversación, complejos sistemas de seguridad y muchas otras cosas que en la actualidad ya han dejado de ser ciencia ficción. Específicamente la tecnología ha tenido gran repercusión en las comunicaciones actualmente el Planeta cuenta con una gran cantidad de satélites, antenas y líneas de cable interoceánico que se han encargado de acortar las distancias en la Tierra y solo hace falta retroceder 20 años y echar un vistazo a lo que hacían nuestros antepasados para comunicarse con cualquier familiar o conocido en otra ciudad y a otro país.
  • 67. .:: Neptalí Mena Cisneros ::. 67 Esta generación se dedicó a la escritura, su única forma de comunicarse era a través de las casi olvidadas cartas y para esa época era lo máximo en comunicación, un mensaje tardaba días en llegar a su destino y días en obtener una respuesta, hoy en la actualidad la carta ha sido reemplazada por los emails es imposible establecer un negocio, trabajar e inclusive hacer amistades sin tener un email. Sin duda esta es una excelente forma de comunicarse y como es el caso de esta investigación el mantener informados a gran cantidad de usuarios y sin costo alguno, muchas empresas ya han implementado servicios a través del Internet y la Web 2.0, como son consultas bancarias, envío de pedidos a proveedores y cualquier servicio que requiera localizar al usuario en la mayor cantidad de sitios en el país. TABULACIÓN Y ANÁLISIS DE LA INFORMACIÓN. Para la recolección de Información en este proyecto de investigación se utilizará los métodos o técnicas como: Encuestas y entrevistas, a los socios del Club Galileo más cercano, que en este caso sería el Club Galileo Imbabura, que se vería favorecido con este proyecto, Esta información será relevante en el desarrollo del diseño e implantación del Sistema.
  • 68. .:: Neptalí Mena Cisneros ::. 68 ENCUESTA La encuesta realizada a 25 personas dio como resultado los siguientes datos: 1.- ¿Usted es parte de alguna red social? RESPUESTAS FRECUENCIA PORCENTAJE SI 25 100% NO 0 0% Total 25 100% Observamos que el 100% de los encuestados tiene una cuenta en una red social. 100% 0% Pregunta #1 si no