QueueCast
Amazon SQS queues and Amazon SNS notifications for Blueprints and C++: send, receive and listen to queue messages, publish to topics, phones and devices, and register pl…
Highlights
All 15 features →QueueCast connects your game to Amazon Simple Queue Service (SQS) and Amazon Simple Notification Service (SNS) without a separate backend SDK or web layer. Send bug reports, telemetry, match results and jobs to queues your backend processes, listen to a queue for server events, publish notifications and keep your players' devices registered for push.
Send Message puts a message into a queue with string attributes, an optional delay and FIFO group and deduplication ids. Send Message Batch sends any number of messages, ten per request, and reports the result of every entry. Receive Messages long-polls a queue and returns messages with their receipt handle, attributes, receive count and sent time. Delete Message, Delete Message Batch and Change Message Visibility finish or postpone the work, Get Queue Url turns names into URLs and caches them, and Get Queue Attributes reports approximate message counts and queue settings.
Listen To Queue keeps long-polling a queue in the background until you stop it and fires On Message on the game thread for every message. It can delete each message after your event ran, retries network errors with a growing pause, stops on errors that need your attention and stops by itself when its world is torn down.
SNS Publish sends a notification to a topic, to a single device through its platform endpoint, or to a phone number as SMS, with message attributes for subscription filters, FIFO topics and per-protocol JSON messages. Register Push Device turns a Firebase Cloud Messaging or APNs token into an SNS platform endpoint and keeps it valid: an existing endpoint is reused, a deleted one is created again and a changed token or a disabled endpoint is updated. Subscribe, Unsubscribe and Set Push Endpoint Enabled manage topic subscriptions and notification opt-outs, and Unwrap SNS Notification reads topic messages that arrive in a queue.
Players get credentials from an Amazon Cognito identity pool: as guests, or signed in with a token from a Cognito user pool, Google, Apple, Facebook or any OpenID provider through Set Login Token. Static keys and the default AWS credential chain are available for development, dedicated servers and tools. Requests run on background worker threads with automatic retries, so the game thread never blocks, and every result arrives back on the game thread. The documentation includes a least-privilege IAM policy for the identity pool role.
QueueCast is part of the Alpha XP AWS collection for Unreal Engine 4.27 and 5.8. It includes the AWS SDK for C++ prebuilt for Win64, Linux and Android and ships with styled HTML documentation.
Key features
- Send Message: string attributes, delay, FIFO message group and deduplication ids
- Send Message Batch: any number of messages, 10 per request, per-entry success or failure
- Receive Messages: long polling, visibility timeout, attributes, receive count, sent time
- Listen To Queue: continuous long polling with On Message events, auto-delete,
- Delete Message, Delete Message Batch, Change Message Visibility
- Get Queue Url (cached per name, or built from a URL prefix) and Get Queue Attributes
- SNS Publish to topics, platform endpoints (one device) and phone numbers (SMS), with
- Register Push Device: Firebase Cloud Messaging / APNs tokens to SNS endpoints, reused,
- Subscribe, Unsubscribe and Set Push Endpoint Enabled
- Unwrap SNS Notification for topic messages delivered to queues
- Amazon Cognito identity pools for guest and signed-in players (Set Login Token for any
- Static keys (development and servers) and the default AWS credential chain
- Background worker threads, automatic retries with back-off, timeouts, custom endpoints
- Cancellable latent nodes; all results delivered on the game thread
- C++ API with native callbacks
Blueprint & C++ API
Every call is reachable from more than one place — pick the entry point that fits your project:
| Class | Type | Nodes | Use it for |
|---|---|---|---|
| QueueCastLibrary | Function library | 9 | Configuration, identity and message helpers for QueueCast. |
| QueueCastListenAction | Queue Cast Async Action | 1 | Listen To Queue: long-polls a queue until stopped and fires On Message for every message. |
| Async action nodes | Latent Blueprint nodes | 2 | Latent node with success / failure output pins. |
Callable runs when executed · Pure no exec pin, returns a value · LatentAsync finishes later and fires its outputs
QueueCast 2
| Node | Type | Available on | Description |
|---|---|---|---|
| Cancel | Async | Async | Stops waiting for this request: none of its output pins fire any more. On a queue listener this stops listening. |
| Is Finished | Async | Async | True after Cancel was called or the node finished. |
SQS 1
| Node | Type | Available on | Description |
|---|---|---|---|
| Stop Listening | Callable | Queue Cast Async Action | Stops the listener. Messages that were received but not delivered yet return to the queue after their visibility timeout. |
Config 3
| Node | Type | Available on | Description |
|---|---|---|---|
| Set Region(Region: String) | Callable | Static | Switches the AWS region used by every following request. |
| Set Credential Mode(Mode: Queue Cast Credential Mode) | Callable | Static | Overrides the credential mode from the project settings at runtime. |
| Is Configured() → Boolean, Problem | Pure | Static | Checks the settings and returns false with a reason when requests cannot work yet. |
Identity 5
| Node | Type | Available on | Description |
|---|---|---|---|
| Set Login Token(Provider: String, Token: String) | Callable | Static | Signs the player in to the Cognito identity pool with a token from an identity provider. |
| Clear Login Tokens | Callable | Static | Forgets all login tokens and the cached identity (the player becomes a guest again). |
| Set Static Credentials(Access Key Id: String, Secret Access Key: String, Session Token: String) | Callable | Static | Uses these credentials from now on (Static Keys mode), for example temporary keys handed out by your own backend. |
| Get Identity Id() → String | Pure | Static | The Cognito identity id of this player, empty until credentials were resolved once. |
| Make User Pool Provider Name(Region: String, User Pool Id: String) → String | Pure | Static | Builds the identity-pool login key of a Cognito user pool: cognito-idp.<region>.amazonaws.com/<user pool id>. |
SNS 1
| Node | Type | Available on | Description |
|---|---|---|---|
| Unwrap SNS Notification(Body: String) → Boolean, Message, Subject, Topic Arn | Pure | Static | Reads a queue message that an SNS topic delivered to an SQS subscription (without raw message delivery): returns the original message text, subject, topic ARN a… |
Events & delegates
Bind these in Blueprint (drag off the object → Bind Event) or with AddDynamic in C++.
| Event | Parameters | Fires on |
|---|---|---|
| On Success | Result (Queue Cast Send Result), Error (Queue Cast Error) | QueueCastSendAction |
| On Failure | Result (Queue Cast Send Result), Error (Queue Cast Error) | QueueCastSendAction |
| On Completed | Results (Array of Queue Cast Batch Result), Failed Count (Integer) | QueueCastSendBatchAction |
| On Message | Message (Queue Cast Message) | QueueCastListenAction |
| On Error | Error (Queue Cast Error) | QueueCastListenAction |
| On Stopped | Error (Queue Cast Error) | QueueCastListenAction |
Project settings
Configure once under Project Settings › Plugins › QueueCast — values are saved to the project's config .ini, so they travel with the project and your build.
| Setting | Section | Type | What it does |
|---|---|---|---|
| Region | Connection | String | AWS region of your queues, topics and identity pool, for example "us-east-1" or "eu-west-1". |
| Credential Mode | Credentials | Credential Mode | Where request credentials come from. |
| Identity Pool Id | Credentials | String | Cognito identity pool, for example "us-east-1:01234567-89ab-cdef-0123-456789abcdef". |
| Allow Guest Access | Credentials | Boolean | Allow unauthenticated (guest) identities before Set Login Token is called. The pool must allow guest access too. |
| Access Key Id | Credentials | String | Access key for Static Keys mode. Keys saved here end up in DefaultGame.ini - use them for development and servers only. |
| Secret Access Key | Credentials | String | Secret key for Static Keys mode. |
| Allow Static Keys In Shipping | Credentials | Boolean | Static keys are refused in Shipping builds unless this is enabled (for example on a dedicated server). |
| Endpoint Override | Connection | String | Custom endpoint, for example a local emulator such as "http://localhost:4566". Empty = the regional AWS endpoint. |
| Request Timeout Ms | Connection | Integer | Total time a request may take, in milliseconds. |
| Connect Timeout Ms | Connection | Integer | Time allowed to open the connection, in milliseconds. |
| Max Retries | Connection | Integer | Automatic retries with exponential back-off for throttled and transient failures. |
| Worker Threads | Connection | Integer | Worker threads that run requests in the background (requests never block the game thread). |
| Verify SSL | Connection | Boolean | Verify TLS certificates. Only disable for a local emulator. |
| Log Sdk Warnings | Connection | Boolean | Forward SDK warnings and errors to the Output Log (LogQueueCast). |
| Default Queue | SQS | String | Queue used when a node leaves Queue empty: a queue name ("game-events") or a full queue URL. |
| Queue Url Prefix | SQS | String | Optional. When set, queue names are turned into URLs without a Get Queue Url request: for example "https://sqs.us-east-1.amazonaws.com/123456789012/". |
| Queue Owner Account Id | SQS | String | Optional. AWS account id that owns the queues, when they belong to another account than the credentials. |
| Default Wait Seconds | SQS | Integer | Long-poll time used when a receive node leaves Wait Seconds at -1 (0 - 20). Longer waits mean fewer, cheaper requests. |
| Default Visibility Timeout | SQS | Integer | Visibility timeout used when a receive node leaves it at -1. 0 = the queue's own setting. |
| Listener Max Backoff Seconds | SQS | Integer | Longest pause between two attempts of a queue listener after errors, in seconds (the pause doubles from 1 second). |
| Default Topic Arn | SNS | String | Topic used when SNS Publish leaves Target empty, for example "arn:aws:sns:us-east-1:123456789012:game-news". |
| Platform Application Arn | SNS | String | Platform application used when Register Push Device leaves it empty, for example "arn:aws:sns:us-east-1:123456789012:app/GCM/MyGame" (Firebase Cloud Messaging)… |
Options & enums
| Enum | Values |
|---|---|
| Credential Mode | Cognito Identity Pool Static Keys Default Credential Chain |
Compatibility
One ready-made build per engine version is included in the download — copy the one that matches your project.
| Platform | Supported in |
|---|---|
| Windows | Editor & packaged |
| Linux | Editor & packaged |
| Android | Packaged builds |
| Module | Type | Loading phase |
|---|---|---|
| QueueCast | Runtime | Default |
Technical details
| Code modules | QueueCast (Runtime), QueueCastSdk (External, Source/ThirdParty - prebuilt AWS SDK for C++) |
|---|---|
| Blueprints | 0 · C++ classes: 18 |
| Network replicated | No |
| Development platforms | Windows: Yes, Mac: No, Linux: Yes |
| Target build platforms | Win64, Linux, Android |
| Third-party software | Yes - AWS SDK for C++ 1.11.916 and the AWS Common Runtime libraries (Apache-2.0), in Source/ThirdParty/QueueCastSdk |
| Engine versions | Unreal Engine 4.27 · 5.8 — a build for each is included |
| C++ classes | 18 + 6 structs |
| Blueprint nodes | 12 |
| Events | 6 |
| Documentation | Documentation.html (in the download) |
| Download | QueueCast.zip · 35.9 MB |
| Version | v1.0.0 |
What's in the download
| File | What it is |
|---|---|
| QueueCast 4.27.zip | Plugin build for Unreal Engine 4.27 |
| QueueCast 5.8.zip | Plugin build for Unreal Engine 5.8 |
| Documentation.html | Documentation (open in a browser) |
Quick start
- Unzip the download and pick the build that matches your engine (4.27 · 5.8).
- Copy the QueueCast folder into your project's Plugins/ folder (create it if needed).
- Open the project, enable QueueCast under Edit › Plugins and restart the editor.
- Fill in Project Settings › Plugins › QueueCast.
- Right-click in any Blueprint graph and search QueueCast — or include the public headers from C++.
- Package for your target platform (Windows, Linux, Android).
Good to know
Built for Unreal Engine 4.27 and 5.8. Requires an AWS account; SQS, SNS (including SMS and mobile push delivery) and Cognito usage is billed by AWS. On Linux and Android the SDK uses the engine's libcurl and OpenSSL and the engine's certificate store. On Win64 the SDK is one DLL with a plugin-specific name, so QueueCast can be installed next to other AWS-based plugins. Never ship long-term access keys in a game client: use a Cognito identity pool for players, give its role only the queues and topics your game needs, and treat messages sent by game clients as untrusted input. Developed and maintained by Alpha XP.
Everything included
- Send Message: string attributes, delay, FIFO message group and deduplication ids
- Send Message Batch: any number of messages, 10 per request, per-entry success or failure
- Receive Messages: long polling, visibility timeout, attributes, receive count, sent time
- Listen To Queue: continuous long polling with On Message events, auto-delete,…
- Delete Message, Delete Message Batch, Change Message Visibility
- Get Queue Url (cached per name, or built from a URL prefix) and Get Queue Attributes…
- SNS Publish to topics, platform endpoints (one device) and phone numbers (SMS), with…
- Register Push Device: Firebase Cloud Messaging / APNs tokens to SNS endpoints, reused,…
- Subscribe, Unsubscribe and Set Push Endpoint Enabled
- Unwrap SNS Notification for topic messages delivered to queues
- Amazon Cognito identity pools for guest and signed-in players (Set Login Token for any…
- Static keys (development and servers) and the default AWS credential chain
- Background worker threads, automatic retries with back-off, timeouts, custom endpoints…
- Cancellable latent nodes; all results delivered on the game thread
- C++ API with native callbacks
Platforms
Requirements
- Unreal Engine 4.27 and 5.8
- Develop on Windows (Win64)
- Blueprints and C++
In the download
Personal
One non-commercial project
- 1 activation seat
- 1 year of updates
- One end product
- Non-commercial use
- Community support
- 14-day refund window
Commercial
Ship paid products
- 5 activation seats
- 1 year of updates
- One paid end product
- Unlimited end users
- Priority support
- Source files
- 14-day refund window
Extended
Resell & white-label
- Unlimited activation seats
- Lifetime updates
- Unlimited end products
- White-label & resell
- 1-hour SLA
- Seat-free team use
- 14-day refund window
One purchase per product, no subscription. Each licence comes with a signed key — 1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended. Paid licences can be refunded within 14 days from your order page.
- v1.0.0Latest
- Unreal Engine 4.27 and 5.8
- Blueprint and C++ API, HTML documentation
Be the first to review QueueCast — reviews come from customers who bought it, so every one is a verified purchase.
Frequently asked
How do I get the files after paying?
Straight after checkout you land on your order page with the download button and your licence key. A receipt is emailed to you, and every order stays in My library.
Which licence do I need?
Personal — One non-commercial project. Commercial — Ship paid products. Extended — Resell & white-label. The Licences tab compares them side by side.
On how many devices can I activate it?
1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended.
How long do I get updates?
Personal: 1 year of updates, Commercial: 1 year of updates, Extended: lifetime updates, counted from your purchase.
Can I get a refund?
Yes — paid licences can be refunded within 14 days, straight from your order page.
Is the download safe?
The file was scanned with ClamAV when it was published. Its SHA-256 checksum is listed under Features → In the download, so you can verify the file you receive.
Do I need an account?
No. Checkout only needs your email. Signing in keeps all your purchases, keys and downloads together in My library.
More like this
AudioLens
Real-time audio analysis: FFT spectrum, onset and beat detection, and a full set of time- and frequency-domain descriptors..
★★★★★ No reviews yetTTechHarbour$14.00BlueprintTCP
BlueprintTCP lets you connect to any TCP server and exchange data entirely from Blueprints — no C++ and no networking boilerplate.
★★★★★ No reviews yetTTechHarbour$12.99BluetoothLink
Bluetooth Low Energy for Unreal - scan, connect, read, write and subscribe to BLE devices on Android and iOS.
★★★★★ No reviews yetTTechHarbour$11.99ClusterLink
SocketCluster realtime client for Unreal - pub/sub channels, auth engine and JSON codec, usable from Blueprints.
★★★★★ No reviews yetTTechHarbour$11.99