Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

events.js:87 throw Error('Uncaught, unspecified "error" event.'); ^ Error: Uncaught, unspecified "error" event. at Error (native) #70

Closed
meteormanaged opened this issue Sep 1, 2015 · 3 comments

Comments

@meteormanaged
Copy link

Should you present a bad slack token (or append a blank space to the end of it in an environmental variable), this error is thrown without much context.

@ghost
Copy link

ghost commented Sep 29, 2015

Hi,

I'm not sure how to replicate this, when I try (using the latest release) with a blank string or random text as my token, I see logging to terminal like:

[Mon Sep 28 2015 22:33:08 GMT-0700 (PDT)] INFO Connecting...
Error: invalid_auth
[Mon Sep 28 2015 22:33:08 GMT-0700 (PDT)] INFO Reconnecting in 1000ms
[Mon Sep 28 2015 22:33:09 GMT-0700 (PDT)] INFO Attempting reconnect

... and the client continuously attempts to reconnect with an increasing backoff.

Could you let me know what you did to get the error you're mentioning above to be thrown?

Thanks!

@langerhans
Copy link

I don't think this has anything to do with the token. It happens to a bot of mine randomly but apparently once per day to bi-daily. Can't reproduce it tho 😐 Full stacktrace here:

bot-0 (err): events.js:87
bot-0 (err):       throw Error('Uncaught, unspecified "error" event.');
bot-0 (err):             ^
bot-0 (err): Error: Uncaught, unspecified "error" event.
bot-0 (err):     at Error (native)
bot-0 (err):     at Client.emit (events.js:87:13)
bot-0 (err):     at Client.onMessage (/home/node/playstore-bot/node_modules/slack-client/src/client.js:468:21)
bot-0 (err):     at WebSocket.<anonymous> (/home/node/playstore-bot/node_modules/slack-client/src/client.js:140:24)
bot-0 (err):     at WebSocket.emit (events.js:110:17)
bot-0 (err):     at Receiver.self._receiver.ontext (/home/node/playstore-bot/node_modules/slack-client/node_modules/ws/lib/WebSocket.js:697:10)
bot-0 (err):     at Receiver.opcodes.1.finish (/home/node/playstore-bot/node_modules/slack-client/node_modules/ws/lib/Receiver.js:397:14)
bot-0 (err):     at Receiver.expectHandler (/home/node/playstore-bot/node_modules/slack-client/node_modules/ws/lib/Receiver.js:384:31)
bot-0 (err):     at Receiver.add (/home/node/playstore-bot/node_modules/slack-client/node_modules/ws/lib/Receiver.js:93:24)
bot-0 (err):     at TLSSocket.firstHandler (/home/node/playstore-bot/node_modules/slack-client/node_modules/ws/lib/WebSocket.js:678:22)

@ghost
Copy link

ghost commented Feb 14, 2016

So, I think what you were seeing with this was an error event from the API. The line of code that was throwing the error was the client's handler for messages with type error.

This will be followed by any events that occurred between the call to rtm.start and the connection to the message server. If you're reconnecting after a network problem this initial set of events may include a response to the last message sent on a previous connection (with a reply_to) so a client can confirm that message was received.

Per the docs:

If there was a problem connecting an error will be returned, including a descriptive error message:

{
    "type": "error",
    "error": {
        "code": 1,
        "msg": "Socket URL has expired"
    }
}

My guess is that you were running into some issues with the old reconnection logic. You were likely being disconnected and then having some kind of problems getting re-authed - which was what the unspecified error was representing.

I just pushed the 2.0.0 release for this library, which is a ground up refactor with the aim of building a lib that both Slack and our external contributors can easily work with and improve.

It also includes substantially improved reconnection logic and handling, for both routine disconnects as well team_migration events and similar. I'll also be making sure to expedite fixes for any issues with reconnection logic in particular, as I know that's been a pain for folks in the past.

So, the best way to resolve this issue is probably to upgrade to the latest version. If you have any problems in doing that, please create a new issue and I'll try and help you in there. If you see this problem after updating, let me know and I can see what I can do.

@ghost ghost closed this as completed Feb 14, 2016
aoberoi added a commit to aoberoi/node-slack-sdk that referenced this issue Mar 20, 2019
Make use of body-parser, remove verification token check (issue slackapi#70).
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants