# Python X2Go (Client) API Documentation (v0.6.1.4)

## x2go.telekinesis module

X2GoTelekinesisClient class - Connect to Telekinesis Server on X2Go Server.

class x2go.telekinesis.X2GoTelekinesisClient(session_info=None, ssh_transport=None, sessions_rootdir='/sbuild-nonexistent/.x2go', session_instance=None, logger=None, loglevel=56)

  Bases: `Thread`

  Telekinesis is a communication framework used by X2Go.

  This class implements the startup of the telekinesis client used by Python X2Go.

  TEKICLIENT_ARGS = ['-setWORMHOLEPORT={port}', '-setX2GOSID={sid}']

    Arguments to be passed to the Telekinesis client.

  TEKICLIENT_CMD = 'telekinesis-client'

    Telekinesis client command. Might be OS specific.

  TEKICLIENT_ENV = {}

    Provide environment variables to the Telekinesis client command.

  has_telekinesis_client()

    Test if the Telekinesis client command is installed on this machine.

    Returns:

      `True` if the Telekinesis client command is available

    Return type:

      `bool`

  ok()

    Check if a proxy instance is up and running.

    Returns:

      Proxy state, `True` for proxy being up-and-running, `False` otherwise

    Return type:

      `bool`

  run()

    Start the X2Go Telekinesis client command. The Telekinesis client command utilizes a Paramiko/SSH based forwarding tunnel (openssh -L option). This tunnel gets started here and is forked into background (Greenlet/gevent).

  start_telekinesis()

    Start the thread runner and wait for the Telekinesis client to come up.

    Returns:

      a subprocess instance that knows about the externally started Telekinesis client command.

    Return type:

      `obj`

  stop_thread()

    End the thread runner and tidy up.