Plugin Documentation

WebSocketPro
WebSocket client for Unreal (libwebsockets)

A WebSocket client built on libwebsockets with header-map connect, contexts, and JSON helpers.

v1.0.0
UE 4.27–5.0+
Win64 · Android
Category Networking
Disabled by default
Alpha XP
WebSocketPro diagram
WebSocketPro — architecture & feature overview

Overview

WebSocketPro opens ws:// and wss:// connections, optionally with custom headers, and exchanges text/JSON. It manages a context and one or more socket objects.

Fork note Module WebSocket was renamed to WebSocketPro for UE 4.27–5.0+ (carefully scoped so the engine's libWebSockets dependency was untouched); a header-map connect and URL helpers were added.
Disabled by default This plugin ships the bundled third-party library libwebsockets and is shipped with "EnabledByDefault": false. Enable it from Edit → Plugins (or set the flag in its .uplugin) once the library builds on your target platform.

Requirements

RequirementDetails
Unreal Engine4.27–5.0+
Bundled librarylibwebsockets (in Source/ThirdParty)
LanguageBlueprints and/or C++
PlatformsWin64 · Android

Installation

  1. Copy the WebSocketPro folder into your project's Plugins/ directory.
  2. C++ projects: regenerate project files and build. Blueprint-only projects can launch the editor directly.
  3. Open Edit → Plugins and confirm WebSocketPro is enabled (it is off by default — turn it on).

Library API

NodeTypeDescription
Create ContextCallableCreate a WebSocket context with options.
Connect / Connect With Header MapCallableOpen a connection, optionally with custom headers.
Json To Object / Object To JsonCallableConvert between JSON strings and UObjects/structs.
Is Secure WebSocket Url / Is Valid WebSocket UrlPureURL checks (wss:// / well-formed).
Build WebSocket UrlPureAssemble ws(s)://host:port/path.

Utility node pack

General-purpose networking utilities added to UWebSocketProBlueprintLibrary — available from Blueprints and C++.

NodeTypeDescription
CRC32 Of BytesPureCRC32 checksum of a byte array.
MD5 Of String / SHA1 Of StringPureHex digests of a UTF-8 string.
Make Guid StringPureNew random GUID (hyphenated).
Now Unix SecondsPureCurrent UTC time as Unix seconds.
Unix Seconds To ISO8601PureUnix seconds → ISO-8601 UTC string.
Format Byte SizePureHuman-readable size, e.g. 1536 → 1.5 KB.
Random TokenPureRandom alphanumeric token (ids, nonces).
XOR Bytes With KeyPureXOR bytes with a repeating key (obfuscation, not encryption).
Is Valid HostnamePureRFC-952/1123-style hostname validation.

Credits

© Alpha XPalphaxp.net. Developed and maintained for UE 4.27–5.0+.