All threads / Realtime Notifications with ActionCable Discussion
Ask A Question


You鈥檙e not receiving notifications from this thread.

Realtime Notifications with ActionCable Discussion

Thanks, Chris! This is an awesome episode, you're the man!

hey chris, I ve got this in my logs

/usr/local/opt/rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/redis-3.3.1/lib/redis/client.rb:345:in `rescue in establish_connection': Error connecting to Redis on localhost:6379 (Errno::ECONNREFUSED) (Redis::CannotConnectError)

You need to have Redis installed and running. If you're on a Mac, "brew install redis" assuming you have Homebrew.

I watched this last night and got tripped up because my localhost isn't the default. After some fumbling I added this to my development.rb file. config.action_cable.allowed_request_origins = ['http://localhost:1701']

I downloaded the repository, then I was testing what happened if the user changes the page, the server stills send pings to the client. Is that fine? Is the something to be worried about?

Chris, any chance you could follow this episode up at some point and build the full drop down functionality like you did in the previous notification episodes???


Should the warden check against current_user be == ?

if current_user = env['warden'].user

I have the same question. It doesn't validate if I use "==", which I don't understand

nevermind. I see how it works. If env['warden'].user is nil, then the whole statement is nil which points you to the else. if env['warden'].user is not nil, then the if statement is true and current_user gets assigned to warden user.


I have the same problem below. I ve got this log

/Users/a960401/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/redis-3.3.3/lib/redis/client.rb:345:in `rescue in establish_connection': Error connecting to Redis on localhost:6379 (Errno::ECONNREFUSED) (Redis::CannotConnectError)

and I did brew install redis, but It doesn't work same. What I have to do??

For anyone having this after installing Redis, you still need to start Redis server by typing into the terminal:


Nick Toscano

I liked this lesson but I had to change the model from Notifications to Messages b/c rails was telling me that Notifications is a reserved term. Anyone else have that issue? Maybe I messed something up but if I didn't it would be nice to have this rerecorded with a model like Messages so that it is easier to follow and the viewer can cut and paste things from the notes below without having to switch out terms. I also was not able to get the messages from the job to appear on the user pages. Not sure why. I got no errors but still Application.render never rendered anything on the page.

I just went through it and I was able to create Notification model just fine

There is crazy amount of information in this episode, great job.

+1 point for link to AJAX version episode ! ;)

Can you please share the link if you found it?

Chris, would you consider making another episode on this action cable notifications subject? Something like the improvement episode that you made for the non action cable notifications? I would really like to see what logic could be set up to load them into a dropdown from the navbar (just like the previous notifications), and to manage them as unread. Bonus points for implementing a chime or noise for new unread notifications...

This is what I am looking to do in my own personal project.

I have a crazy request, I need to replace ActionCable by some STOMP implementation, so the FrontEnd creates a WebSocket using STOMP protocol, I did research but didn麓t find any possible solution, any idea or approach that can help? thanks

Join the discussion

Want to stay up-to-date with Ruby on Rails?

Join 68,099+ developers who get early access to new tutorials, screencasts, articles, and more.

    We care about the protection of your data. Read our Privacy Policy.

    logo Created with Sketch.

    Screencast tutorials to help you learn Ruby on Rails, Javascript, Hotwire, Turbo, Stimulus.js, PostgreSQL, MySQL, Ubuntu, and more. Icons by Icons8

    © 2022 GoRails, LLC. All rights reserved.