Skip to content

Using The Broker Client Example

Invoking the Broker Client API is a two-step procedure, where as a first step, the Broker Client Example is built. The second step consists of running either a prebuilt PCoIP binary, or a prebuilt AWS binary.

Finding the Latest Information

While we make every attempt to keep this topic current, the README file available along with the Broker Client example contains the latest information.

Code is an API Demonstration Only

The sample session client, described in the following sections, demonstrates a simple connection scenario using the supplied broker_client_library. The example unrealistically assumes that all requests and calls succeed as expected, and performs only basic error handling. An actual client implementation is likely to be far more complex; for example, you will need to handle failed broker certificate verification, account for other authentication steps beyond a simple user ID and password combination, and any other circumstances dictated by your system requirements.

The Broker Client API Example Sequence

This section describes how the broker client API example implements the PCoIP session sequence. It also provides an overview of invoking and using the executable session client.

Custom Broker Client Library Implementations

Anyware clients interact with PCoIP-compatible brokers and Anyware agents using an abstraction layer called a broker client library. The following example uses the supplied broker client library. You may, however, choose to write your own broker client library to meet specific requirements, or use a third-party broker library, which does not use the PCoIP Broker Protocol. Refer to the PCoIP® Connection Broker Protocol Specification for details on how to design and implement your own connection broker.

Installing the Client SDK

  1. Install the latest Anyware Software Client. For more information see the topic "Installing the Anyware Software Client for Windows" in the Administrators' Guide.

  2. Download the latest Windows SDK.

  3. To install the SDK, extract the contents of the PCoIPSoftClientSDK folder to a location of your preference.

Running the Prebuilt Anyware Client Binary

This example uses the supplied credentials to first establish a PCoIP session and then launch the Anyware Software Client. The Anyware Software Client thus launched, connects to the remote agent.

Location of the login_info File

The login_info.txt file is available in the following location: /PCoIPSoftClientSDK/Examples/broker_client_example

  1. Open the login_info.txt file.

  2. Add the remote Anyware agent credentials in the format "FQDN domain username password hostname", where,

    • FQDN: The address of an HP Anyware broker.
    • domain: The domain that the host machine is on.
    • username: The username of the account you are connecting to.
    • password: The plain text password of the account you are connecting to. The password cannot contain spaces.

    Example:

        desktop.example.com adomain.local foouser barpassword bazmacpro01
    
  3. Launch the example from a Terminal session by running the following commands:

        <install-location>\pcoip-client-sdk_23\bin\broker_client_example.exe -l -i 
    
       <install-location>\pcoip-client-sdk_23\examples\broker_client_example\login_info.txt
    

Running the Prebuilt AWS Example Binary

This topics contains instructions for running the AWS example binary that is packaged along with the Client SDK. The example uses credentials that you provide to first establish a PCoIP session and then launch the Anyware Software Client. The Anyware Software Client thus launched, connects to the remote agent.

Location of the login_info_aws File

The login_info_aws.txt file can be found in the following location: /PCoIPSoftClientSDK/Examples/broker_client_example.

  1. Open the login_info_aws.txt file.

  2. Add the remote Amazon WorkSpace credentials in the format "aws_registration_code domain username password token_or_password resource_name", where,

    • aws_registration_code: The registration code for Amazon WorkSpace.
    • domain: The domain that the host machine is on.
    • username: The username of the account you are connecting to.
    • password: The plain text password of the account you are connecting to. The password cannot contain spaces.
    • token_or_password: The authentication token or password.
    • resource_name: The name of the resource to connect to.

    Example:

        eNgrTX$xa adomain.local foouser barpassword 75539285075371469148082720109113041434163396974558736008282251461494906419802726 aws57864x1
    
  3. Launch the example from a Terminal session by running the following commands:

        <install-location>\pcoip-client-sdk_23\bin\broker_client_example.exe -l -i 
    
       <install-location>\pcoip-client-sdk_23\examples\broker_client_example\login_info_aws.txt
    

Building the Broker Client Example

Custom Broker Client Library Implementations

After you complete step 6, the build/ directory will contain the built examples as EXE files, which you can launch from the command line or double click, depending on what you have built.

  1. From the PCoIPSoftClientSDK folder, use the cd command to change the directory to broker_client_example.

  2. Create a directory called build inside the broker_client_example folder by running the following command:

    mkdir build
    
  3. Change the directory to build by using the cd command.

    cd build
    
  4. Configure the SDK example by running the following command:

    cmake -G Xcode ..
    
  5. Build the example by running the following command:

    cmake --build
    
  6. Ensure that the CMakeLists.txt file present inside the directory has the path to the SDK directory appended to CMAKE_PREFIX_PATH. This allows the installed version of cmake to locate the cmake modules for finding the dependencies:

    list(APPEND CMAKE_PREFIX_PATH "localpath/to/sdk/")
    
    find_package(PCoIPSoftClientSDK REQUIRED)
    
  7. Link your application to the core library using the CMake command:

    target_link_libraries(your_application PRIVATE PCoIPSoftClientSDK:pcoip_core)
    
  8. Use the command in step 7 to link other libraries.