[Tutorial] Chamada em espera da central telefônica conectada ao Linux

Tutorias diversos sobre serviços e aplicações em servidores Linux
Avatar do usuário
marceloleaes
Administrator
Administrator
Mensagens: 1516
Registrado em: 10 Jun 2013 12:45
Localização: Novo Hamburgo
Idade: 41
Contato:
Status: Offline

[Tutorial] Chamada em espera da central telefônica conectada ao Linux

Mensagem por marceloleaes »

Buenas,

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  ;)

Imagem

Vamos ao passo a passo ?

1 - Instalando o Samba

Código: Selecionar todos

apt-get install samba
Conf de exemplo:
[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
Com isto teremos o samba funcional para receber os arquivos mp3, flac, ogg através da rede.

2 - Instalando o XMMS2 ( Reprodutor de mp3 )

Código: Selecionar todos

apt-get install xmms2
Já é instalando junto a ele o cli para podermos executar através do terminal.

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
Fora do horário comercial

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
4 - Agendamentos no Crontab

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":
40 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
5 - Habilitando o repeat do playlist auto gerado

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"
#!/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
Bom, agora é conectar a placa de som a central telefônica  ;D para isto utilize um cabo P2 -> RCA

Imagem

O XMMS possui diversos comandos úteis, para consultar os mesmos basta rodar

Código: Selecionar todos

xmms2 help
E bom proveito !


"Transportai um punhado de terra todos os dias e fareis uma montanha." Confúcio

Avatar do usuário
tacioandrade
Administrator
Administrator
Mensagens: 110
Registrado em: 10 Jun 2013 22:03
Localização: Vitória da Conquista - Ba
Idade: 34
Contato:
Status: Offline

Re:[Tutorial] Chamada em espera da central telefônica conectada ao Linux

Mensagem por tacioandrade »

Grande Marcelo então seu sumiço nos últimos tempos foi "inventando" isso dai é? hehehe Ótima dica cara, muitos sucesso e valeu por por compartilhar.

Avatar do usuário
marceloleaes
Administrator
Administrator
Mensagens: 1516
Registrado em: 10 Jun 2013 12:45
Localização: Novo Hamburgo
Idade: 41
Contato:
Status: Offline

Re:[Tutorial] Chamada em espera da central telefônica conectada ao Linux

Mensagem por marceloleaes »

Vixe, tem mais coisa relacionada heheheh, tá uma correria esta semana  ;D
"Transportai um punhado de terra todos os dias e fareis uma montanha." Confúcio

Responder

Voltar para “Tutoriais”