lunes, 20 de diciembre de 2010

Crear una aplicacion facebook 3

Aplicaciones de Facebook 2


es tener una cuenta y agregarse la aplicación de desarrolladores. Cuando ya la tengamos agregada hay que pinchar en crear nueva aplicación, ponerle un nombre y enviar.


Lo que vamos a desarrollar es una aplicación web para Facebook, así que vamos a necesitar un sitio dónde alojarla, además vamos a escribirla en PHP y si queréis guardar datos necesitaremos una base de datos MySQL.

Cuando ya sepamos donde la vamos a alojar, nos vamos a nuestra aplicación en Facebook y vamos a editar sus datos. En la siguiente imagen se explican los parámetros de configuración que debemos rellenar en un inicio:

Ya tenemos todo configurado en la parte de Facebook, ahora solo nos queda crear nuestra aplicación y subirla a nuestro servidor. Como ya hemos dicho la escribiremos en PHP, pero primero debemos bajarnos la librería PHP de Facebook. La descomprimimos y la metemos en la carpeta dónde vayamos a alojar la aplicación.

Finalmente este es el hello world en PHP que debemos subir y guardar como index.php:

require_login();

echo "

Hola,

";

// Sacar por pantalla los cumpleaños de 20 de nuestros amigos
echo "

Cumpleaños de mis amigos:";
$friends = $facebook->api_client->friends_get();
$friends = array_slice($friends, 0, 25);
foreach ($friends as $friend) {
$birthdate = $facebook->api_client->users_getinfo($friend, 'birthday');
echo "
Id de usuario: " . $friend . " - Fecha de nacimiento: " . $birthdate[0]['birthday'] . "\n";
}
echo "

";
?>

Como veis en este script, primero incluimos la librería PHP de Facebook:

require_once ‘facebook-platform/client/facebook.php’;

Luego hay que escribir las API keys de nuestra aplicación que encontraremos en el panel de nuestra aplicación en Facebook.

$appapikey = ‘XXXXXXXXXXXXXXXXXXXXXXX’;
$appsecret = ‘XXXXXXXXXXXXXXXXXXXXXXX’;

Después creamos el objeto Facebook, y obtenemos el ID de usuario de la persona que accede a nuestra aplicación:

$facebook = new Facebook($appapikey, $appsecret);
$user_id = $facebook->require_login();

Printeamos un saludo utilizando el user ID y FBML, que es un lenguage tipo HTML especial para Facebook:

echo “

Hola,

”;

Y finalmente sacamos los IDs de 25 de nuestros amigos y su fecha de nacimiento si es que la han puesto:

// Sacar por pantalla los cumpleaños de 20 de nuestros amigos
echo “

Cumpleaños de mis amigos:”;
$friends = $facebook->api_client->friends_get();
$friends = array_slice($friends, 0, 25);
foreach ($friends as $friend) {
$birthdate = $facebook->api_client->users_getinfo($friend, ‘birthday’);
echo “
Id de usuario: ” . $friend . ” – Fecha de nacimiento: ” . $birthdate[0]['birthday'] . “\n”;
}
echo “

”;


Aplicaciones de Facebook

Aplicaciones de Facebook

Creando aplicaciones en Facebook

3 categorías:

  • API: es una interfaz basada en REST que permite el acceso a los datos del perfil, amigos, fotos y eventos del usuario mediante la utilización de mensajes GET o POST.
  • Consultas (FQL, “Facebook Query Language”): es un lenguaje de consultas similar a SQL utilizado para acceder a los mismos datos que la API pero permitiendo consultas más complejas.
  • Maquetación (FBML, “Faceboook Markup Language”): es un lenguaje de markup similar a HTML que permite ser intercalado con el HTML a utilizar para integrar las aplicaciones a la experiencia de usuario Facebook. Utilizando FBML se pueden acceder distintos puntos de la red como ser el perfil, acciones del perfil, canvas y feeds. Este lenguaje también incluye soporte para AJAX y Javascript.

Anatomía de una aplicación en Facebook

Una aplicación en Facebook posee una compleja estructura que permite brindar una experiencia de usuario completa:

  • Product Directory: cuando un usuario navega el directorio de aplicaciones de Facebook, por cada aplicación se muestra una pequeña sección con el nombre, una imagen y una pequeña descripción.
  • About: esta página muestra información general de la aplicación. Debe inducir al usuario a instalar la aplicación.
  • Left Nav: es el panel de navegación izquierdo. Las aplicaciones pueden tener su ícono y nombre en este panel.
  • Canvas Page: es la página principal de la aplicación. Home: esta página es accedida utilizando el panel de navegación de la izquierda, en general muestra información de los amigos del usuario. User Dashboard: es la página donde el usuario administra sus datos en una aplicación y determina de que forma las aplicaciones acceden a sus datos personales.
  • Profile: es la representación online de la identidad del usuario. La API provee múltiples puntos de integración con el perfil del usuario permitiendo actualizar datos del mismo. Profile Box: presenta información actualizada sobre las acciones recientes del usuario. Profile Actions Links: debajo de la foto del usuario en el perfil, se pueden agregar enlaces para invocar acciones en la aplicación.
  • Privacy Settings: se utiliza para definir los niveles de privacidad de los datos del perfil por aplicación.
  • News Feed: como su nombre lo indica es un “feed” de noticias, allí las aplicaciones pueden “publicar” información del usuario de la misma.
  • Alerts: las aplicaciones pueden enviar notificaciones a los usuarios a través del correo electrónico.
  • Message Attachments: las aplicaciones pueden incluir archivos adjuntos que aparecen en la ventana para componer mensajes.
  • Requests: las aplicaciones pueden crear peticiones que aparecen en la parte superior izquierda de la página principal. En general son iniciados por amigos que solicitan realizar alguna acción.

Hola mundo! paso a paso:

El primer paso consiste en agregar la aplicación “Developer“. Todo contenido que se agrega a Facebook es una aplicación, es así que para desarrollarlas es necesaria una aplicación que las contenga.


Luego debemos presionar el botón “Set Up New Application”: allí se nos preguntará el nombre de nuestra aplicación y clickeando en “Optional Fields” encontramos información necesaria para el desarrollo.

Por el momento solo le daremos atención a la “Callback URL” que será la dirección a la que Facebook enviará a nuestros usuarios luego de su autenticación y a “Canvas Page URL” que será la URL mapeada de Facebook a nuestra aplicación y por la que los usuarios accederán a la misma. Definimos entonces:

  • Callback URL = http://miserver/blanconetmaestros
  • Canvas Page URL = http://apps.facebook.com/blanconetmaestros/

Elegimos:

  • La opción “Can your application be added on Facebook?” para poder agregar nuestra aplicación.
  • La opción “Who can add your application to their Facebook account?” marcamos Users y All Pages.
  • La opción “Developer Mode”.
  • Por último hacemos click en “Save”

Ahora debemos agregar nuestra aplicación: para esto nos dirigimos a Developers y allí buscamos nuestra aplicación (en la barra derecha) y hacemos un click en el nombre.

Allí vemos un botón que dice “Add Application”, lo apretamos y en la página siguiente hacemos lo mismo con “Add NOMBRE_DE_LA_APLICACION”. Bien, está todo listo para nuestro “Hola Mundo” en Facebook:

  • Lo primero que necesitamos es alguna máquina visible desde Internet (tanto por nombre o por IP).
  • Luego necesitamos que esta máquina tenga instalado un servidor Web (Apache por ejemplo).
  • Con estos dos requerimientos satisfechos, simplemente tenemos que ubicar un documento HTML en la ubicación que definimos para Callback URL en la configuración de la aplicación (ej: http://miserver/blanconetmaestros).

Por ejemplo:


Mi primer APLICACION!

ok:


La configuración inicial de nuestra aplicación está lista, ahora mejoremos la misma para aprovechar alguna de las virtudes de la API provista por Facebook.

Usando la API

En primer lugar hay que obtener la librería para conectarse a la API:

  • Librería PHP 4 & 5
  • Librería Java
  • Bajamos la librería PHP en nuestro caso.
  • Creamos un archivo ‘appinclude.php’ que vamos a incluir en la parte superior de todas nuestras páginas y colocamos dentro los datos que se obtienen de la página, allí buscamos nuestra aplicación y tomamos nota de: API Key y Secret Key.

Luego reemplazamos [API Key], [Secret Key] y [CallbackURL] por nuestros datos. Con respecto al require_once debemos indicar la ubicación del archivo ‘facebook.php’ dependiendo de que versión de PHP usamos:

appinclude.php

require_login();

$appcallbackurl = '[Callback URL]';

//catch the exception that gets thrown if the cookie has an invalid session_key in it
try {
if (!$facebook->api_client->users_isAppAdded()) {
$facebook->redirect($facebook->get_add_url());
}
} catch (Exception $ex) {
//this will clear cookies for your application and redirect them to a login prompt
$facebook->set_user(null, null);
$facebook->redirect($appcallbackurl);
}

Ahora modificamos nuestra página inicial por esta:

1
2


3 Mi primer APLICACION!


4 Hola " useyou="false"/>


5 Tus amigos son:


6
7 api_client->friends_get() as $friend_id) {
10 if ($i == 1){
11 echo "";
12 }
13 echo "";
14 echo "";
15 if ($i == 4) {
16 $i = 0;
17 echo "";
18 }
19 $i++;
20 }
21 ?>
22
" . "" . "" . "
" . "

23


Analicemos las secciones resaltadas:

  • Línea 1: se incluye el archivo appinclude.php creado anteriormente.
  • Línea 4: se utiliza el tag FBML este requiere únicamente al atributo uid (user id) que es el id de facebook del usuario que se desea mostrar, se agrega en este caso también el atributo useyou en false para que no escriba “you” en caso de ser uno mismo el usuario visitante. Como uid se pasa el valor $user que fue obtenido en el archivo appinclude.php haciendo $user = $facebook->require_login();
  • Línea 9: se obtiene mediante la llamada $facebook->api_client->friends_get() los amigos del usuario logueado como un array de ids.
  • Línea 13: se utiliza otro tag de FBML que renderiza como un elemento de HTML la foto del perfil de un usuario (el indicado en uid).
  • Línea 14: se vuelve a utilizar el tag pero en este caso se utiliza como uid el id de cada amigot.

Vimos entonces como con solo algunas líneas de HTML y FBML se puede obtener una aplicación simple que muestre los amigos del usuario logueado.

lunes, 13 de diciembre de 2010

Transforma Windows XP en Ubuntu 10.04 (en apariencia)

Linux la apariencia de Windows XP,


Ubuntu Skin Pack 2.0, que como podemos deducir al traducir su nombre, será el responsable de transformar a Windows XP en Ubuntu 10.04, pero sólo en apariencia.

Ubuntu Skin Pack consiste en: Reshacker 3.5.2.84, con el que poder editar ejecutables de Windows, Universal Theme Patcher 1.5.0.22

Ubuntu Skin Pack 2.0 soporta:

- Windows XP (Home, Pro, RTM, SP1, SP2, SP3, Corporate)
- Windows 2003 (Standard, Enterprise, Datacenter, Web, RTM, SP1, SP2)
- Windows Media Center Edition (2003, 2004, 2005)
- Windows XP Tablet PC Edition


ubuntu_skin_pack_2_0

martes, 7 de diciembre de 2010

alternativas gratuitas a WinRA


Alternativas a WinZIP y WinRAR

7Zip

WinRAR, descomprime más formatos y su estándar abierto, 7Z, es tan bueno como RAR (e incluso mejor en algunas situaciones). Y en el famoso ranking MaximumCompression supera a WinRAR.

Formatos compatibles: 7z, XZ, BZIP2, GZIP, TAR, ZIP, WIM, RJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR y Z.

PeaZip

PeaZip, el soporte para más de 100 formatos, entre los cuales se encuentran los excelentes PAQ.

Formatos compatibles: 7Z, BZ, BZ2, BZIP2, TBZ2, TBZ, GZ, GZIP, TGZ, TPZ, TAR, ZIP, Z01, SMZIP, ARJ, CAB, CHM, CHI, CHQ, CHW, HXS, HXI, HXR, HXQ, HXW, LIT, CPIO, DEB, LZH, LHA, RAR, R01, 00, RPM, Z, TAZ, TZ, ISO, JAR, EAR, WAR, LHA, PET, PUP, PAK, PK3, PK4, SLP, [CONTENT], XPI, WIM, U3P, LZMA86, LZMA, UDF, XAR, DMG, HFS, PART1, SPLIT, SWM, TPZ, KMZ, XZ, TXZ, VHD, MSLZ, APM, MBR, FAT, NTFS, EXE, DLL, SYS, MSI, MSP, ODS, OTS, ODM, OTH, OXT, ODB, ODF, ODG, OTG, ODP, OTP, ODT, OTT, GNM, DOC, DOT, XLS, XLT, PPT, PPS, POT, DOCX, DOTX, XLSX, XLTX, SWF, FLV, QUAD, BALZ, ZPAQ, PAQ8F, PAQ8JD, PAQ8L, PAQ8O, LPAQ1, LPAQ5, LPAQ8, ACE, ARC, WRC, 001, PEA, CBZ, CBR, CBA, CB7 Y CBT.

similar a la de WinZIP y WinRAR. Y lo han conseguido: jZip tiene un aspecto muy agradable y es compatible con numerosos formatos. Una alternativa interesante a 7Zip.

Formatos compatibles: ZIP, JAR, XPI, 7Z, ARJ, BZ2, BZIP2, TBZ2, TBZ, CAB, CHM, CHI, CHQ, CHW, HXS, HXI, HXR, LIT, MSI, DOC, XLS, PPT, CPIO, DEB, GZ, GZIP, TGZ, TPZ, ISO, LZH, LHA, RAR, RPM, TAR, WIM, SWM, Z y TAZ.

TUGZip

Windows y encontrarse con funciones de compresión y descompresión de archivos. Es capaz de reparar archivos ZIP corruptos y de proteger los archivos con seis algoritmos de cifrado diferentes.

Formatos compatibles: ZIP, 7-ZIP, A, ACE, ARC, ARJ, BH, BZ2, CAB, CPIO, DEB, GCA, GZ, IMP, JAR, LHA (LZH), LIB, RAR, RPM, SQX, TAR, TGZ, TBZ, TAZ, YZ1, ZOO, BIN, C2D, IMG, ISO y NRG.


miércoles, 1 de diciembre de 2010

FAMILIA UBUNTU

  • Kubuntu variante oficial que utiliza KDE como entorno de escritorio trae como novedades KDE 4.5.1 además de las propias de Ubuntu. www.kubuntu.org.
  • Xubuntu derivado oficial que utiliza Xfce como entorno de escritorio, trae como novedades Xfce 4.6.2. www.xubuntu.org.
  • Mythbuntu distro basada en Ubuntu enfocada al uso del centro multimedia MythTV y que con este nuevo lanzamiento se ha actualizado a MythTV 0.23.1. www.mythbuntu.org.
Edubuntu versión enfocada al uso escolar y educativo. Utiliza GNOME igual que Ubuntu, pero cuenta con aplicaciones específicas. www.edubuntu.org