Actionscript Tracking: NetConnection
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
A promisiong Rust project that can help Ruffle to integrate the Net classes https://github.com/KallDrexx/mmids
Also https://github.com/KallDrexx/rust-media-libs
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
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".
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.
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