Difference between revisions of "Digitronco SIP internet - Oi"

From Aligera Docs
Jump to navigation Jump to search
Line 18: Line 18:
 
   </medium><br><br>
 
   </medium><br><br>
  
−
   <label for="campo1">Número chave (10 dígitos):</label><br>
+
   <div class="campo">
−
  <input type="text" id="campo1" placeholder="5135000100" maxlength="10" minlength="10" /><br>
+
    <label for="campo1"><b>Número chave (10 dígitos):</b></label><br>
−
  <small id="erro1" style="color:red; display:none;">⚠️ Insira um número com 10 dígitos.</small><br><br>
+
    <input type="text" id="campo1" placeholder="5135000100" maxlength="10" minlength="10" />
 +
    <small id="erro1" class="erro">⚠️ Insira um número com 10 dígitos.</small>
 +
  </div>
  
−
   <label for="campo2">Senha conta SIP:</label><br>
+
   <div class="campo">
−
  <input type="password" id="campo2" placeholder="Digite a senha" /><br>
+
    <label for="campo2"><b>Senha conta SIP:</b></label><br>
−
  <small id="erro2" style="color:red; display:none;">⚠️ A senha não pode estar vazia.</small><br><br>
+
    <input type="password" id="campo2" placeholder="Digite a senha" />
 +
    <small id="erro2" class="erro">⚠️ A senha não pode estar vazia.</small>
 +
  </div>
  
−
   <label for="campo3">IP SBC:</label><br>
+
   <div class="campo">
−
  <input type="text" id="campo3" placeholder="192.168.0.1" /><br>
+
    <label for="campo3"><b>IP SBC:</b></label><br>
−
  <small id="erro3" style="color:red; display:none;">⚠️ Insira um endereço IP válido.</small><br><br>
+
    <input type="text" id="campo3" placeholder="192.168.0.1" />
 +
    <small id="erro3" class="erro">⚠️ Insira um endereço IP válido.</small>
 +
  </div>
  
 
   <button id="botaoGerar" onclick="gerarResposta()">Gerar script CLI</button>
 
   <button id="botaoGerar" onclick="gerarResposta()">Gerar script CLI</button>
 
</div>
 
</div>
  
−
<!-- Área onde a resposta será exibida -->
+
<!-- Resultado -->
 
<div id="resultado" style="margin-top:15px; font-weight:bold; color:#336699;"></div>
 
<div id="resultado" style="margin-top:15px; font-weight:bold; color:#336699;"></div>
−
 
−
<!-- Botão copiar -->
 
 
<button id="botaoCopiar" style="display:none; margin-top:10px;" onclick="copiarResposta()">Copiar</button>
 
<button id="botaoCopiar" style="display:none; margin-top:10px;" onclick="copiarResposta()">Copiar</button>
  
 
<style>
 
<style>
−
   /* Campos de entrada */
+
   /* Layout mais compacto */
 +
  .campo {
 +
    margin-bottom: 8px;
 +
    display: flex;
 +
    align-items: center;
 +
    gap: 6px;
 +
    flex-wrap: wrap;
 +
  }
 +
 
 +
  .campo label {
 +
    font-weight: bold;
 +
    color: #333;
 +
    display: block;
 +
    margin-bottom: 3px;
 +
  }
 +
 
 
   input {
 
   input {
−
     padding: 8px;
+
     padding: 6px;
 
     border: 1px solid #ccc;
 
     border: 1px solid #ccc;
 
     border-radius: 6px;
 
     border-radius: 6px;
−
     width: 200px;
+
     width: 180px;
−
    margin-top: 4px;
 
 
     transition: border-color 0.2s ease;
 
     transition: border-color 0.2s ease;
 
   }
 
   }
Line 53: Line 71:
 
     outline: none;
 
     outline: none;
 
     border-color: #007bff;
 
     border-color: #007bff;
−
     box-shadow: 0 0 4px rgba(0, 123, 255, 0.5);
+
     box-shadow: 0 0 3px rgba(0, 123, 255, 0.4);
 +
  }
 +
 
 +
  .erro {
 +
    color: red;
 +
    display: none;
 +
    font-size: 12px;
 
   }
 
   }
  
−
   /* Botões estilizados */
+
   /* Botões */
 
   button {
 
   button {
 
     background-color: #007bff;
 
     background-color: #007bff;
Line 62: Line 86:
 
     border: none;
 
     border: none;
 
     border-radius: 6px;
 
     border-radius: 6px;
−
     padding: 10px 18px;
+
     padding: 8px 16px;
−
     font-size: 15px;
+
     font-size: 14px;
 
     cursor: pointer;
 
     cursor: pointer;
 
     box-shadow: 0 2px 4px rgba(0,0,0,0.2);
 
     box-shadow: 0 2px 4px rgba(0,0,0,0.2);
Line 73: Line 97:
 
     box-shadow: 0 3px 6px rgba(0,0,0,0.3);
 
     box-shadow: 0 3px 6px rgba(0,0,0,0.3);
 
     transform: translateY(-1px);
 
     transform: translateY(-1px);
−
  }
 
−
 
−
  button:active {
 
−
    transform: translateY(1px);
 
−
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
 
 
   }
 
   }
  
Line 95: Line 114:
 
   const v3 = document.getElementById("campo3").value.trim();
 
   const v3 = document.getElementById("campo3").value.trim();
  
−
  // Expressões regulares para validação
 
 
   const regexNumero = /^\d{10}$/;
 
   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}$/;
 
   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}$/;
Line 101: Line 119:
 
   let valido = true;
 
   let valido = true;
  
−
  // Validação campo 1
 
 
   if (!regexNumero.test(v1)) {
 
   if (!regexNumero.test(v1)) {
 
     document.getElementById("erro1").style.display = "inline";
 
     document.getElementById("erro1").style.display = "inline";
Line 109: Line 126:
 
   }
 
   }
  
−
  // Validação campo 2
 
 
   if (!v2) {
 
   if (!v2) {
 
     document.getElementById("erro2").style.display = "inline";
 
     document.getElementById("erro2").style.display = "inline";
Line 117: Line 133:
 
   }
 
   }
  
−
  // Validação campo 3
 
 
   if (!regexIP.test(v3)) {
 
   if (!regexIP.test(v3)) {
 
     document.getElementById("erro3").style.display = "inline";
 
     document.getElementById("erro3").style.display = "inline";
Line 131: Line 146:
 
   }
 
   }
  
−
   const resposta =  
+
   const resposta =
 
     "config sip peer trunk1 delete<br>" +
 
     "config sip peer trunk1 delete<br>" +
 
     "config sip prack yes<br>" +
 
     "config sip prack yes<br>" +
Line 171: Line 186:
  
 
</html>
 
</html>
−
 
  
  

Revision as of 02:44, 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:

🔒 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.


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 reboot

AGOS

É 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