ruffle icon indicating copy to clipboard operation
ruffle copied to clipboard

Actionscript Tracking: NetConnection

Open Dinnerbone opened this issue 5 years ago • 6 comments

This is the tracking issue for NetConnection in AVM1. We will check off each item of progress as appropriate, and fill in any relevant or missing information as we continue development of Ruffle.

Legend

Each checkbox is independent of another. It's entirely possible for something to be tested but not exist yet, or for us to believe that it's completely functional but we haven't made enough tests to prove it.

"Property Exists"

This means the item exists, but may not necessarily be fully implemented.

"Has Test Coverage"

This means that we believe that we have a good test coverage of this item, regardless of if those tests pass. It's okay to have tests available but not implement the item yet.

"Completely Functional"

This means we believe that the item is completely implemented, and no more work needs to be done towards making it functional.

NetConnection

Constructors

NetConnection()

  • [x] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

Properties

isConnected : Boolean

  • [x] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

protocol : String

  • [x] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

uri : String

  • [x] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

Methods

addHeader()

  • [ ] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

call(remoteMethod, resultObject)

  • [x] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

close()

  • [x] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

connect(targetURI)

  • [x] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

onResult(infoObject)

  • [ ] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

onStatus(infoObject)

  • [ ] Property Exists
  • [ ] Has Test Coverage
  • [ ] Completely Functional

Dinnerbone avatar Jan 11 '20 22:01 Dinnerbone

A promisiong Rust project that can help Ruffle to integrate the Net classes https://github.com/KallDrexx/mmids

ROBERT-MCDOWELL avatar May 23 '22 16:05 ROBERT-MCDOWELL

Also https://github.com/KallDrexx/rust-media-libs

ROBERT-MCDOWELL avatar Jul 03 '22 22:07 ROBERT-MCDOWELL

http3 webtransport accepts datagrams UDP under certain security conditions. maybe it's a nice way to build RTMFP on the top of it https://github.com/w3c/webtransport?tab=readme-ov-file

ROBERT-MCDOWELL avatar Feb 25 '24 22:02 ROBERT-MCDOWELL

http3 webtransport accepts datagrams UDP under certain security conditions.

~~RTMP protocol is using TCP unless specifically asked for UDP transport, maybe a simple websocket with a middleware on the server would do the trick? (https://en.wikipedia.org/wiki/Real-Time_Messaging_Protocol)~~

Nevermind, didn't read the "FP".

ntoskrn avatar May 11 '24 11:05 ntoskrn

yeah it's about RTMFP, peer 2 peer, multicast and unicast protocol based on UDP datagramm, much butter than TCP avoiding congestion and accepting bits error and non blocking the streaming.

ROBERT-MCDOWELL avatar May 11 '24 11:05 ROBERT-MCDOWELL

an interesting option for ruffle dev team would be to follow the webassembly WASI community repo, working about system calls from the web browser in a total secure manner. https://github.com/WebAssembly/WASI

ROBERT-MCDOWELL avatar May 11 '24 12:05 ROBERT-MCDOWELL