Login

Esqueci minha senha

lateral
Estatísticas
Temos 29300 usuários registrados
O último usuário registrado atende pelo nome de w00t3d

Os nossos membros postaram um total de 37318 mensagens em 5569 assuntos

Scritps para Automação - Aviso e Bloqueio

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Scritps para Automação - Aviso e Bloqueio

Mensagem por bracinho2 em Dom 24 Nov - 9:20

Buenas,

Segue mais uma pequena contribuição. Concebi o processo de pagamento da seguinte maneira, a saber:

1. AbrirPagamento: mudança de perfil do usuário de pago para devedor, e enviar página de download de boleto;
2. ConfirmarPagamento: modificar o perfil do usuário para pago;
3. AvisoAtraso: avisar cliente de mensalidade vencida;
4. Bloqueio: bloquear cliente por falta de pagamento;

OBS: Em minha rede, utilizei a seguinte política, com relação a celulares: Se o cliente está adimplente, o acesso via celulares fica liberado no IP bindings, para acessar sem precisar logar. Com isto, tive o seguinte problema: quando o cliente atrasava, ele não via a mensagem, pois, geralmente só navegava pelo celular. A solução foi elaborar um script que desabilitasse a regra do IP bindings. segue a sugestão:

Pré-requisitos:
a) ter o hotspot habilitado com as páginas de aviso e bloqueio configuradas;
b) ter os quatro perfis configurados: Pago, Boleto, Atraso e Bloqueio.

Notem que toda a "manobra" ocorre através do Comentário do Usuário, quando necessário.

#Script 01: AbrirPagamento:

/ip hotspot user set [/ip hotspot user find comment="Pago"] comment="Deve"
:log warning message=("Abrir processo de pagamento - em: " . [/sys cl get date] . " " . [/sys cl get time])

:delay 10s

/ip hotspot user set [/ip hotspot user find comment="Deve"] profile="Boleto"
:log warning message=("Enviar download de boleto - em: " . [/sys cl get date] . " " . [/sys cl get time])

#Script 02: Confirmar Pagamento:
:log warning message=("Iniciar Confirmação de Pagamento Automática - em: " . [/sys cl get date] . " " . [/sys cl get time])


:foreach h in=[/ip hotspot user find] do={
:local user [/ip hotspot user get $h name];

:local comment [/ip hotspot user get [/ip hotspot user find name="$user"] comment]

:log warning "Confirmação de Pagamento: Mudança de Profile e Liberação de Acesso via Celular sem autenticação de $user"

if ($comment = "Pago") do={

/ip hotspot user set "$user" profile=Pago

/ip hotspot ip-binding set [/ip hotspot ip-binding find comment="$user"] disable=no


delay 1s
log warning "***CofirmaçãoPagamento***"

}

OBS: Aqui valem dois comentários: a) não esqueçam de comentar cada usuário como Pago, ou deve para que o script possa encontrar as variáveis para funcionar. Já no IP bindings, o comentário de cada reserva de celular fica o nome do usuario, como está cadastrado no hotspot. Assim o script habilita ou desabilita baseado na variável $user.

#Script 03: Atraso:

:foreach h in=[/ip hotspot user find] do={
:local user [/ip hotspot user get $h name];

:local comment [/ip hotspot user get [/ip hotspot user find name="$user"] comment]

:log warning "Aviso de Atraso e Bloqueio de livre acesso via celular de $user"

if ($comment = "Deve") do={

/ip hotspot user set "$user" profile=Atraso

/ip hotspot ip-binding set [/ip hotspot ip-binding find comment="$user"] disable=yes

delay 1s

:log warning "Cliente Avisado!"
}

#Script 04: bloqueio:


/ip hotspot user set [/ip hotspot user find profile=Atraso] profile="Bloqueio"

:log warning "***FIM***"
:log warning message=("Bloqueio Automático de Inadimplentes - em: " . [/sys cl get date] . " " . [/sys cl get time])

#Agendamento:
Não esqueça de agendar no Scheduler para que os scripts rodem na data correta. Eu organizei da seguinte maneira:

a) AbrirPagamento:
Configurei o início do "processo" de cobrança e pagamento para o dia 01. Tomando por base que minha data de vencimento é 10, o cliente possui 10 dias para baixar, imprimir e pagar a fatura.

b) ConfirmarPagamento:
O agendamento desta tarefa fica a seu critério. Eu utilizava de forma automática com 2 agendamentos diários. Mas a tarefa era útil apenas durante o processo de pagamento. Quando agendada, a tarefa rodava o mês inteiro consumindo processamento da RB. Resolvi fazer manual. Sempre que um cliente paga, você altera o comentário de "Deve" para "Pago" e roda o script.

c) Atraso:
Esta tarefa requer a seguinte dica: Ao operar com boletos, temos que ter em mente que o banco demora pelo menos 24 horas para dar retorno do pagamento de boletos. Assim, sugiro agendar a mensagem de atraso para o dia 12 na primeira hora. Se o Cliente paga no vencimento, dia 10, o banco vai dar retorno apenas no dia 11.

d) Bloqueio:
A mesma dica do Atraso vale para o bloqueio. Se o aviso de atraso passa a operar dia 12, para o bloqueio, agende para o dia 13.

Bom era isso.

Um abraço.

bracinho2
Iniciante
Iniciante

Mensagens : 35
Pontos : 56
Reputação : 9
Data de inscrição : 17/12/2011
Idade : 32
Localização Localização : Toledo/PR

Voltar ao Topo Ir em baixo

Re: Scritps para Automação - Aviso e Bloqueio

Mensagem por claudinhohw Network em Dom 24 Nov - 15:19

parabéns... belo post.

__________________________________________________
"Teoria é quando se sabe tudo e nada funciona. Prática é quando funciona e ninguém sabe o porquê?"

LICENÇA THUNDER CACHE PRO 7.1 RÁPIDO E FÁCIL SÓ CLICAR NO LINK: [Você precisa estar registrado e conectado para ver este link.]
Parceiro BM Software | Consultoria em Mikrotik
Consultoria em Mk-Auth e ThunderCache-Pro.
Revenda ThunderCache-Pro
MSN:topmikrotik
@hotmail.com
SKYPE: topmikrotik

claudinhohw Network
Senior User Admin
Senior User Admin

Mensagens : 2541
Pontos : 3168
Reputação : 570
Data de inscrição : 28/08/2010
Idade : 32
Localização Localização : Goiás

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum