Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Real Time with Rails 5

lucas renan
September 17, 2016

Real Time with Rails 5

Yet another chat app with Action Cable - Rails 5.

Presented at GURU Sorocaba meetup.

lucas renan

September 17, 2016
Tweet

More Decks by lucas renan

Other Decks in Programming

Transcript

  1. !

  2. app/channels/rooms_channel.rb class RoomsChannel < ApplicationCable::Channel def subscribed stream_from 'room_sorocaba_channel' #

    can be dynamic end def unsubscribed # Any cleanup needed when channel is unsubscribed end def send_message(data) ActionCable.server.broadcast('room_sorocaba_channel', data) end end
  3. app/assets/javascripts/channels/rooms.js App.rooms = App.cable.subscriptions.create("RoomsChannel", { connected: function() { // Called

    when the subscription is ready for use on the server }, disconnected: function() { // Called when the subscription has been terminated by the server }, received: function(data) { // Called when there's incoming data on the websocket for this channel }, send_message: function() { return this.perform('send_message'); } });