Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
api_flashman [17/04/2018 14:04]
superuser
api_flashman [19/04/2023 19:35] (atual)
superuser
Linha 25: Linha 25:
 ^ Parâmetro ​      ^ Descrição ​                                                          ^ Formato ​                            ^ Obrigatório ^ ^ Parâmetro ​      ^ Descrição ​                                                          ^ Formato ​                            ^ Obrigatório ^
 | MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] | Sim         | | MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] | Sim         |
 +
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                             ^
 +| 200         | OK, retorna as informações do roteador | 
 +| 404         | Roteador não encontrado ​               |
 +| 500         | Erro interno do servidor ​              |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ false,
 +  "​message":​ "​device not found"
 +}
 +</​code>​
 +
 +<​code>​
 +{
 +  "​success":​ true,
 +  "​external_reference":​ {
 +      "​kind":​ '​CPF',​
 +      "​data":​ '​123.456.789-00'​
 +  },
 +  "​apps":​ [],
 +  _id: '​11:​11:​11:​11:​11:​11',​
 +  "​model":​ '​TL-MR3020V1',​
 +  "​release":​ '​0004-AIX',​
 +  "​pppoe_user":​ '',​
 +  "​pppoe_password":​ '',​
 +  "​wifi_ssid":​ '​TesteSSID',​
 +  "​wifi_password":​ '​SenhaWifi',​
 +  "​wifi_channel":​ '​auto',​
 +  "​last_contact":​ 2018-01-01T03:​00:​00.000Z,​
 +  "​do_update":​ false,
 +  "​do_update_parameters":​ true,
 +  "​connection_type":​ '​dhcp',​
 +  "​__v":​ 0,
 +  "​ip":​ '​5.5.5.5',​
 +  "​wan_ip":​ '​10.10.10.10'​
 +}
 +</​code>​
  
 ==== Alterar informações de um roteador ==== ==== Alterar informações de um roteador ====
Linha 55: Linha 95:
 |                 ​| ​                                                            ​| ​         |              | |                 ​| ​                                                            ​| ​         |              |
 |                 ​| ​                                                            ​| ​         |              | |                 ​| ​                                                            ​| ​         |              |
 +
 +**Observação**:​ O parâmetro ''​wifi_ssid''​ possui limitações que dependem do roteador, como por exemplo o uso de espaços. Existem roteadores que não permitem o uso de espaços para o SSID e existem outros, que embora permitam, podem remover os espaços em brancos.
  
 == Exemplo do Body == == Exemplo do Body ==
Linha 67: Linha 109:
     "​wifi_channel":​ "​auto"​     "​wifi_channel":​ "​auto"​
   }   }
 +}
 +</​code>​
 +
 +
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                                                        ^
 +| 200         | OK, retorna as informações do roteador alterado ​                  ​| ​
 +| 404         | Roteador não encontrado ​                                          |
 +| 500         | Erro no servidor, mais informações no body da mensagem de retorno |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ false,
 +  "​message":​ "​device not found",​
 +  "​errors":​ []
 +}
 +</​code>​
 +
 +<​code>​
 +{
 +  "​success":​ true,
 +  "​external_reference":​ {
 +      "​kind":​ '​CPF',​
 +      "​data":​ '​123.456.789-00'​
 +  },
 +  "​apps":​ [],
 +  _id: '​11:​11:​11:​11:​11:​11',​
 +  "​model":​ '​TL-MR3020V1',​
 +  "​release":​ '​0004-AIX',​
 +  "​pppoe_user":​ '',​
 +  "​pppoe_password":​ '',​
 +  "​wifi_ssid":​ '​TesteSSID',​
 +  "​wifi_password":​ '​SenhaWifi',​
 +  "​wifi_channel":​ '​auto',​
 +  "​last_contact":​ 2018-01-01T03:​00:​00.000Z,​
 +  "​do_update":​ false,
 +  "​do_update_parameters":​ true,
 +  "​__v":​ 0
 +}
 +</​code>​
 +
 +<​code>​
 +{
 +  "​success":​ false,
 +  "​message":​ 'Erro validando os campos, ver campo "​errors"',​
 +  "​errors":​ [
 +    "​password":​ "Este campo deve ter no mínimo 8 caracteres"​
 +  ]
 +}
 +</​code>​
 +
 +==== Habilitar ou desabilitar atualização de firmware de um roteador ====
 +
 +== Formato da URL ==
 +
 +<​code>​
 +/​devicelist/​update/​{MAC do roteador}/​{Release}
 +</​code>​
 +
 +== Método HTTP ==
 +
 +<​code>​
 +PUT
 +</​code>​
 +
 +== Formato da Requisição ==
 +
 +^ Parâmetro ​      ^ Descrição ​                                                          ^ Formato ​                            ^ Obrigatório ^
 +| MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] | Sim         |
 +| Release ​        | Identificador de release do firmware. Exemplo: 0001-fab ​            | String ​                             | Não         |
 +
 +== Parâmetros do Body ==
 +
 +^ Parâmetro ​      ^ Descrição ​                                                  ^ Formato ​ ^ Obrigatório ​ ^
 +| do_update ​      | Habilitar ou desabilitar a atualização de firmware ​         | Booleano | Sim          |
 +
 +== Exemplo do Body ==
 +
 +<​code>​
 +{
 +  "​do_update":​ true
 +}
 +</​code>​
 +
 +
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                                                        ^
 +| 200         | OK, alteração feita com sucesso ​                                  ​| ​
 +| 500         | Erro no servidor, mais informações no body da mensagem de retorno |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ false,
 +  "​message":​ "Erro ao encontrar dispositivo"​
 +}
 +</​code>​
 +
 +<​code>​
 +{
 +  "​success":​ true
 } }
 </​code>​ </​code>​
Linha 89: Linha 233:
 | MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] | Sim         | | MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] | Sim         |
  
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                            ^
 +| 200         | OK, roteador foi deletado com sucesso | 
 +| 500         | Erro interno do servidor ​             |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ true
 +}
 +</​code>​
 +
 +==== Criar registro de um roteador ====
 +
 +== Formato da URL ==
 +
 +<​code>​
 +/​devicelist/​create
 +</​code>​
 +
 +== Método HTTP ==
 +
 +<​code>​
 +PUT
 +</​code>​
 +
 +== Parâmetros do Body ==
 +
 +^ Parâmetro ​      ^ Descrição ​                                                          ^ Formato ​                            ^ Obrigatório ​ ^
 +| mac_address ​    | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] | Sim          |
 +| release ​        | Identificador de release do firmware. Exemplo: 0001-fab ​            | String ​                             | Não          |
 +| pppoe_user ​     | Usuário PPPoE                                                       | String ​                             | Não          |
 +| pppoe_password ​ | Senha do usuário PPPoE                                              | String ​                             | Não          |
 +| wifi_ssid ​      | Identificação do ponto de acesso sem fio do usuário (SSID) ​         | String ​                             | Não          |
 +| wifi_password ​  | Senha do ponto de acesso sem fio do usuário ​                        | String ​                             | Não          |
 +| wifi_channel ​   | Canal do 802.11 ​                                                    | String ​                             | Não          |
 +|                 ​| ​                                                                    ​| ​                                    ​| ​             |
 +
 +== Exemplo do Body ==
 +
 +<​code>​
 +{
 +  "​content":​ {
 +    "​mac_address":​ "​FF:​FF:​FF:​00:​00:​00",​
 +    "​release":​ "​0001-fab",​
 +    "​pppoe_user":​ "​teste",​
 +    "​pppoe_password":​ "​teste123",​
 +    "​wifi_ssid":​ "​FlashMan-AP-Teste",​
 +    "​wifi_password":​ "​senhateste",​
 +    "​wifi_channel":​ "​auto"​
 +  }
 +}
 +</​code>​
 +
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                                                        ^
 +| 200         | OK, roteador criado com sucesso ​                                  ​| ​
 +| 500         | Erro no servidor, mais informações no body da mensagem de retorno |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ false,
 +  "​message":​ "Erro no json recebido",​
 +  "​errors":​ []
 +}
 +</​code>​
 +
 +<​code>​
 +{
 +  "​success":​ true,
 +}
 +</​code>​
 +
 +<​code>​
 +{
 +  "​success":​ false,
 +  "​message":​ 'Erro validando os campos, ver campo "​errors"',​
 +  "​errors":​ [
 +    "​password":​ "Este campo deve ter no mínimo 8 caracteres"​
 +  ]
 +}
 +</​code>​
 +
 +==== Enviar comando para um roteador ====
 +
 +== Formato da URL ==
 +
 +<​code>​
 +/​devicelist/​command/​{MAC do roteador}/​{Comando}
 +</​code>​
 +
 +== Método HTTP ==
 +
 +<​code>​
 +PUT
 +</​code>​
 +
 +== Formato da Requisição ==
 +
 +^ Parâmetro ​      ^ Descrição ​                                                          ^ Formato ​                                ^ Obrigatório ^
 +| MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] ​    | Sim         |
 +| Comando ​        | Tipo de comando a ser desempenhado pelo roteador Flashbox ​          | Veja os comandos suportados logo abaixo | Sim         |
 +
 +^ Comando ​ ^ Descrição ​                                                                                                    ^
 +| boot     | Reiniciar roteador Flashbox ​                                                                                  |
 +| rstapp ​  | Apagar senha de login do aplicativo do usuário final                                                          |
 +| rstmqtt ​ | Cuidado! Gera um novo token MQTT. Apenas use esse comando após a remoção do cadastro do roteador no Flashman ​ |
 +| log      | Envia o de log  do roteador para o Flashman. Para ver o log, use o comando de visualizar último log           |
 +
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                            ^
 +| 200         | OK, comando executado com sucesso ​    ​| ​
 +| 500         | Erro interno do servidor ​             |
 +| 404         | Comando ou roteador não encontrado ​   |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ true
 +}
 +</​code>​
 +
 +==== Visualizar último log enviado de um roteador ====
 +
 +ATENÇÂO! Use esta função após o comando de envio de log.
 +
 +== Formato da URL ==
 +
 +<​code>​
 +/​devicelist/​lastlog/​{MAC do roteador}
 +</​code>​
 +
 +== Método HTTP ==
 +
 +<​code>​
 +GET
 +</​code>​
 +
 +== Formato da Requisição ==
 +
 +^ Parâmetro ​      ^ Descrição ​                                                          ^ Formato ​                                ^ Obrigatório ^
 +| MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] ​    | Sim         |
 +
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                            ^
 +| 200         | OK, comando executado com sucesso ​    ​| ​
 +| 500         | Erro interno do servidor ​             |
 +| 404         | Roteador não encontrado ​              |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ true,
 +  "​message":​ "Não existe log deste roteador"​
 +}
 +</​code>​
 +
 +<​code>​
 +'​Content-Encoding',​ '​gzip',​
 +'​Content-Type',​ '​text/​plain'​
 +</​code>​
 +
 +==== Visualizar log de boot de um roteador ====
 +
 +== Formato da URL ==
 +
 +<​code>​
 +/​devicelist/​firstlog/​{MAC do roteador}
 +</​code>​
 +
 +== Método HTTP ==
 +
 +<​code>​
 +GET
 +</​code>​
 +
 +== Formato da Requisição ==
 +
 +^ Parâmetro ​      ^ Descrição ​                                                          ^ Formato ​                                ^ Obrigatório ^
 +| MAC do roteador | Endereço MAC do roteador que encontra-se na etiqueta do equipamento | [A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F]:​[A-F] ​    | Sim         |
 +
 +== Retorno da Requisição ==
 +^ Status Code ^ Descrição ​                            ^
 +| 200         | OK, comando executado com sucesso ​    ​| ​
 +| 500         | Erro interno do servidor ​             |
 +| 404         | Roteador não encontrado ​              |
 +
 +== Exemplos de Retorno ==
 +<​code>​
 +{
 +  "​success":​ true,
 +  "​message":​ "Não existe log deste roteador"​
 +}
 +</​code>​
 +
 +<​code>​
 +'​Content-Encoding',​ '​gzip',​
 +'​Content-Type',​ '​text/​plain'​
 +</​code>​