webtty icon indicating copy to clipboard operation
webtty copied to clipboard

Webtty on web example does not work?

Open arjenpdevries opened this issue 5 years ago • 17 comments

In both firefox and chrome, I get an error at https://maxmcd.github.io/webtty/, whenever I try to paste the offer message...

InvalidParameterError: Empty or null SDP provided to setLocalDescription
InvalidStateError: setRemoteDescription not called

arjenpdevries avatar Nov 14 '18 16:11 arjenpdevries

Can you paste your offer message?

maxmcd avatar Nov 14 '18 17:11 maxmcd

Actually, if you could email it to me. Email addr is on my github profile.

maxmcd avatar Nov 14 '18 19:11 maxmcd

I will send you one, but really any offer triggers the same problem (it already breaks as soon as I start typing).

arjenpdevries avatar Nov 16 '18 17:11 arjenpdevries

Ping

arjenpdevries avatar Dec 04 '18 14:12 arjenpdevries

I'm having this issue. I have the same error in Firefox and in chrome the error I have is:

OperationError: Failed to execute 'setRemoteDescription' on 'RTCPeerConnection': Failed to parse SessionDescription. Expect line: v= InvalidStateError: Failed to execute 'createAnswer' on 'RTCPeerConnection': PeerConnection cannot create an answer in a state other than have-remote-offer or have-local-pranswer.

This error occurs on key any press - I don't even think it recognizes the entire offer I paste in :/

ViktorBarzin avatar Jan 18 '19 12:01 ViktorBarzin

UPDATE: I looked into the source the issue appears to be a missing decode function in the startSession function:

image

Furthemore, to get it connect to a session you need to put your offer in the url as a hash argument - e.g: http://localhost:8080/#connection_data

image

I'm not sure whether the on("data" function parses the paste correctly since if refreshes the term as soon as a key is pressed which may not be what we need.

ViktorBarzin avatar Jan 18 '19 13:01 ViktorBarzin

The url hash was intended as a convenience, it shouldn't be required.

maxmcd avatar Jan 18 '19 17:01 maxmcd

The encode and decode functions are defined within webassembly. They are here: https://github.com/maxmcd/webtty/blob/master/web-client/src/main.go#L60-L63 (Webassembly can't mutate the global javascript state by itself but wasm_exec.js allows Go to call into the browser context)

If there was an error loading the webassembly those functions would not be available, but assuming success decode and encode should be available on the window object.

Appreciate you looking into this, I still haven't been able to reproduce on my end, will look into it again.

maxmcd avatar Jan 18 '19 17:01 maxmcd

Thanks for the quick reply!

This is my system information, hopefully it helps:

Fedora 29, kernel 4.19.13-300 all up to date. Docker version 18.09.1, build 4c52b90 docker-compose version 1.22.0, build f46880f

Running docker-compose up builds everything successfully (Though it complains about the nodejs version so I had to remove it manually to download the latest):

Successfully built 403eef497ede
Successfully tagged maxmcd/webtty-client:latest
Starting webtty_web-client_1 ... done
Recreating webtty_base_1     ... done
Attaching to webtty_web-client_1, webtty_base_1
webtty_base_1 exited with code 0
web-client_1  | 172.20.0.1 - - [18/Jan/2019:13:39:40 +0000] "GET / HTTP/1.1" 200 263 "-" "curl/7.61.1" "-"

Any clues would be much appreciated, Thanks

ViktorBarzin avatar Jan 18 '19 17:01 ViktorBarzin

Hmmmm... I also run fedora, one system was fc28 the other fc29. Will try to test again soon.

arjenpdevries avatar Jan 18 '19 17:01 arjenpdevries

Hey @arjenpdevries, Any updates? :)

ViktorBarzin avatar Feb 05 '19 11:02 ViktorBarzin

This seems to imply to me that WebTTY is just unusable for some/all users? I can't get an example working and I don't know how to resolve it at all.

rivertam avatar Apr 17 '19 19:04 rivertam

@rivertam maybe!

I can get it working, this issue seems to (weirdly) be limited to Fedora. What kind of issue are you experiencing? (Feel free to open another issue or email me 😃 )

maxmcd avatar Apr 18 '19 02:04 maxmcd

I'm actually experiencing this on Ubuntu with the exact same issues as above. I didn't look into this properly when I commented -- I'll see if there are errors in the console tomorrow.

rivertam avatar Apr 18 '19 03:04 rivertam

Given the report with Ubuntu above, it does not seem related to the linux distribution: https://github.com/maxmcd/webtty/issues/5#issuecomment-484346016

arjenpdevries avatar May 13 '19 07:05 arjenpdevries

Hey guys, mind checking this out with the new release?

maxmcd avatar Jun 14 '19 14:06 maxmcd

If I right-click and paste, instead of trying a ctrl-v in the window, the demo works. Suspect it's just the web client that's having this problem due to changes there.

edit: oops, just saw the fix above. my bad.

ozskywalker avatar Dec 05 '22 04:12 ozskywalker