### Function

# Dex dbus_connection_call

since: 0.4

#### Declaration [src]

    DexFuture*
    dex_dbus_connection_call (
      GDBusConnection* connection,
      const char* bus_name,
      const char* object_path,
      const char* interface_name,
      const char* method_name,
      GVariant* parameters,
      const GVariantType* reply_type,
      GDBusCallFlags flags,
      int timeout_msec
    )

#### Description [src]

Wrapper for `g_dbus_connection_call()`.

Available since: 0.4

#### Parameters

`connection`

  Type: `GDBusConnection`

  A `GDBusConnection`.

  The data is owned by the caller of the function.

`bus_name`

  Type: `const char*`

  A unique or well-known bus name or `NULL` if `connection` is not a message bus connection.

  The argument can be `NULL`.
  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`object_path`

  Type: `const char*`

  Path of remote object.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`interface_name`

  Type: `const char*`

  D-Bus interface to invoke method on.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`method_name`

  Type: `const char*`

  The name of the method to invoke.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`parameters`

  Type: `GVariant`

  A `GVariant` tuple with parameters for the method or `NULL` if not passing parameters.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`reply_type`

  Type: `GVariantType`

  The expected type of the reply (which will be a tuple), or `NULL`.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`flags`

  Type: `GDBusCallFlags`

  Flags from the `GDBusCallFlags` enumeration.

`timeout_msec`

  Type: `int`

  The timeout in milliseconds, -1 to use the default timeout or `G_MAXINT` for no timeout.

#### Return value

Type: `DexFuture`

A `DexFuture` that resolves to a `GVariant` or rejects with error.

The caller of the function takes ownership of the data, and is responsible for freeing it.