10 de Outubro de 2008

Pegar o Status do Skype em PHP

Durante esses dias surgiu a necessidade de fazer um script para descobrir o "status" do Skype do pessoal aqui da Empresa.

A idéia era colocar uma mensagem "OPERADOR DISPONÍVEL" no site de um de nossos produtos, quando pelo menos uma pessoa da nossa equipe estivesse com o Skype ligado (menos offline e 'não disponível').

Recorremos ao site do Skype, que entrega a solução que deu base para construir essa ferramenta.

O Skype disponibiliza umas imagens com o Status atual de uma pessoa.

Exemplo de http://mystatus.skype.com/smallclassic/milenial.multimedia:

skype

O botão do Skype é bonitinho, mas não é suficiente para o que nós queriamos. Pois, era preciso colocar o telefone do Skype (SkypeOut) para aparecer somente quando tivesse alguém disponível. Logo, precisaríamos saber exatamente qual o Status do Skype.

Depois do script pronto, descobri que no site do Skype tem uma solução para este mesmo problema em Javascript. Mas, o código deles, que por ser em javascript não é muito confiável, tem cerca de 72 linhas.

No codigo produzido por mim, a solução é criativa e resolvida com apenas 1 linha de código.

A minha abordagem tem tres problemas:

  • Se o site do Skype sair do ar, o script para de funcionar.
  • Se o pessoal do Skype mudar a imagem (desenhar algo novo) o script para de funcionar. Mas, isso é facilmente resolvido testando os novos códigos de imagem.
  • Do jeito que está, funciona para servidores nos EUA (pois é lá que está hospedada minha aplicacao). Pois, um americano veria escrito na imagem "I'm Online" em vez "Estou Online". Logo, o tamanho da imagem mudaria.
    • 1197 é o tamanho em Bytes da imagem "I'm Online". Faça uma adaptação para os códigos correspondentes para o local onde você hospedar seu PHP.

A logica do sisteminha é:

  • A imagem representa o Status atual do Skype.
  • Cada imagem tem um tamanho diferente, pois os textos e cores aplicados nela são diferentes.
  • O "tamanho" da imagem (strlen do output binário) como parâmetro para informar o Status.

A classe está aí em baixo. Para usar o código é simples:


<?php
$Skype = new Skype();
$milenial = $Skype->getStatus('milenial.multimedia');

// Se nao estiver offline e indisponivel
if ($milenial != 755 && $milenial != 1457) {

echo "Meu status no Skype é: ".$Skype->getStatusName($milenial).". Ligue para 3137-xxxx";
}
?>

 

<?php
/*
* Copyrights Milenial Multimedia LTDA

*
* @author Ramiro Cavalcanti (ramiro@milenial.com.br)
*
*/

class Skype {    
    
/**
    * Pega o status (em codigo) do Skype
    *
    * @param     string        $skype_name (Nome do usuario do Skype) 
    * @return    int        $n_status
    *
    */
    
public function getStatus($skype_name) {
        
$n_status strlen(file_get_contents("http://mystatus.skype.com/smallclassic/".$skype_name));
        return 
$n_status;
    }
    
    
/**
    * Retorna o nome do status.
    *
    * @param    int        $n_status (O status conseguindo na getStatus())
    * @return    string        O tipo de Status em modo texto;
    *
    */    
    
public function getStatusName($n_status=0) {
        
$status[755] = "Offline";
        
$status[1511] = "Ocupado";
        
$status[1457] = "Indisponivel";
        
$status[1429] = "Ausente";
        
$status[1585] = "SkypeMe";
        
$status[1197] = "Online";
        

        if (
$n_status) {    
            
//echo strlen($teste);    
            
if (array_key_exists($n_status,$status)) {
                return 
$status[$n_status];
            }
            return 
"Status '$n_status' desconhecido";            
        }
        return 
"Consulta Indisponivel";
    }
}

?>
2 Comentários | Publicado por Administrador

Marcadores: PHP

10 de Setembro de 2008

O que é SEO (Search Engine Optimization) ?

Tudo começa com os sites de busca (Google, Altavista, MSN, UOL, etc), que existem para localizar o que procuramos na Internet.

Quando alguém quer pesquisar na Internet um Hotel no Rio de Janeiro. O que a pessoa faz?

Entra no site do Google e digita "Hotel Rio de Janeiro".

Se você é dono de um Hotel no Rio de Janeiro, certamente irá querer que seu site apareça como resultado da busca com as palavras-chave "Hotel Rio de Janeiro".

É importante, portanto, que no conteúdo do seu site essas palavras estejam explícitas e que os mecanismos de busca reconheçam as palavras "hotel" e "Rio de Janeiro" como palavras importantes no seu site.

Os sites de busca têm um mecanismo (tipo um robô) que diariamente coleta as informações de cada página da Web, varre link por link, um a um, e guarda essas informações em uma base de dados. 

O SEO (Search Engine Optimization) é uma técnica para aperfeiçoar os sites, para que os robôs dos sites de busca guardem as informações [do seu site] que são mais relevantes para o público.

Ou seja, o objetivo do SEO é fazer a ligação entre o site do cliente e os sites de busca. Para quando, alguém buscar um conteúdo relevante [para o negócio do cliente], o mecanismo de busca exibir o link para o site do cliente nas primeiras páginas de retorno da busca.

Os resultados desta nova técnica não são previsíveis. Não existe garantia de que se você fizer o SEO, as visitas do seu site irão aumentar. Mas, a probabilidade de ocorrer um aumento de procura pelo seu site existe.

Se você tem um site pouco otimizado, os resultados do SEO serão mais expressivos, caso essas técnicas venham a ser utilizadas.

Como exemplo de trabalho de SEO realizado pela Milenial Multimedia, podemos citar o site da Editora Azougue.

Quando começamos a atender a Editora, o site dela existia. Ele tinha quatro anos de uso e não estava otimizado para os sistemas de busca. Com a reformulação do site e a otimização, o volume médio de visitas cresceu de 24,8/dia para 82/dia. Houve um amento de 328% sem qualquer tipo de divulgação.

Podemos observar o crescimento de visitas no site, após o uso da técnica do SEO:

 

Mês/Ano
 Média Visitas Diária Aumento(%)
 Ago2008 82 328%*
 Jul2008 33 130%*
 Jun2008 25 
 Mai2008 27 
 Abr2008 23 
 Mar2008 22 
 Fev2008 24 
 Jan2008  28 

 * Referente a última semana do mês de Julho, quando foi implementado o SEO.

3 Comentários | Publicado por Administrador

Marcadores:

20 de Agosto de 2008

Na Crista da Onda: Softwares por Assinatura

Na edição de nove de abril de 2008 da Revista Exame, foi publicada uma matéria intitulada "Drible no Departamento de TI", que fala sobre a transformação dos softwares tradicionais, aqueles instalados no computador, em serviços prestados pela internet.

Essa matéria reforça o posicionamento da Milenial Multimedia no mercado de tecnologia e revela a tendência mundial da utilização de softwares baseados em ambiente Web, inclusive com a sua utilização em serviços de assinatura mensal.

De acordo com o artigo, o mercado desse tipo de software ainda é pequeno: movimentou 4,2 e 5,1 bilhões de dólares no mundo nos anos de 2006 e 2007 respectivamente. Contudo, as perspectivas de crescimento são boas segundo a Consultoria Gartner, que estima que em 2011 serão movimentados 11,5 bilhões de dólares.

O texto também destaca as vantagens dos softwares utilizados na internet, entre elas o menor custo de desenvolvimento, o menor tempo de implantação, a maior flexibilidade e facilidade de uso.

A maior facilidade de uso é explicada pelo fato de os sistemas baseados em Web parecerem com sites como o Google, entre outros. Logo, como considerável número das pessoas já se encontra habituada a navegar na internet, a curva de aprendizado - o tempo que o usuário leva para aprender a usar o sistema - é menor.

Atualmente, a Milenial Multimedia desenvolve a Comunidade Medkit, que utiliza o modelo de assinatura mensal. Além disso, tem projetos desenvolvidos sob demanda que são armazenados em seus servidores, o que a coloca como Empresa de ponta em software baseado em Web, tal como o artigo sugere no quadro abaixo.

 Software Tradicional Software Como Serviço
Compra A empresa compra uma licença de uso para cada um de seus usuários.
Não há aquisição do software. A empresa paga por mês pelo aluguel com base no número de usuários.
Acesso O software fica instalado no servidor da empresa.
O sistema é hospedado no servidor do fabricante do software e o acesso é feito via Internet.
Atualização É necessário o apoio do departamento de tecnologia para fazer migrações de versões e dados. Geralmente se paga por novas licenças.
A atualização do software é feita pelo fornecedor via internet e o usuário não faz a migração de dados e não paga por isso

A matéria completa pode ser lida no Site da Exame na seção de Tecnologia.

2 Comentários | Publicado por Administrador

Marcadores:

Marcadores