Otra de las razones por las que no lo pongo a distribución es porque se necesitan algunos módulos que deberán instalar ustedes. Si no saben instalar módulos yo les enseñaré.
Otra cosa, no corre en Windows, es solo para GNU/Linux, claro que se puede correr sobre Windows, pero es mucho más engorro.
Ah, otra cosa, necesitan instalar fbcmd.
¿Y por qué no hacer todo esto directamente desde facebook.com?
Lo hice porque a veces no quiero entrar a facebook, simplemente quiero poner un status, o ver el estado de alguien
o lo que sea. Aparte si entro a veces me agarran en el chat.
Para que funcione necesitan algunos módulos, Gtk2, Gtk2::GladeXML, entre otros, instalarlos es muy sencillo, yo les
enseñaré como.
INSTALAR MÓDULOS DESDE CPAN
Citar
CPAN es el acrónimo de Comprehensive Perl Archive Network. Es un enorme archivo de software escrito en Perl, así como de
documentación sobre el mismo. Tiene presencia en la Web a través de su sitio www.cpan.org y sus 236 mirrors distribuidos
por todo el mundo.
documentación sobre el mismo. Tiene presencia en la Web a través de su sitio www.cpan.org y sus 236 mirrors distribuidos
por todo el mundo.
Primero, ingresamos en:
http://search.cpan.org/
Ingresamos el nombre del módulo que queremos instalar. En este caso Gtk2, seleccionamos el primero que sale en la lista.
Al lado derecho sale la imagen del autor, debajo dice "Downloads", descargamos el módulo y lo descomprimimos:
Código
leo@leo-desktop:~/Escritorio/test$ ls -1 Gtk2-1.222.tar.gz leo@leo-desktop:~/Escritorio/test$ tar zxvf Gtk2-1.222.tar.gz ... ... ...
Nos creará una carpeta:
Código
leo@leo-desktop:~/Escritorio/test$ ls -1 Gtk2-1.222 Gtk2-1.222.tar.gz
Entramos en ella e instalamos de la siguiente manera:
Código
cd Gtk2-1.222/ sudo perl Makefile.PL sudo make sudo make test sudo make install
Y eso es básicamente la instalación de módulos, también podemos hacerlo através de la utilidad cpan:
Código
sudo cpan i /Gtk2-1.222/
Así continuamos con los demás modulos que nos pida instalar.
El programa está desarrollado con glade-e
Instalación:
Código
sudo apt-get install glade
Seguro que les pedirá instalar muchos módulos, así que ¡paciencia!.
Les dejo el código y los archivos necesarios para su funcionamiento:
Código
#!/usr/bin/perl -w # Leo Gutiérrez R. # leorocko13@hotmail.com use strict; use Gtk2 -init; use Gtk2::GladeXML; use 5.010; use encoding ':locale'; use constant TRUE => 1; use constant FALSE => !TRUE; # Variables globales indispensables. ######################################################################## my($programa, $ventana_principal); $programa = Gtk2::GladeXML->new('hola.glade'); $ventana_principal = $programa->get_widget('window1'); my $ventana_de_estado = $programa->get_widget('ventana_de_estado'); my $ventana_about = $programa->get_widget('about'); # Cargamos los componentes. $programa->signal_autoconnect_from_package('main'); # La señal para que cuando cierre se CIERRE TODO. $ventana_principal->signal_connect(destroy => sub { Gtk2->main_quit(); } ); $ventana_de_estado->signal_connect(destroy => sub { $ventana_de_estado->hide(); } ); $ventana_about->signal_connect(destroy => sub { $ventana_about->hide(); } ); # Mostrar todo. $ventana_principal->resize(520, 570); $ventana_principal->show_all(); #$ventana_principal->set_resizable(FALSE); my $user_selected; my @friends; ######################################################################## # Agregar el combo. my $combito = $programa->get_widget('combito'); &llenarComboAmigos; $combito->signal_connect('changed' => \&on_combito_changed); $combito->set_active(0); # Agregar los TextBox my $texto = $programa->get_widget('texto'); my $texto_2 = $programa->get_widget('texto_2'); # Agregar la barra de status my $status = $programa->get_widget('status'); my $context_id = $status->get_context_id(""); # Agregar la imagen de perfil my $imagen_perfil = $programa->get_widget('perfil_Image'); # Agregar texto salida de información my $textoSalida = $programa->get_widget('textoSalida'); my $buffer = $textoSalida->get_buffer(); $ventana_principal->show_all(); Gtk2->main(); sub on_boton_cerrar_clicked { Gtk2->main_quit(); } sub on_salirFileItem_activate { Gtk2->main_quit(); } sub llenarComboAmigos { { } } sub on_combito_changed { my ($cb) = @_; if($cb->get_active()) { $user_selected = $cb->get_active_text(); $buffer->set_text(""); } } sub on_texto_activate { unless ($user_selected) { } my $mensaje = $texto->get_text(); $mensaje =~ s/"/\\"/g; $mensaje =~ s/`/\\`/g; $mensaje =~ s/\(/\\(/g; } sub on_texto_2_activate { my $mensaje = $texto_2->get_text(); $mensaje =~ s/"/\\"/g; $mensaje =~ s/`/\\`/g; $mensaje =~ s/\(/\\(/g; } sub on_verImagenDePerfil_activate { unless ($user_selected) { } $imagen_perfil->set_from_file("$user_selected" . ".jpg"); } # Ventana de estado sub on_verEstado_activate { unless ($user_selected) { } my $vbox = Gtk2::VBox->new(FALSE, 5); my $frame = Gtk2::Frame->new("Amigo - Estado"); $frame->set_border_width(5); $sw->set_shadow_type ('etched-out'); $sw->set_policy ('automatic', 'automatic'); $sw->set_size_request (600, 100); $sw->set_border_width(5); my $tview = Gtk2::TextView->new(); my $buffer = $tview->get_buffer(); my $s = &getStatus(); $buffer->set_text($s); $sw->add($tview); $frame->add($sw); $vbox->pack_start($frame,TRUE,TRUE,4); $vbox->show_all(); $ventana_de_estado->add($vbox); $ventana_de_estado->show(); } sub getStatus { my($status) = $s =~ m/^$user_selected\s+(.*)/gims; #$status =~ s/\s{22}(.*)/\n$1/gi; #$status =~ s/^(\s+)(.*)/$2/gim; } sub getPresence { } sub on_verPresencia_activate { $buffer->set_text("Presencia : " . &getPresence()); } sub on_aboutFileItem_activate { $ventana_about->run(); $ventana_about->hide(); }
Archivos:
http://rapidshare.com/files/440038591/facebook_manager.rar
http://www.megaupload.com/?d=BZQBNEVS