slack-ruby / slack-ruby-client

A Ruby and command-line client for the Slack Web, Real Time Messaging and Event APIs.
MIT License
1.21k stars 216 forks source link

By deprecating faye and celluloid you got rid of the websocket libraries that supported a proxy. #366

Open cyberfox opened 3 years ago

cyberfox commented 3 years ago

I used to be able to connect to Slack's websocket via a proxy, but with the new code it doesn't connect at all.

I, [2021-02-26T16:37:28.739948 #32529]  INFO -- request: POST https://slack.com/api/rtm.start
I, [2021-02-26T16:37:28.740030 #32529]  INFO -- request: Accept: "application/json; charset=utf-8"
User-Agent: "Slack Ruby Client/0.16.0"
Content-Type: "application/x-www-form-urlencoded"
I, [2021-02-26T16:37:43.660278 #32529]  INFO -- response: Status 200
I, [2021-02-26T16:37:43.660412 #32529]  INFO -- response: date: "Sat, 27 Feb 2021 00:37:33 GMT"

It's able to receive the rtm start response, but it can't actually talk to the web socket because async-websocket doesn't support using a proxy to reach a web socket.

Celluloid did, and I was using it. I think faye did. Apparently async-websocket does since...around...0.14.0, roughly a year ago, but this client requires 0.8.0, from about two years ago.

What's preventing an upgrade to a more recent async-websocket?

dblock commented 3 years ago

What's preventing an upgrade to a more recent async-websocket?

I tried a while ago and it didn't just work out of the box. Would love a PR. See #282