Sabe a música que fica tocando na espera da central e que em maioria dos casos você vê um mini system ou um discman conectado para fornecer este sinal de áudio para a central ? Então... tinha um netbook Dell parado devido a limitações de configuração e não ter mais serventia para nada e resolvi conectar ele na central e bolar scripts para executar os mp3 dentro dos horários programados. Lógico, se você já tem uma máquina Linux rodando com placa de som não necessita de uma máquina nova... acabei usando o netbook porque nenhum dos meus servidores possuia placa de som

Não me preocupei em fazer algo "super profissional" apenas pensei em algo simples e funcional. Se quiser melhorar, poste aqui as melhorias


Vamos ao passo a passo ?
1 - Instalando o Samba
Código: Selecionar todos
apt-get install samba
Com isto teremos o samba funcional para receber os arquivos mp3, flac, ogg através da rede.[global]
workgroup = MEUDOMINIO
netbios name = HOSTNAMEDAMAQUINA
security = share
server string = samba
map to guest = Bad User
case sensitive = No
preserve case = Yes
short preserve case = Yes
[REPOSITORIO]
comment = Central Telefônica
path = /home/ura/repositorio
available = yes
browsable = yes
guest ok = yes
public = yes
writable = yes
create mask = 0777
directory mask = 0777
2 - Instalando o XMMS2 ( Reprodutor de mp3 )
Código: Selecionar todos
apt-get install xmms2
3 - Scripts de reprodução dos arquivos mp3
A idéia é que, durante o horário comercial sejam reproduzidas músicas diversas contidas em um diretório compartilhado no samba, toda vez que este script rodar irá atualizar a lista de músicas e "sortear" a ordem delas antes de iniciar a reprodução. E no horário não comercial, será executado uma gravação avisando que a empresa esta fora do horário comercial e fornecendo telefones de plantão para os clientes, o outro script funciona exatamente da mesma maneira. Vamos aos scripts:
Horário comercial
Código: Selecionar todos
#!/bin/bash
# Script para execução da espera em horário comercial
# Por Marcelo Leães - [email protected]
/usr/bin/xmms2 stop
/usr/bin/xmms2 clear
/usr/bin/xmms2 add /home/ura/repositorio/Musicas
/usr/bin/xmms2 playlist shuffle
/usr/bin/xmms2 play
Código: Selecionar todos
#!/bin/bash
# Script para execução da espera fora do horário comercial
# Por Marcelo Leães - [email protected]
/usr/bin/xmms2 stop
/usr/bin/xmms2 clear
/usr/bin/xmms2 add /home/ura/repositorio/Chamadas
/usr/bin/xmms2 playlist shuffle
/usr/bin/xmms2 play
Com os scripts devidamente ajustados para as suas necessidades, resta agendar. No exemplo, vamos agendar para executar de segunda a sexta sendo que durante o sábado e o domingo ficará em reprodução a gravação de após o expediente já que será executado pela última vez na sexta e o de horário comercial não será executado novamente até segunda feira. Meus horários são: 07:40 ( Inicio expediente ) 18:00 ( Término do expediente ) lembre de executar com um usuário comum pois o xmms não roda com o usuário root, segue exemplos do cron onde o usuário seria "espera":
5 - Habilitando o repeat do playlist auto gerado40 07 * * 1-5 espera /home/ura/repositorio/Scripts/Starta-Comercial.sh >/dev/null 2>&1
00 18 * * 1-5 espera /home/ura/repositorio/Scripts/Starta-Vinheta.sh >/dev/null 2>&1
Por padrão o XMMS não faz repeat do playlist em reprodução ou seja, vai tocar até a última faixa e parar de reproduzir.
Para habilitar o repeat do playlist execute o script abaixo com o usuário que vai também reproduzir, em nosso exemplo o usuário "espera"
Bom, agora é conectar a placa de som a central telefônica#!/bin/bash
# Habilita/Desabilita o repeat do playlist no XMMS
# Por Marcelo Leães - [email protected]
GetStatus=$(xmms2 server config playlist.repeat_all )
case $GetStatus in
"playlist.repeat_all = 1") xmms2 server config playlist.repeat_all 0 ; sudo beep; echo Recurso de repeat desabilitado, rode novamente o script ;;
"playlist.repeat_all = 0") xmms2 server config playlist.repeat_all 1 ; sudo beep ; sudo beep ; echo Recurso de repeat ativado com sucesso;;
esac


O XMMS possui diversos comandos úteis, para consultar os mesmos basta rodar
Código: Selecionar todos
xmms2 help