Interface ProvisionAgent1

  • All Superinterfaces:
    org.freedesktop.dbus.interfaces.DBusInterface

    public interface ProvisionAgent1
    extends org.freedesktop.dbus.interfaces.DBusInterface
    File generated - 2020-12-28.
    Based on bluez Documentation: mesh-api.txt.

    Service: unique name
    Interface: org.bluez.mesh.ProvisionAgent1

    Object path:
    freely definable

    Supported properties:
    array{string} Capabilities [read-only]
    An array of strings with the following allowed values:
          "blink"
          "beep"
          "vibrate"
          "out-numeric"
          "out-alpha"
          "push"
          "twist"
          "in-numeric"
          "in-alpha"
          "static-oob"
          "public-oob"
     
    array{string} OutOfBandInfo [read-only, optional]
    Indicates availability of OOB data. An array of strings with the
    following allowed values:
           "other"
           "uri"
           "machine-code-2d"
           "bar-code"
           "nfc"
           "number"
           "string"
           "on-box"
           "in-box"
           "on-paper",
           "in-manual"
           "on-device"
     
    string URI [read-only, optional]
    Uniform Resource Identifier points to out-of-band (OOB)
    information (e.g., a public key)
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void Cancel()
      From bluez documentation:

      This method gets called by the daemon to cancel any existing
      Agent Requests.
      void DisplayNumeric​(String _type, org.freedesktop.dbus.types.UInt32 _number)
      From bluez documentation:

      This method is called when the Daemon has something important
      for the Agent to Display, but does not require any additional
      input locally.
      void DisplayString​(String _value)
      /** From bluez documentation:

      This method is called when the Daemon has something important
      for the Agent to Display, but does not require any additional
      input locally.
      byte[] PrivateKey()
      From bluez documentation:

      This method is called during provisioning if the Provisioner
      has requested Out-Of-Band ECC key exchange.
      org.freedesktop.dbus.types.UInt32 PromptNumeric​(String _type)
      From bluez documentation:

      This method is called when the Daemon requests the user to
      enter a decimal value between 1-99999999.

      The type parameter indicates the input method.
      byte[] PromptStatic​(String _type)
      From bluez documentation:

      This method is called when the Daemon requires a 16 octet byte
      array, as an Out-of-Band authentication.

      The type parameter indicates the input method.
      byte[] PublicKey()
      From bluez documentation:

      This method is called during provisioning if the local device is
      the Provisioner, and is requestng Out-Of-Band ECC key exchange.
      The Public key is returned to the Daemon that is the matched
      pair of the Private key of the remote device.
      • Methods inherited from interface org.freedesktop.dbus.interfaces.DBusInterface

        getObjectPath, isRemote
    • Method Detail

      • PrivateKey

        byte[] PrivateKey()
        From bluez documentation:

        This method is called during provisioning if the Provisioner
        has requested Out-Of-Band ECC key exchange. The Private key is
        returned to the Daemon, and the Public Key is delivered to the
        remote Provisioner using a method that does not involve the
        Bluetooth Mesh system. The Private Key returned must be 32
        octets in size, or the Provisioning procedure will fail and be
        canceled.

        This function will only be called if the Provisioner has
        requested pre-determined keys to be exchanged Out-of-Band, and
        the local role is Unprovisioned device.
        Returns:
        byte[] - maybe null
      • PublicKey

        byte[] PublicKey()
        From bluez documentation:

        This method is called during provisioning if the local device is
        the Provisioner, and is requestng Out-Of-Band ECC key exchange.
        The Public key is returned to the Daemon that is the matched
        pair of the Private key of the remote device. The Public Key
        returned must be 64 octets in size, or the Provisioning
        procedure will fail and be canceled.

        This function will only be called if the Provisioner has
        requested pre-determined keys to be exchanged Out-of-Band, and
        the local role is Provisioner.
        Returns:
        pubkey byte array
      • DisplayString

        void DisplayString​(String _value)
        /** From bluez documentation:

        This method is called when the Daemon has something important
        for the Agent to Display, but does not require any additional
        input locally. For instance: "Enter "ABCDE" on remote device".
        Parameters:
        _value - message
      • DisplayNumeric

        void DisplayNumeric​(String _type,
                            org.freedesktop.dbus.types.UInt32 _number)
        From bluez documentation:

        This method is called when the Daemon has something important
        for the Agent to Display, but does not require any additional
        input locally. For instance: "Enter 14939264 on remote device".

        The type parameter indicates the display method. Allowed values
        are:
             "blink" - Locally blink LED
             "beep" - Locally make a noise
             "vibrate" - Locally vibrate
             "out-numeric" - Display value to enter remotely
             "push" - Request pushes on remote button
             "twist" - Request twists on remote knob
         
        The number parameter is the specific value represented by the
        Prompt.
        Parameters:
        _type - type
        _number - number
      • PromptNumeric

        org.freedesktop.dbus.types.UInt32 PromptNumeric​(String _type)
        From bluez documentation:

        This method is called when the Daemon requests the user to
        enter a decimal value between 1-99999999.

        The type parameter indicates the input method. Allowed values
        are:
             "blink" - Enter times remote LED blinked
             "beep" - Enter times remote device beeped
             "vibrate" - Enter times remote device vibrated
             "in-numeric" - Enter remotely displayed value
             "push" - Push local button remotely requested times
             "twist" - Twist local knob remotely requested times
         
        This agent should prompt the user for specific input. For
        instance: "Enter value being displayed by remote device".
        Parameters:
        _type - type
        Returns:
        UInt32 - maybe null
      • PromptStatic

        byte[] PromptStatic​(String _type)
        From bluez documentation:

        This method is called when the Daemon requires a 16 octet byte
        array, as an Out-of-Band authentication.

        The type parameter indicates the input method. Allowed values
        are:
             "static-oob" - return 16 octet array
             "in-alpha" - return 16 octet alpha array
         
        The Static data returned must be 16 octets in size, or the
        Provisioning procedure will fail and be canceled. If input type
        is "in-alpha", the printable characters should be
        left-justified, with trailing 0x00 octets filling the remaining
        bytes.
        Parameters:
        _type - type
        Returns:
        byte array
      • Cancel

        void Cancel()
        From bluez documentation:

        This method gets called by the daemon to cancel any existing
        Agent Requests. When called, any pending user input should be
        canceled, and any display requests removed.