# LibTmux::Async::Server#switch_client

- **Module:** LibTmux::Async
- **Package:** libtmux-async
- **Language:** Ruby
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-ruby/blob/c8b839595d5a30e271e3f9be0d0fe811ddb11b7e/gems/libtmux/lib/libtmux/terminal.rb#L34
- **Public owner:** LibTmux::Server#switch_client
- **Page:** https://libtmux.org/en/ruby/v0.1.0/reference/libtmux-async-server-switch_client/

tmux command: [`list-commands`](/en/tmux/latest/manual/list-commands/)

tmux command: [`show-options`](/en/tmux/latest/manual/show-options/)

tmux command: [`switch-client`](/en/tmux/latest/manual/switch-client/)

```
def switch_client: (
  client: ::String,
  session: ::LibTmux::EntityRef,
  ?timeout: ::Numeric,
  ?cancel: untyped
) -> ::LibTmux::CommandResult
```

Resolves the literal selector at dispatch; it is not a client reference.

Behavior contract: Client switching.

## Parameters

- `client` (`::String`)
- `session` (`::LibTmux::EntityRef`)
- `timeout` (`::Numeric`)
- `cancel` (`untyped`)
