Facebook com bate papo antigo
Muitas pessoas estão detestando a nova versão do bate papo do facebook.
Eu como também não aprovei a mudança resolvi ajudar estas pessoas.
Antes de clicar no link abaixo entre no facebook faça o seu login, feche a janela correspondente ao facebook, clique no link espere abrir o popup e depois acesse o facebook novamente!
Para acessar o Bate papo antigo do facebook clique aqui.
Lembrando que para você acessar o bate papo do Facebook do meu site, tem que estar logado pois o “clique aqui” é apenas um link para criar um popup do bate papo.
Qualquer dúvida é só comentar!
Projeto de Rádio Online com PHP
O que precisamos ?
Primeiro temos que saber o básico, é streaming? Onde ficam armazenados os nomes do artista e música?
Vou partir do princípio que o streaming é fornecido através do protocolo MMS e o artista e nome da música normalmente estão em um XML “local” que no caso algum programa gera em tempo real.
Bom criar um player baseado em MMS é fácil, acho que qualquer um consegue.
Agora gerar informações como artista e autor em tempo real que é o complicado, por que?
Vamos as opções, que mais se enquadram :
Obter as informações do XML”local” e jogar em um Banco de Dados por exemplo como MySQL.
Obter as informações do XML”local” e gerar uma página html.
Duas ótimas opções, mas temos que levar em conta o número de usuários que vão escutar a sua rádio.
Se forem poucos ouvintes você pode usar o MySQL é claro de acordo com o servidor que você possui e claro respeitando o número de conexões.
Uma boa alternativa é utilizar o SQL_CACHE para armazenar a query em cache até que entre outro Artista e Música no BD.
Se forem muitos ouvintes podemos fazer com que o PHP venha gerar uma página “htm” com as informações em tempo real para que você possa utiliza-lás no Player.
Detalhe (Parte do Site) em ambos os casos você terá que utilizar o “Jquery” para buscar as informações novas, você sabe quanto tempo vai durar a música ou quando o locutor vai começar a falar? Não né, pois bem eu também não, o que fazer?
Com Jquery você pode montar um script que irá buscar essa informação de 25 em 25 segundos 2 requisições por minuto.
Vamos trabalhar nos 2 casos:
Com Banco de Dados como ficaria?
Usuário → Player.php → info_artista_musica.php → Banco de Dados → info_artista_musica.php → Player.php → Usuário
O usuário abre o Player.php ( Versão MySQL )
O Player.php faz uma requisição para a página info_artista_musica.php,
por sua vez a página faz uma requisição ao banco de dados por uma tabela onde ficam armazenados os dados do artista e musica em tempo real e retorna essa informação para a página Player que irá disponibilizar o resultado da Query para o Usuário.
Usuário → Player.php → info_artista_musica.htm → Player.php → Usuário
O usuário abre o Player.php ( Versão Gerando um Arquivo HTM )
O Player.php faz uma requisição para a página info_artista_musica.htm que já contém as informações do artista e musica em tempo real e retorna essa informação para a página Player.php que irá disponibilizar o resultado da Query para o Usuário. Pode não parecer mas encurtamos um belo caminho.
Muito funcional, bom agora como disponibilizar o que esta no XML “local” para um site?
Como a maioria dos softwares para gerenciar Rádios ao Vivo em tempo real é feito sobre Windows.
O ideal seria ter um servidor com apache + php( Linux ou Windows ) na sua rede e disponibilizar a pasta onde fica o XML”local” para acesso externo.
Com o php você pode ler esse arquivo XML gerar um Array com os dados para fazer um post para o seu site.
Exemplo:
Quase nenhum artista nem música possui o carácter “#”.
Podemos fazer o seguinte.
Artista#Musica#Capa onde :
O Array na posição 0 seria o nome do artista.
O Array na posição 1 seria o nome da musica.
O Array na posição 2 seria a url da foto do artista ou capa do cd por exemplo.
Tendo essa informação em mãos ( a partir da intranet ) podemos fazer um post por exemplo:
Campo input com name e id “informacao” com o valor da concatenação abaixo:
Artista#Musica#Capa
Para um página PHP no seu servidor que será responsável por gerar um arquivo HTML ou realizar um update na Tabela do Banco de Dados.
Detalhe você terá que fazer o mesmo aqui em relação a atualizar a música: o post deve ser feito em no máximo de 30 em 30 segundos.
Apache2 + PHP5 + MySQL + PHPMyAdmin + ProFTPd
Esta dica serve para Ubuntu e Debian( foram os quais efetuei os testes );
no Terminal do Linux :
apt-get install apache2 php5 libapache2-mod-php5 php5-mcrypt mysql-server mysql-client phpmyadmin proftpd
Habilitando mod_rewrite
Diretório do Apache:
/etc/apache2/
cd /etc/apache2/sites-available
Arquivo de configuração “default”.
Basta editar as configurações com seu editor no meu caso eu uso o vim.
vim default
Modifique a linha: AllowOverride None para AllowOverride all
Agora ative o modulo : a2enmod rewrite
PHP5
Diretório :
/etc/php5/apache2/ aqui você encontra o “php.ini” arquivo de configuração do PHP.
PHPMyAdmin
cp -R /usr/share/phpmyadmin /var/www
Acesse: http://localhost/phpmyadmin
Lembrando que o PHPMyAdmin vem com as configuração padrão.
Através “php.ini” você consegue alterar o “timeout” de acordo com a sua necessidade.
ProFTPd
Diretório :
/etc/proftpd/ arquivo de configuração : “proftpd.conf”.
Procure pela linha “DefaultRoot”, caso ela esteja com o # na frente remova.
Normalmente esta linha vem assim:
DefaultRoot ~ ( isto faz com que quando o usuário acesse o ftp seja redirecionado para a sua pasta home )
Coloque o diretório onde fica a sua aplicação no meu caso “padrão”:
DefaultRoot /var/www
PHPMyAdmin aumentar timeout
Se você instalou o PHPMyAdmin via linux “apt-get” ele vem habilitado para a sessão expirar no caso de invatividade em 1440 segundos.
Se você tem acesso ao usuário “root” navegue até o diretório:
/etc/phpmyadmin/config.inc.php e procure por “LoginCookieValidity“, feito isto basta alterar o valor para o desejado.
Caso você tenha feito download a colocado o PHPMyAdmin no diretório do site ou algo do tipo o caminho será:
pasta_php_adm/libraries/config.default.php
Player de áudio com JQuery
Como criar um player de áudio com informações dinâmicas, vindo de um banco de dados por exemplo.
Imagine que o nome das músicas esta em uma tabela no banco de dados e você precisa criar um player dinâmico para tocar essas músicas, mas como fazer?
Vamos trabalhar um código JQuery que eu desenvolvi e uso bastante:
1º – Temos que ter um lugar no site para guardar as músicas no meu caso crie uma pasta chamada músicas:
2º – Vamos criar uma div para receber o nosso player quando o usuário clicar no botão correspondente a música que ele quer ouvir.
3º – Como o nome das músicas esta em um “Banco de Dados” e o conteúdo no caso é dinâmico, vamos usar o seguinte código, caso você faça um for,while, etc:
4º – Mágica no JQuery, o que vamos fazer, definir o caminho do nosso site/nomedapasta , quando o usuário clicar no botão player ele vai pegar o identificador “player_em_jquery” que no caso é a classe dos nossos botões e o id atual deste botão, o que retorna nome da música.
Feito isto o montamos o Player via JQuery e incluímos ele dentro da div “player”.
$(document).ready(function(){
$(".player_em_jquery").click(function(){
/* definimos a url do site e a pasta onde se encontram as músicas */
var url_site = "http://seusite.com/musicas/";
/* pega o atributo id da imagem que usuário clicou no momento */
var audio = $(this).attr("id");
/* monta o player */
var inBox = '';
/* incluí o player montado dentro da div player */
$("#player").html(inBox);
});
});
Nada melhor do que ver um “exemplo” funcionando.
Apache Mod Rewrite no Debian
Ativando o mod_rewrite no Debian.
Com o seu SSH faça logiin como root.
Entre no diretório : /etc/apache2/sites-available/ e edit “vi” ou “vim”:
root@suamaquina:/etc/apache2/sites-available# vim default <enter>
Agora procure pelas linhas “AllowOverride None” e faça uma alteração de “None” para “all” ficando assim:
“AllowOverride all”.
Agora ” ESC “ , “SHIFT +” : e digite “wq” <enter> * wq = write and quit
Agora digite “a2enmod rewrite” <enter> e reinicie o apache : /etc/init.d/apache2 restart <enter>
Pronto com isto você deve ter o mod_rewrite habilitado.
Debian 6 Login Automático
Instalei recentimente o Debian 6 para montar um ambiente intranet.
Fiz algumas mudanças e vi que algumas pessoas procuram como habilitar o login automático nele.
É bem simples vamos aos passos.
1º na sua area de trabalho la em cima vá em :
System > Adm( Administration ) > Login Screen
Veja a imagem ao lado, bom feito isso, clique no ícone “click to make changes”, o sistema irá pedir a senha do usuário “root”, coloque a senha e pronto, basta escolher qual usuário irá logar automaticamente no Debian.
Otimização de Requisições e Cache no HTACCESS
Como otimizar e fazer cache em algumas partes do seu site, utilizando o .htaccess ?
Abaixo você tem um dos códigos que eu utilizo para otimizar o site da www.jb.fm
ExpiresActive on
ExpiresDefault A300
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
Breve explicação:
Perguntamos ao Aapache se o Módulo Expieres está ativo, se estiver, procure as extensões:
jpg gif png js css swf
Ative o módulo
Tempo de Expiração deste cache é de 5 minutos = A300
Abaixo tem uma tabela para você poder comparar o tempo:
300 = 5 Minutos
2700 = 45 Minutos
3600 = 1 Horas
54000 = 15 Horas
86400 = 1 Dia
518400 = 6 Dias
Script player web radio
Como fazer com que o seu player online, seja compátivel com a maioria dos browsers?
Abaixo você tem um script que faz este milagre e pode ajudar e muito a você que esta procurando algo do tipo.
Parte HTML:
Javascript de que controla o Media Player :
function Pause()
{
document.getElementById('mediaplayer').controls.pause();
}
function Play()
{
document.getElementById('mediaplayer').controls.play();
}
function Stop()
{
document.getElementById('mediaplayer').controls.stop();
}
function Volume()
{
document.getElementById('mediaplayer').settings.volume = document.getElementById('mediaplayer').settings.volume + 30 ;
}
function VolumeDown()
{
document.getElementById('mediaplayer').settings.volume = document.getElementById('mediaplayer').settings.volume - 30 ;
}
Debian sem espaço no HD ?
Se você meu amigo, já enfrentou um problema com o LINUX estar com HD cheio e seus serviços não inicializarem, o mundo pode acabar mas a nossa procura não!
Enfrentei um problema recente, os serviços MYSQL, APACHE, SQUID não queriam inicializar!
Havia uma conta de E-mail com 120 GB ocupando espaço e detalhe que foi trabalhoso achar isto, pois só utilizo linux no modo texto.
Então ta ai a dica :
cd /etc/spool/mail comando ls -lh1 e veja se alguma conta esta utlizando seu espaço.
Abraço.





