Enviando faixas tocadas no Amarok 2 para o Twitter
Publicado por Elder Marco (última atualização em 22/10/2009)
[ Hits: 5.529 ]
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.$$
zsh: Cliff random number generator
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Acabei de formatar meu ssd e deu erro (3)
Desempenho abaixo do esperado - travadas e congelamento do sistema ope... (5)
Bash ao invés de Fish no CachyOS (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta