### Function

# Gio DBusInterfaceMethodCallFunc

since: 2.26

#### Declaration

    void
    (* GDBusInterfaceMethodCallFunc) (
      GDBusConnection* connection,
      const gchar* sender,
      const gchar* object_path,
      const gchar* interface_name,
      const gchar* method_name,
      GVariant* parameters,
      GDBusMethodInvocation* invocation,
      gpointer user_data
    )

#### Description [src]

The type of the `method_call` function in `GDBusInterfaceVTable`.

`interface_name` may be `NULL` if not specified by the sender, although it’s encouraged for the sender to set it. If unset, and the object has only one method (across all interfaces) matching `method_name`, that method is invoked. Otherwise, behaviour is implementation defined. See the D-Bus specification. It is recommended to return `G_DBUS_ERROR_UNKNOWN_METHOD`.

Available since: 2.26

#### Parameters

`connection`

  Type: `GDBusConnection`

  A `GDBusConnection`.

  The data is owned by the caller of the function.

`sender`

  Type: `const gchar*`

  The unique bus name of the remote caller, or `NULL` if not specified by the caller, e.g. on peer-to-peer connections.

  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 gchar*`

  The object path that the method was invoked on.

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

`interface_name`

  Type: `const gchar*`

  The D-Bus interface name the method was invoked on, or `NULL` if not specified by the sender.

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

`method_name`

  Type: `const gchar*`

  The name of the method that was invoked.

  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.

  The data is owned by the caller of the function.

`invocation`

  Type: `GDBusMethodInvocation`

  A `GDBusMethodInvocation` object that must be used to return a value or error.

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

`user_data`

  Type: `gpointer`

  The `user_data` #gpointer passed to g_dbus_connection_register_object().

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