Commit Graph

351 Commits

Author SHA1 Message Date
William Belcher dfcc18f7e3
Fix: sfu player would try subscribing when sfu disconnected 2023-03-22 13:16:31 +10:00
Luke Bermingham 57e9ed9da8
Merge pull request #170 from EpicGames/UE5.2
Bring 5.2 changes to master
2023-03-21 16:53:29 +10:00
Luke Bermingham fa79612282
Bump Github release of 5.2 infra to 0.4.0
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-21 16:46:05 +10:00
Luke Bermingham 61ab8a9226
Update UE version printed when Cirrus starts
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-21 16:45:15 +10:00
Luke Bermingham 5c87ac546a Bump ui-library to 0.2.0 and force NPM publish 2023-03-21 16:40:17 +10:00
Luke Bermingham f6bdbcf442 Bump versions in package-lock.json for ui-library 2023-03-21 16:38:55 +10:00
Luke Bermingham 9ede4260a4
Bump lib-pixelstreamingfrontend-ui to 0.2.0 update dep versions
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-21 16:36:05 +10:00
Luke Bermingham d5dd404858
Bump lib-pixelstreamingfrontend to 0.3.0
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-21 16:32:48 +10:00
Luke Bermingham 41a2040faa
Merge pull request #169 from EpicGames/master
Update 5.2 from master
2023-03-21 13:46:31 +10:00
Luke Bermingham fec1837878
Merge branch 'UE5.2' into master 2023-03-21 13:45:32 +10:00
hmuurine d1ebee71ae
Downgrade ts-jest and jest to support older Node version (#168)
* Downgrade ts-jest and jest to support older Node version

* bumbed ts-jest to 27.1.5 (latest 27.x.y)
2023-03-20 21:56:00 +10:00
Luke Bermingham 02f6642300
Update feature.md
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-20 14:58:02 +10:00
Luke Bermingham b25e174113
Added pull request template
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-20 14:28:28 +10:00
Luke Bermingham 815b0cb13b
Added feature template 2023-03-20 14:15:48 +10:00
Luke Bermingham 9687fbe414
Add bug report issue template 2023-03-20 14:10:20 +10:00
Luke Bermingham 4dc543947b
Update SECURITY.md
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-20 13:58:02 +10:00
Luke Bermingham f41862a016
Update SECURITY.md
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-20 13:57:00 +10:00
Luke Bermingham 4b80844f35
Create SECURITY.md
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-20 13:27:53 +10:00
William Belcher 9f124b2592
Fix: controller indices from multiple peers would clash (#165)
* Fix: controller indices from multiple peers would clash

* Free used controller id's when unregistering gamepad events
2023-03-20 12:35:25 +10:00
Marcin Biegun d63d942c1f
Pass HTTPS certificate locations with Cirrus configuration file (#149)
Co-authored-by: Marcin Biegun <marcin@spacecatlabs.com>
2023-03-20 11:03:18 +10:00
mcottontensor acd4cd26d8
Fixing security warnings. (#163)
* Putting ssl cert auth behind a config flag `DisableSSLCert`

* Removing bad password storing example.

* Handling exceptions on dyanmic method calls

* Adding rate limiting to http requests (60 requests per min)

* Fixing missing csrf security warning.

* Adding warning message to disabled self signed certs
2023-03-20 09:47:56 +10:00
Luke Bermingham ac51bb0d9d
Create a new frontend for the Pixel Streaming Demo showcase project (#158)
* Realigned sidebar character example

* Make images a bit bigger for characters

* Added showcase html page with showcase.ts

* Add styling of button/images

* Added onExampleChanged function

* Added ability from dropdown to toggle examples

* Add another example with buttons to change resolution.

* Added stub for character selection function.

* Added skin 3 button

* Bump package-lock files for library to use latest version

* Added resolution changing button and hooked them up to UE project

* Added section for sending console command

* Added functional button to the console/command example.

* Moved example drop down to be in sidebar.
2023-03-20 09:18:02 +10:00
hmuurine efd1fbc3ff
Minimal sample React implementation (#159)
* Minimal sample React implementation

* Added step-by-step comments explaining how PixelStreamingWrapper works
2023-03-18 11:04:50 +10:00
Luke Bermingham b731768f15
Update README.md
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-17 16:39:20 +10:00
Luke Bermingham 73830cd8fe
Update README.md
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-17 16:34:17 +10:00
hmuurine f58b32cae6
Unit tests for library (#156)
* add unit test coverage reports to gitignore

* add jest dependencies

* add jest config

* add Config unit tests

* add AFKController unit tests

* mock video codecs list

* test for PixelStreaming SettingsChangedEvent

* mock/unmock functions for RTCRtpReceiver

* mock WebSocket

* test for PixelStreaming.connect()

* unit test for disconnect

* unit tests for reconnect

* added eventemitter events in tests

* test that listStreamers is sent on WS connect

* mock RTCPeerConnection and RTCIceCandidate

* test webRtcConnected event

* test RTCPeerConnect close

* fixed variable name for consistency

* check for navigator.getGamepads before calling it

* mock addTransceiver, createAnswer, getTransceivers, setRemoteDescription

* test for receiving a connection offer

* add null checks for peerConnection since it might be null if connectiong closed

* mock addIceCandidate

* test for receiving ICE candidate message

* mock setLocalDescription, getStats

* test for statistics

* test webRtcDisconnected event

* mock RTCDataChannel and RTCDataChannelEvent

* test for dataChannelOpen event

* mock RTCTrackEvent

* mock MediaStream and MediaStreamTrack

* mock video element play()

* test playStream and playStreamRejected events

* mock video readyState

* mock WebRTC data channel send()

* test emitCommand

* test emitUIInteraction

* test emitConsoleCommand

* Jest mock for HTMLMediaElement.play()

* check boolean return value of all emit* commands

* test dataChannelClose event

* added TextEncoder and TextDecoder to Jest globals

* mock datachannel onmessage

* test UE -> browser data channel message

* clarified in test description that we are using a Response message

* extracted commonly used setup steps as util functions

* triggerSdpOffer -> triggerSdpOfferMessage for consistency

* run unit tests as a Github action

* Revert "break one of the tests to test the GH action"

This reverts commit 05f5742cf0.

* run tests only if files changed under Frontend/library

* added unit test run instructions to README.md
2023-03-17 12:41:05 +10:00
Luke Bermingham dbc8dd1600
Merge pull request #154 from EpicGames/dependabot/npm_and_yarn/Frontend/implementations/EpicGames/webpack-5.76.0
Bump webpack from 5.75.0 to 5.76.0 in /Frontend/implementations/EpicGames
2023-03-16 09:28:10 +10:00
Luke Bermingham 823a8579c4
Merge pull request #155 from EpicGames/dependabot/npm_and_yarn/Frontend/ui-library/webpack-5.76.0
Bump webpack from 5.75.0 to 5.76.0 in /Frontend/ui-library
2023-03-16 09:27:31 +10:00
dependabot[bot] 43813ab6a4
Bump webpack from 5.75.0 to 5.76.0 in /Frontend/ui-library
Bumps [webpack](https://github.com/webpack/webpack) from 5.75.0 to 5.76.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.75.0...v5.76.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-15 23:26:19 +00:00
dependabot[bot] 8f8466a4f2
Bump webpack in /Frontend/implementations/EpicGames
Bumps [webpack](https://github.com/webpack/webpack) from 5.75.0 to 5.76.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.75.0...v5.76.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-15 23:26:18 +00:00
Luke Bermingham d8e3098681
Merge pull request #153 from EpicGames/dependabot/npm_and_yarn/Frontend/library/webpack-5.76.0
Bump webpack from 5.75.0 to 5.76.0 in /Frontend/library
2023-03-16 09:25:37 +10:00
dependabot[bot] cffff56755
Bump webpack from 5.75.0 to 5.76.0 in /Frontend/library
Bumps [webpack](https://github.com/webpack/webpack) from 5.75.0 to 5.76.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.75.0...v5.76.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-15 10:53:22 +00:00
Luke Bermingham 71bf274877
Merge pull request #145 from EpicGames/Slash-Directions
Update README.md
2023-03-09 11:16:47 +10:00
Michael Wallace 3081cf4825
Update README.md
Fix incorrect slash direction on some links.

Signed-off-by: Michael Wallace <90592038+MWillWallT@users.noreply.github.com>
2023-03-09 12:16:10 +11:00
Luke Bermingham 9de209d3ab
Merge pull request #144 from EpicGames/master
Improve input unregistering
2023-03-09 10:46:59 +10:00
Luke Bermingham 2476233f94
Merge pull request #141 from hmuurine/clean-dangling-event-handlers
Clean up on Pixel Streaming session disconnect
2023-03-09 10:41:10 +10:00
Luke Bermingham 857e5f6f2b
Merge pull request #143 from EpicGames/UE5.2
Bring 5.2 changes to master
2023-03-09 10:15:38 +10:00
Luke Bermingham 7a9ed962fd Bump github release version 2023-03-08 14:58:02 +10:00
Luke Bermingham a3feb7788f Bump peer dependency version and package-lock.json of ui-library to use library version 0.2.0 2023-03-08 14:54:09 +10:00
Luke Bermingham 09eff4809a
Make ui-library use library version 0.2.0
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-08 14:31:18 +10:00
Luke Bermingham 8f246b121d
Bump ui-library to 0.1.0
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-08 14:27:35 +10:00
Luke Bermingham 0c35731742
Update package.json
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-08 14:08:42 +10:00
Luke Bermingham 1da723d438
Merge pull request #142 from EpicGames/master
Update 5.2 from master
2023-03-08 14:02:22 +10:00
Hannes Muurinen 684ab66b82
add null checks to not fail if calling disconnect before connect 2023-03-07 18:01:42 +02:00
Hannes Muurinen e18ba37e5b
unregister user input event handlers on disconnect 2023-03-07 18:01:42 +02:00
Hannes Muurinen 45564b1b9b
exit pointer lock when cleaning up locked mouse handler 2023-03-07 18:01:42 +02:00
Hannes Muurinen a744381f33
clearTimeout, not clearInterval 2023-03-07 18:01:42 +02:00
hmuurine 95f2bef334
Enable/disable user input devices (#136)
* move registerLockedMouseEvents and registerHoveringMouseEvents to MouseController

* add a utility that keeps track of registered event handlers for easy unregistering

* fix stream handler name MoveMouse -> MouseMove

* support unregistering gamepad events

* support unregistering keyboard events

* support unregistering mouse events

* support unregistering touch events

* unregister input event handlers before registering new ones

* configurable keyboard/mouse/touch/gamepad support

* start/stop game pad polling on config enable/disable

* UI: add user input config to Settings menu

* added config flag EnableXRControllerInput for enabling/disabling XR controller messages

* added the new config flags to documentation

* smaller version of the settings panel image to better match the old image resolution

* Simplify input flag naming. Separate input toggles into new section in the settings panel
2023-03-06 17:32:58 +10:00
hmuurine 9de61bfcea
Api support for UE communication (#132)
* Expose sendUIInteraction function

* Update documentation

* Support sending console commands

* Rename sendUIInteraction -> emitUIInteraction to match UE 5.1 function naming

* Rename sendConsoleCommand -> emitConsoleCommand to match UE 5.1 function naming

* API for registering UE response listener

* Mark addResponseEventListener and removeResponseEventListener public to match other API functions
2023-03-06 11:01:51 +10:00
Luke Bermingham e3ae77b2fa
Update readme.md
Signed-off-by: Luke Bermingham <1215582+lukehb@users.noreply.github.com>
2023-03-03 12:59:12 +10:00