### Method

# CM Room send_file_async

#### Declaration [src]

    const char*
    cm_room_send_file_async (
      CmRoom* self,
      GFile* file,
      const char* body,
      GFileProgressCallback progress_callback,
      gpointer progress_user_data,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description [src]

Send a file.

Run `cm_room_send_file_finish()` to get the result.

This method completes asynchronously. Use `cm_room_send_file_finish()` inside the `GAsyncReadyCallback` to obtain the result of the operation.

#### Parameters

`file`

  Type: `GFile`

  No description available.

  The data is owned by the caller of the method.

`body`

  Type: `const char*`

  No description available.

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

`progress_callback`

  Type: `GFileProgressCallback`

  The callback to run when ready.

`progress_user_data`

  Type: `gpointer`

  User data for `progress_callback`.

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

`cancellable`

  Type: `GCancellable`

  A `GCancellable`.

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

`callback`

  Type: `GAsyncReadyCallback`

  The callback to run when ready.

  The argument can be `NULL`.

`user_data`

  Type: `gpointer`

  User data for `callback`.

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

#### Return value

Type: `const char*`

No description available.

The returned data is owned by the instance.
The value is a NUL terminated UTF-8 string.