(List of methods)
 
(Connect to DG1HT WinMaster)
Line 30: Line 30:
 
Keep in mind these examples are for master id 2501 if used please change N2501 to NXXX for you master.
 
Keep in mind these examples are for master id 2501 if used please change N2501 to NXXX for you master.
 
=== Command line ===
 
=== Command line ===
 
==== Connect to DG1HT WinMaster ====
 
 
<pre>
 
dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
 
  me.burnaway.BrandMeister.invokeCommand string:'DG1HT WinMaster' string:'connect 195.225.116.101:62010 262 1'
 
#                                                                                |-sMater Address  -|  |  |-Mode
 
#                                                                                                        +-Network ID
 
</pre>
 
  
 
==== Connect to C-Bridge ====
 
==== Connect to C-Bridge ====

Revision as of 19:27, 7 January 2021

  • Interface name: me.burnaway.BrandMeister
  • Service path: /me/burnaway/BrandMeister
  • Service name: me.burnaway.BrandMeister.N<Network ID>


List of methods

  • getContextList
  • getContextData
  • removeContext
  • invokeCommand
  • dropCallRoute
  • setStoredValue
  • getStoredValue
  • getStationData
  • getRepeaterData
  • getTerminalData
  • setSpecificValue
  • getDiagnosticData
  • getLockInformation
  • getSubscriptionList
  • getObjectInformation
  • getSystemInformation
  • publishExternalEvent

Full list and descriptions can be retrieved using D-BUS Introspection

Examples

Keep in mind these examples are for master id 2501 if used please change N2501 to NXXX for you master.

Command line

Connect to C-Bridge

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'CBridge CC-CC Link' string:'connect 87.106.84.53'
#                                                                                    |-C-Bridge Address

Connect to D-STAR D-Extra reflector

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'D-Extra Link' string:'connect 250 D XRF250 D xrf250.dstar.su'
#                                                                      Group ID-|  | |-XRF--| |-XRF Address-|
#                                                                     Local Module-+

Connect to WIRES-X Room

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'WIRES-X Link' string:'connect 250 44.11.22.33'
#                                                                       Talkgoup-| |-room

Connect to YSF Reflector

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'YSF Client' string:'connect 250 44.11.22.33 42000'
#                                                                     Group ID-| |-Address   |-Port

Register RP2C gateway

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'RP2C Link' string:'register 2509 gate.dstar.su'
#                                                                    Network ID-| |-Gateway Address

Get list of contexts

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList

  Optional parameters:
    #1 (optional) string:<name> - specific name
    #1 (optional) uint32:<mask> - specific type, where bit 0 - applications, bit 1 - repeaters, bit 2 - networks
    #2 (optional) uint32:<number> - identifier of link

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList uint32:2
  
dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList uint32:2 uint32:250301

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList string:'DG1HT WinMaster'

Get context information

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextData string:'15bb100a-a08e-11e4-9ef2-52540089c90b'
#                                                 |- Context UUID                   -|

Get repeater information

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getRepeaterData string:'15bb100a-a08e-11e4-9ef2-52540089c90b'
#                                                  |- Context UUID                   -|

Clear repeater alarms (IP Site Connect)

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'clear alarms'
#                                                |- Context UUID                   -|

Turn repeating on (IP Site Connect)

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'turn repeater on'
#                                                |- Context UUID                   -|

Turn repeating off (IP Site Connect)

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'turn repeater off'
#                                                |- Context UUID                   -|

Subscribe to DG1HT talking group

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'subscribe 1 262'
#                                                |- Context UUID                   -|               Slot-|  |-Group ID

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'transmit configuration'
#                                              |- Context UUID                   -|

Connect to DG1HT DMR reflector

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.setSpecificValue string:'15bb100a-a08e-11e4-9ef2-52540089c90b' uint32:19 uint32:4016
#                                                   |- Context UUID                   -|                    |- Reflector ID

Subscribe to C-Bridge talking group

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'subscribe 1 1'
#                                                |- Context UUID                   -|            Link ID-| |-Group ID

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'transmit configuration'
#                                                |- Context UUID                   -|

Remove context (disconnect from server / repeater)

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.removeContext string:'15bb100a-a08e-11e4-9ef2-52540089c90b'
#                                                |- Context UUID                   -|

Drop call route

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.dropCallRoute string:'15bb100a-a08e-11e4-9ef2-52540089c90b' uint32:1
#                                                |- Context UUID                   -|   Slot -|

Please note: this method can be applied to channels having channel lock such as repeaters, SmartPTT, etc.

Get subscription list (embedded database)

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.dropCallRoute string:'15bb100a-a08e-11e4-9ef2-52540089c90b' uint32:1
#                                                |- Context UUID                   -|   Slot -|

List contains four numbers per record:

  • slot number
  • call type (e.g. 5 - private voice call, 7 - group voice call)
  • destination ID
  • tag (least significant 32-bits)

Publish (handle) external event

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.publishExternalEvent string:'configuration changed'

PHP

<syntaxhighlight lang="php"> <?php

 $array = array();
 $connection = new DBus(DBus::BUS_SYSTEM, true);
 $proxy = $connection->createProxy("me.burnaway.BrandMeister.N2501", "/me/burnaway/BrandMeister", "me.burnaway.BrandMeister");
 $result = $proxy->getContextList();
 if ((is_object($result)) &&
     (get_class($result) == "DbusArray"))
 {
   $list = $result->getData();
   foreach ($list as $banner)
   {
     $result = $proxy->getContextData($banner);
     if ((is_object($result)) &&
         (get_class($result) == "DbusSet"))
     {
       $set = $result->getData();
       $values = $set[6]->getData();
       $address = $set[4];
       $array[] = array(
         "banner" => $set[0],
         "name" => $set[1],
         "type" => $set[2],
         "number" => $set[3],
         "state" => $set[5],
         "values" => $values);
     }
   }
 }
 $data = json_encode($array);
 if (array_key_exists("callback", $_GET))
 {
   header("Content-Type: application/javascript");
   print($_GET["callback"] . "(" . $data . ")");
 }
 else
 {
   header("Content-Type: application/json");
   print($data);
 }

?> </syntaxhighlight>


List of methods[edit]

Full list and descriptions can be retrieved using D-BUS Introspection

Examples[edit]

Keep in mind these examples are for master id 2501 if used please change N2501 to NXXX for you master.

Command line[edit]

Connect to C-Bridge[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'CBridge CC-CC Link' string:'connect 87.106.84.53'
#                                                                                    |-C-Bridge Address

Connect to D-STAR D-Extra reflector[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'D-Extra Link' string:'connect 250 D XRF250 D xrf250.dstar.su'
#                                                                      Group ID-|  | |-XRF--| |-XRF Address-|
#                                                                     Local Module-+

Connect to WIRES-X Room[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'WIRES-X Link' string:'connect 250 44.11.22.33'
#                                                                       Talkgoup-| |-room

Connect to YSF Reflector[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'YSF Client' string:'connect 250 44.11.22.33 42000'
#                                                                     Group ID-| |-Address   |-Port

Register RP2C gateway[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'RP2C Link' string:'register 2509 gate.dstar.su'
#                                                                    Network ID-| |-Gateway Address

Get list of contexts[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList

  Optional parameters:
    #1 (optional) string:<name> - specific name
    #1 (optional) uint32:<mask> - specific type, where bit 0 - applications, bit 1 - repeaters, bit 2 - networks
    #2 (optional) uint32:<number> - identifier of link

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList uint32:2
  
dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList uint32:2 uint32:250301

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextList string:'DG1HT WinMaster'

Get context information[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getContextData string:'15bb100a-a08e-11e4-9ef2-52540089c90b'
#                                                 |- Context UUID                   -|

Get repeater information[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.getRepeaterData string:'15bb100a-a08e-11e4-9ef2-52540089c90b'
#                                                  |- Context UUID                   -|

Clear repeater alarms (IP Site Connect)[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'clear alarms'
#                                                |- Context UUID                   -|

Turn repeating on (IP Site Connect)[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'turn repeater on'
#                                                |- Context UUID                   -|

Turn repeating off (IP Site Connect)[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'turn repeater off'
#                                                |- Context UUID                   -|

Subscribe to DG1HT talking group[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'subscribe 1 262'
#                                                |- Context UUID                   -|               Slot-|  |-Group ID

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'transmit configuration'
#                                              |- Context UUID                   -|

Connect to DG1HT DMR reflector[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.setSpecificValue string:'15bb100a-a08e-11e4-9ef2-52540089c90b' uint32:19 uint32:4016
#                                                   |- Context UUID                   -|                    |- Reflector ID

Subscribe to C-Bridge talking group[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'subscribe 1 1'
#                                                |- Context UUID                   -|            Link ID-| |-Group ID

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.invokeCommand string:'15bb100a-a08e-11e4-9ef2-52540089c90b' string:'transmit configuration'
#                                                |- Context UUID                   -|

Remove context (disconnect from server / repeater)[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.removeContext string:'15bb100a-a08e-11e4-9ef2-52540089c90b'
#                                                |- Context UUID                   -|

Drop call route[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.dropCallRoute string:'15bb100a-a08e-11e4-9ef2-52540089c90b' uint32:1
#                                                |- Context UUID                   -|   Slot -|

Please note: this method can be applied to channels having channel lock such as repeaters, SmartPTT, etc.

Get subscription list (embedded database)[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.dropCallRoute string:'15bb100a-a08e-11e4-9ef2-52540089c90b' uint32:1
#                                                |- Context UUID                   -|   Slot -|

List contains four numbers per record:

Publish (handle) external event[edit]

dbus-send --system --dest=me.burnaway.BrandMeister.N2501 --type=method_call --print-reply /me/burnaway/BrandMeister \
  me.burnaway.BrandMeister.publishExternalEvent string:'configuration changed'

PHP[edit]

<syntaxhighlight lang="php"> <?php

 $array = array();
 $connection = new DBus(DBus::BUS_SYSTEM, true);
 $proxy = $connection->createProxy("me.burnaway.BrandMeister.N2501", "/me/burnaway/BrandMeister", "me.burnaway.BrandMeister");
 $result = $proxy->getContextList();
 if ((is_object($result)) &&
     (get_class($result) == "DbusArray"))
 {
   $list = $result->getData();
   foreach ($list as $banner)
   {
     $result = $proxy->getContextData($banner);
     if ((is_object($result)) &&
         (get_class($result) == "DbusSet"))
     {
       $set = $result->getData();
       $values = $set[6]->getData();
       $address = $set[4];
       $array[] = array(
         "banner" => $set[0],
         "name" => $set[1],
         "type" => $set[2],
         "number" => $set[3],
         "state" => $set[5],
         "values" => $values);
     }
   }
 }
 $data = json_encode($array);
 if (array_key_exists("callback", $_GET))
 {
   header("Content-Type: application/javascript");
   print($_GET["callback"] . "(" . $data . ")");
 }
 else
 {
   header("Content-Type: application/json");
   print($data);
 }

?> </syntaxhighlight>