Difference between revisions of "How to use UBUS commands for Bluetooth device scanning / pairing"

From Teltonika Networks Wiki
Line 3: Line 3:
 
----
 
----
 
The '''ubus''' command line tool allows to interact with the '''ubusd''' server (with all currently registered services). It's useful for investigating/debugging registered namespaces as well as writing shell scripts. For calling procedures with parameters and returning responses it uses the user-friendly JSON format. Below is an '''Help output''' of this command:
 
The '''ubus''' command line tool allows to interact with the '''ubusd''' server (with all currently registered services). It's useful for investigating/debugging registered namespaces as well as writing shell scripts. For calling procedures with parameters and returning responses it uses the user-friendly JSON format. Below is an '''Help output''' of this command:
 
+
...
 
  root@Teltonika-RUTX11:~# ubus
 
  root@Teltonika-RUTX11:~# ubus
 
  Usage: ubus [<options>] <command> [arguments...]
 
  Usage: ubus [<options>] <command> [arguments...]
Line 21: Line 21:
 
  - wait_for <object> [<object>...]      Wait for multiple objects to appear on ubus
 
  - wait_for <object> [<object>...]      Wait for multiple objects to appear on ubus
 
  - monitor                              Monitor ubus traffic
 
  - monitor                              Monitor ubus traffic
 
+
...
 
----
 
----
 
Steps to use '''UBUS''' for Bluetooth on RUTX:
 
Steps to use '''UBUS''' for Bluetooth on RUTX:
Line 29: Line 29:
 
* Login using [[CLI]] and run '''scan.start''' command to start Bluetooth scan:
 
* Login using [[CLI]] and run '''scan.start''' command to start Bluetooth scan:
  
  ---
+
  ...
 
  ubus call blesem scan.start
 
  ubus call blesem scan.start
  ---
+
  ...
  
 
* To see scan results, use command '''scan.result''':
 
* To see scan results, use command '''scan.result''':
  
  ---
+
  ...
 
  ubus call blesem scan.result
 
  ubus call blesem scan.result
  ---
+
  ...
  
 
You should see similar results format like this:
 
You should see similar results format like this:
  
   
+
  ...
 
  {  
 
  {  
 
       "scanning": 0,  
 
       "scanning": 0,  
Line 52: Line 52:
 
       ]  
 
       ]  
 
  }
 
  }
   
+
  ...
  
 
Skanavimas vyksta apie 30sek., todėl su „scanning“ rodoma ar vis dar yra vykdomas skanavimas. Šiuo atveju, galima užklausinėti „scan.result“ kol „scanning“ = 1.
 
Skanavimas vyksta apie 30sek., todėl su „scanning“ rodoma ar vis dar yra vykdomas skanavimas. Šiuo atveju, galima užklausinėti „scan.result“ kol „scanning“ = 1.

Revision as of 12:05, 24 April 2020

Main Page > General Information > Configuration Examples > Hardware application > How to use UBUS commands for Bluetooth device scanning / pairing

This page contains instructions on how to use CLI / SSH command UBUS for scanning and pairing new Bluetooth devices on RUTX.


The ubus command line tool allows to interact with the ubusd server (with all currently registered services). It's useful for investigating/debugging registered namespaces as well as writing shell scripts. For calling procedures with parameters and returning responses it uses the user-friendly JSON format. Below is an Help output of this command:

...
root@Teltonika-RUTX11:~# ubus
Usage: ubus [<options>] <command> [arguments...]
Options:
-s <socket>:           Set the unix domain socket to connect to
-t <timeout>:          Set the timeout (in seconds) for a command to complete
-S:                    Use simplified output (for scripts)
-v:                    More verbose output
-m <type>:             (for monitor): include a specific message type
                       (can be used more than once)
-M <r|t>               (for monitor): only capture received or transmitted traffic
Commands:
- list [<path>]                        List objects
- call <path> <method> [<message>]     Call an object method
- listen [<path>...]                   Listen for events
- send <type> [<message>]              Send an event
- wait_for <object> [<object>...]      Wait for multiple objects to appear on ubus
- monitor                              Monitor ubus traffic
...

Steps to use UBUS for Bluetooth on RUTX:

  • Enable Bluetooth in Web UI menu Network -> Bluetooth -> General. Click "Save&Apply".
  • Login using CLI and run scan.start command to start Bluetooth scan:
...
ubus call blesem scan.start
...
  • To see scan results, use command scan.result:
...
ubus call blesem scan.result
...

You should see similar results format like this:

...
{ 
      "scanning": 0, 
      "devices": [ 
              { 
                      "name": "RT_T", 
                      "rssi": -72, 
                      "address": "FF:CB:FA:6A:23:CB" 
              } 
      ] 
}
...

Skanavimas vyksta apie 30sek., todėl su „scanning“ rodoma ar vis dar yra vykdomas skanavimas. Šiuo atveju, galima užklausinėti „scan.result“ kol „scanning“ = 1.