Enviando faixas tocadas no Amarok 2 para o Twitter
Publicado por Elder Marco (última atualização em 22/10/2009)
[ Hits: 5.593 ]
Homepage: http://www.eldermarco.com
Um script simples que publica o que você está ouvindo atualmente no Amarok 2 direto no seu Twitter, utilizando o curl. :-)
#!/bin/bash # # Envia uma música que você está ouvindo no Amarok 2 # para o Twitter. # # Autor: Elder Marco/ www.idiossincrasias.com # Data: 20/10/2009 #------------------------------------------------------------------- # Você pode salvar sua senha e usuário num arquivo oculto no seu diretório # $HOME ou inserá-las aqui. Das duas maneiras, essa informação estará # salva em um arquivo texto. Se for inserir no arquivo texto, crie-o # com seu editor de textos preferido: # # $ vi ~/.amarok2twitter # # Insira então os dados no arquivo usando as variáveis username e senha: # Ex.: # username="ElderMarco" # senha="SenhadoElderMarco" # # e pronto. Alternativamente, você pode não definir a senha em lugar # nenhum (ou definir como "perguntar") e então o script irá pedir ela # a você toda vez que quiser enviar o que está ouvindo para o Twitter. if [ -e $HOME/.amarok2twitter ]; then . $HOME/.amarok2twitter else # Só altere aqui se você quer definir isso no próprio script. username="UserName" senha="perguntar" fi # Se não foi definida no arquivo nem no script. O usuário será questionado # sobre ela. senha=${senha:-"perguntar"} if [ "$senha" = "perguntar" ]; then read -sp "Senha do Twitter: " senha echo fi # O Amarok está rodando? rodando=`ps -e | grep 'amarok$'` [ -z "$rodando" ] && { echo -n "O Amarok não está em execução. Saindo... " sleep 1; echo; exit 1 } # Bom, então vamos obter algumas informações sobre metadados da faixa # em execução. A idéia veio do plugin music para o AMSN. artista=`qdbus org.kde.amarok /Player GetMetadata | fgrep artist` musica=`qdbus org.kde.amarok /Player GetMetadata | fgrep title` album=`qdbus org.kde.amarok /Player GetMetadata | fgrep album` # Retirando coisas desnecessárias. artista=${artista/"artist: "/""} musica=${musica/"title: "/""} album=${album/"album: "/""} # Formato da Mensagem a ser enviada. Se o álbum não foi definido, ele # será omitido. No entanto, nome da música e artista são obrigatórios. if [ -n "$musica" -a -n "$artista" ]; then if [ -n "$album" ]; then msg="♫ Ouvindo \"$musica\" por \"$artista\" do álbum \"$album\" [Amarok 2]" else msg="♫ Ouvindo \"$musica\" por \"$artista\" [Amarok 2]" fi else echo "Não foi possível obter nome do artista ou nome de música." echo "Verifique os metadados do arquivo em questão." exit 1 fi # Mais de 140 caracteres? [ ${#msg} -ge 140 ] && { echo "Putz! Que azar! A mensagem a ser enviada possui mais de 140 caracteres." echo "Se ela for enviada, será truncada." read -n1 -p "Deseja mandar mesmo assim?[s/N] " sn [ "$sn" = N -o "$sn" = n -o ! "$sn" ] && { exit 1 } } # Por fim, envia para o Twitter. echo -n "Enviando... " curl --basic --user $username:$senha \ --data status="$msg" http://twitter.com/statuses/update.xml \ 1>/tmp/amarok2twitter.$$ 2>&1 # Será que teve sucesso na autenticação e publicou o Tweet? if ! grep "Could not authenticate you." /tmp/amarok2twitter.$$ 1>/dev/null ; then echo "pronto." else echo "falhou. :(" fi rm /tmp/amarok2twitter.$$
Administração de usuários Linux
Criar senha para abrir determinado programa
Monitoramento automático de logs e envio por e-mail – Fácil e explicado
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Separar trafego da VPN da VPS (0)
Formatando cartão de memoria que nao formata[AJUDA] (17)
warsaw parou de funcionar após atualização do sistema (solução) (0)
Desde que seja DDR3, posso colocar qualquer memória? [RESOLVIDO] (6)