Difference between revisions of "Digitronco SIP internet - Oi"
Jump to navigation
Jump to search
🔒 As informações inseridas não são armazenadas nem enviadas — o processamento ocorre apenas no seu navegador.
⚠️ Insira um número com 10 dígitos.
⚠️ A senha não pode estar vazia.
⚠️ Insira um endereço IP válido.
(→AG561) |
(→AG561) |
||
| Line 9: | Line 9: | ||
<html> | <html> | ||
| − | <!-- Formulário | + | <!-- Formulário SIP com validação --> |
<div id="Formulario_561_OI" style="background-color:#e6f0ff; padding:20px; border-radius:8px; width:fit-content;"> | <div id="Formulario_561_OI" style="background-color:#e6f0ff; padding:20px; border-radius:8px; width:fit-content;"> | ||
<h3>Insira os dados da conta SIP fornecidos pela operadora:</h3> | <h3>Insira os dados da conta SIP fornecidos pela operadora:</h3> | ||
| − | |||
<medium style="color:gray; font-style:italic;"> | <medium style="color:gray; font-style:italic;"> | ||
🔒 As informações inseridas não são armazenadas nem enviadas — o processamento ocorre apenas no seu navegador. | 🔒 As informações inseridas não são armazenadas nem enviadas — o processamento ocorre apenas no seu navegador. | ||
</medium><br><br> | </medium><br><br> | ||
| − | <label>Número chave (10 dígitos):</label><br> | + | <label for="campo1">Número chave (10 dígitos):</label><br> |
| − | <input type="text" id="campo1" placeholder="5135000100" maxlength="10" minlength="10" /><br><br> | + | <input type="text" id="campo1" placeholder="5135000100" maxlength="10" minlength="10" /><br> |
| + | <small id="erro1" style="color:red; display:none;">⚠️ Insira um número com 10 dígitos.</small><br><br> | ||
| − | <label>Senha conta SIP:</label><br> | + | <label for="campo2">Senha conta SIP:</label><br> |
| − | <input type="password" id="campo2" placeholder="Digite a senha" /><br><br> | + | <input type="password" id="campo2" placeholder="Digite a senha" /><br> |
| + | <small id="erro2" style="color:red; display:none;">⚠️ A senha não pode estar vazia.</small><br><br> | ||
| − | <label>IP SBC:</label><br> | + | <label for="campo3">IP SBC:</label><br> |
| − | <input type="text" id="campo3" placeholder="192.168.0.1" /><br><br> | + | <input type="text" id="campo3" placeholder="192.168.0.1" /><br> |
| + | <small id="erro3" style="color:red; display:none;">⚠️ Insira um endereço IP válido.</small><br><br> | ||
<button id="botaoGerar" onclick="gerarResposta()">Gerar script CLI</button> | <button id="botaoGerar" onclick="gerarResposta()">Gerar script CLI</button> | ||
| Line 38: | Line 40: | ||
<style> | <style> | ||
| − | /* | + | /* Campos de entrada */ |
| + | input { | ||
| + | padding: 8px; | ||
| + | border: 1px solid #ccc; | ||
| + | border-radius: 6px; | ||
| + | width: 200px; | ||
| + | margin-top: 4px; | ||
| + | transition: border-color 0.2s ease; | ||
| + | } | ||
| + | |||
| + | input:focus { | ||
| + | outline: none; | ||
| + | border-color: #007bff; | ||
| + | box-shadow: 0 0 4px rgba(0, 123, 255, 0.5); | ||
| + | } | ||
| + | |||
| + | /* Botões estilizados */ | ||
button { | button { | ||
background-color: #007bff; | background-color: #007bff; | ||
| Line 51: | Line 69: | ||
} | } | ||
| − | |||
button:hover { | button:hover { | ||
background-color: #0056b3; | background-color: #0056b3; | ||
| Line 58: | Line 75: | ||
} | } | ||
| − | |||
button:active { | button:active { | ||
transform: translateY(1px); | transform: translateY(1px); | ||
| Line 64: | Line 80: | ||
} | } | ||
| − | |||
#botaoCopiar { | #botaoCopiar { | ||
background-color: #28a745; | background-color: #28a745; | ||
| Line 80: | Line 95: | ||
const v3 = document.getElementById("campo3").value.trim(); | const v3 = document.getElementById("campo3").value.trim(); | ||
| − | if (!v1 | + | // Expressões regulares para validação |
| − | document.getElementById("resultado").innerHTML = "⚠️ | + | const regexNumero = /^\d{10}$/; |
| + | const regexIP = /^(25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)){3}$/; | ||
| + | |||
| + | let valido = true; | ||
| + | |||
| + | // Validação campo 1 | ||
| + | if (!regexNumero.test(v1)) { | ||
| + | document.getElementById("erro1").style.display = "inline"; | ||
| + | valido = false; | ||
| + | } else { | ||
| + | document.getElementById("erro1").style.display = "none"; | ||
| + | } | ||
| + | |||
| + | // Validação campo 2 | ||
| + | if (!v2) { | ||
| + | document.getElementById("erro2").style.display = "inline"; | ||
| + | valido = false; | ||
| + | } else { | ||
| + | document.getElementById("erro2").style.display = "none"; | ||
| + | } | ||
| + | |||
| + | // Validação campo 3 | ||
| + | if (!regexIP.test(v3)) { | ||
| + | document.getElementById("erro3").style.display = "inline"; | ||
| + | valido = false; | ||
| + | } else { | ||
| + | document.getElementById("erro3").style.display = "none"; | ||
| + | } | ||
| + | |||
| + | if (!valido) { | ||
| + | document.getElementById("resultado").innerHTML = "⚠️ Corrija os erros acima antes de gerar o script."; | ||
document.getElementById("botaoCopiar").style.display = "none"; | document.getElementById("botaoCopiar").style.display = "none"; | ||
return; | return; | ||
Revision as of 02:34, 16 October 2025
Configurações para a operadora Oi
Acesse o equipamento utilizando a interface CLI, porta 22 SSH. Mais detalhes sobre a conexão podem ser obtidos no manual do equipamento.
AG561
É necessário a versão de firmware 9.2 ou superior.
Insira os dados da conta SIP fornecidos pela operadora:
⚠️ Insira um número com 10 dígitos.
⚠️ A senha não pode estar vazia.
⚠️ Insira um endereço IP válido.
Copie o script e cole na interface CLI.
Outra forma de configurar o AG561 é elaborar o script manualmente seguindo o modelo abaixo:
Através da interface CLI, executar o script abaixo:
Obs. Os campos entre <> devem ser alterados de acordo com os dados de sua conta, a qual a operadora enviou.
config sip peer trunk1 delete
!
config sip prack yes
config sip session_expires 300
config sip session_minse 90
config sip bindport 5060
!
config sip peer <numero_chave> register yes
config sip peer <numero_chave> username <numero_chave>
config sip peer <numero_chave> secret <senha>
config sip peer <numero_chave> host <ip_sbc_oi>
config sip peer <numero_chave> port 5061
config sip peer <numero_chave> contactuser <numero_chave>
config sip peer <numero_chave> dtmfmode rfc2833
config sip peer <numero_chave> transport tls
config sip peer <numero_chave> codecs alaw
config sip peer <numero_chave> options_keepalive yes
!
config dialplan rule sip_trunk1_default source_peer sip <numero_chave>
config dialplan rule sip_trunk1_default destination_peer tdm group1
config dialplan rule sip_trunk1_default outgoing_called {:-4}
!
config dialplan rule tdm_group1_default source_peer tdm group1
config dialplan rule tdm_group1_default destination_peer sip <numero_chave>
config dialplan rule tdm_group1_default outgoing_callerid <numero_chave>
!
config save
config apply
!
system rebootAGOS
É necessário a versão de firmware AGOS 4.58.5 ou superior.
Através da interface CLI, executar o script abaixo:
Obs. Os campos entre <> devem ser alterados de acordo com os dados de sua conta, a qual a operadora enviou.
config sip peer trunk1 delete
!
config sip prack yes
config sip session_expires 300
config sip session_minse 90
config sip bindport 5060
!
config sip peer <numero_chave> register yes
config sip peer <numero_chave> username <numero_chave>
config sip peer <numero_chave> secret <senha>
config sip peer <numero_chave> host <ip_sbc_oi>
config sip peer <numero_chave> port 5061
config sip peer <numero_chave> contactuser <numero_chave>
config sip peer <numero_chave> dtmfmode rfc2833
config sip peer <numero_chave> transport tls
config sip peer <numero_chave> codecs alaw
config sip peer <numero_chave> options_keepalive yes
!
config dialplan rule sip_trunk1_default source_peer sip <numero_chave>
config dialplan rule sip_trunk1_default outgoing_called {:-4}
!
config dialplan rule tdm_group1_default destination_peers 1 peer sip <numero_chave>
config dialplan rule tdm_group1_default outgoing_callerid <numero_chave>
!
config save
config apply
!
system reboot