### Method

# Soup WebsocketExtension process_outgoing_message

#### Declaration [src]

    GBytes*
    soup_websocket_extension_process_outgoing_message (
      SoupWebsocketExtension* extension,
      guint8* header,
      GBytes* payload,
      GError** error
    )

#### Description [src]

Process a message before it’s sent.

If the payload isn’t changed the given `payload` is just returned, otherwise Glib.Bytes.unref is called on the given `payload` and a new `GBytes` is returned with the new data.

Extensions using reserved bits of the header will change them in `header`.

#### Parameters

`header` | `guint8*`
| The message header.
| The argument will be modified by the function.
`payload` | `GBytes`
| The payload data.
| The instance takes ownership of the data, and is responsible for freeing it.
`error` | `GError **`
| The return location for a `GError*`, or `NULL`.

#### Return value

Returns: | `GBytes`
| The message payload data, or `NULL` in case of error.
| The caller of the method takes ownership of the data, and is responsible for freeing it.