Exemplo - matheuswhite/bluebees GitHub Wiki

Exemplo

Nessa seção será apresentado um passo a passo da configuração de uma rede mesh Bluetooth hipotética. Para maiores informações sobre os comandos, pode ser utilizada a flag --help.

Requisitos

Para que esse tutorial funcione é necessário que o procedimento de instalação tenha sido realizado. Os comandos devem ser executados em um terminal dentro da pasta da ferramenta. Em sistemas Windows, os comandos devem ser executados no prompt de comando.

1º Passo

O primeiro passo é executar o comando abaixo, em um terminal diferente:

python3 -m bluebees core run -s

É necessário que esse comando esteja executando para que outros comandos funcionem. Se tudo ocorrer corretamente, o resultado do comando será semelhante a imagem abaixo: core_run

2º Passo

O segundo passo é criar uma rede, para isso será executado o comando a seguir:

python3 -m bluebees net new --name net-test

A primeira palavra python3 é utilizada para executar executar um pacote do Python3 (no Windows é utilizado python). A palavra bluebees representa o pacote que será executado, no nosso caso é o nome da ferramenta: bluebees. A palavra net, representa que o comando será executado no contexto "rede". A palavra new, indica que uma nova rede será criada. A flag --name é utilizada para indicar que a próxima palavra será o nome da rede que será criada. Assim, esse comando criará uma nova rede com o nome net-test.

Se tudo ocorrer corretamente, o resultado do comando será semelhante a imagem abaixo: net_new

3º Passo

O terceiro passo é criar uma aplicação, para isso será executado o comando a seguir:

python3 -m bluebees app new --name app-test --network net-test

A palavra app, representa que o comando será executado no contexto "aplicação". A palavra new, indica que uma nova aplicação será criada. A flag --name é utilizada para indicar que a próxima palavra será o nome da aplicação que será criada. A flag --network é utilizada para indicar que a próxima palavra será o nome da rede que estará associada à aplicação. Assim, esse comando criará uma nova aplicação com o nome app-test, associada a rede net-test(criada no passo anterior).

Se tudo ocorrer corretamente, o resultado do comando será semelhante a imagem abaixo: app_new

4º Passo

O quarto passo verificar o UUID dos dispositivos não-provisionados ativos, para isso será executado o comando a seguir:

python3 -m bluebees device list

A palavra device, representa que o comando será executado no contexto "device". A palavra list, indica que os dispositivos ainda não-provisionados serão listados. Se tudo ocorrer corretamente, o resultado do comando será semelhante a imagem abaixo: device_list

Nesse momento você deverá copiar o UUID do dispositivo que você deseja provisionar. Isto é, o nó que será criado.

5º Passo

O quinto passo é criar um nó, para isso será executado o comando a seguir:

python3 -m bluebees node new --name node-test --network net-test --uuid dddd0000000000000000000000000000

A palavra node, representa que o comando será executado no contexto "nó". A palavra new, indica que um novo nó será criado. A flag --name é utilizada para indicar que a próxima palavra será o nome do nó que será criado. A flag --network é utilizada para indicar que a próxima palavra será o nome da rede que estará associada ao nó. A flag --uuid é utilizada para indicar que a próxima palavra será o UUID do dispositivo que será provisionado (esse valor está em hexadecimal e possui 16 bytes). Deste modo, esse comando criará um novo nó com o nome node-test, associado a rede net-test(criada no segundo passo) e associado ao dispositivo com UUID dddd0000000000000000000000000000.

Se tudo ocorrer corretamente, o resultado do comando será semelhante a imagem abaixo: node_new

6º Passo

O sexto passo é configurar o nó recém criado. Para isso foi criado um arquivo na pasta da ferramenta, como o nome node-config.yml. Esse arquivo é detalhado abaixo:

applications:
  - app-test
models:
  - id: '1000' # generic onoff server
    publication: '6933'
    subscription: ['C933']
    application: app-test
  - id: '1002' # generic level server
    publication: '6933'
    subscription: ['C934']
    application: app-test

Nesse arquivo é adicionado a aplicação app-test ao nó, ao modelo 0x1000 do nó e ao modelo 0x1002 do nó. O modelo 0x1000 é configurado para publicar no endereço 0x6933 e se inscrever no endereço 0xC933``. O modelo 0x1002é configurado para publicar no endereço0x6933e se inscrever no endereço0xC934```. O comando que deve ser executado é o seguinte:

python3 -m bluebees node config --name node-test --config node-config.yaml

A palavra node, representa que o comando será executado no contexto "nó". A palavra config, indica que um nó será configurado. A flag --name é utilizada para indicar que a próxima palavra será o nome do nó que será configurado. A flag --config é utilizada para indicar o arquivo de configuração que será utilizado.

Se tudo ocorrer corretamente, o resultado do comando será semelhante a imagem abaixo: node_config