What the thing is

A Promethist installation is two programs:

UE client

the Unreal application: renders the avatar, runs the conversation, talks to the Promethist backend

on site as a kiosk, or remote as a streaming host

tablet

a web app the UE client serves: the operator’s controls — start/stop a session, pause, volume, mic mute, language, restart, blackout

kiosk only

UE client avatar, full screen tablet operator controls on site, or streamed from elsewhere kiosk only

One name, two guides. This guide says UE client because here you build and package the Unreal application. The Promethist Touch documentation calls the same program the host. From the tablet’s side, what matters is that it holds the truth and answers commands — a name that must keep working even when the program is not Unreal. Same thing.

The tablet is a web app, served by the UE client itself over HTTP on port 8080, controlling it over a WebSocket on port 9010. No web server is involved, and nothing is installed on the tablet device: point a browser at the UE client and you have the tablet. The Promethist Touch repository is that web app.

We say "tablet" throughout because almost every installation uses a touchscreen, though nothing requires one. The WebSocket is the kiosk’s control plane and anything can speak it: a phone, a wall of physical buttons on a microcontroller, a building-management system, your own service. If you build one of those, read "tablet" as "whatever drives the control channel" — the protocol is identical, and this guide remains unchanged.

What the plugin needs from your project

Read this if you are dropping PromethistLink into your own Unreal project. Skip it if you are deploying our build.

The plugin pulls in five engine plugins. Four are hard requirements — the module links against them, meaning the build fails without them rather than quietly doing less. The fifth is genuinely optional and marked so:

Plugin Why

SocketIOClient

the connection to the Promethist backend

required

PixelStreaming2

the streaming bridge

required

WebSocketNetworking

the tablet control channel

required

AudioCapture

the microphone

required

WmfMedia

the local webcam

optional — leave it out and you lose the webcam, nothing else

You also need an agent ref — the identifier of the agent the kiosk talks to. Create an agent in Promethist Studio and it is yours. It is the bare name, e.g. alzaMama; the plugin adds the agent: prefix itself. Pass it to Connect, or let the browser supply it in the page URL as ?agentRef=…. An empty value falls back to default.

The surprise in that list is PixelStreaming2: you need it even for a kiosk that never streams anything. This is not a runtime choice. The code links PixelStreaming2, PixelStreaming2Core and PixelStreaming2Input unconditionally, so a purely local, on-site kiosk must still have the plugin enabled. It simply sits idle. Whether a launch behaves as a local kiosk or a streaming host is decided separately, by whether the command line carries a -PixelStreaming… argument.