Skip to content

Cannot listen when joining presence channel #262

@kevinongko

Description

@kevinongko
  • Echo Version: 1.6.1
  • Laravel Version: 7.3.0
  • PHP Version: 7.3.15
  • NPM Version: 6.13.4
  • Node Version: 10.19.0

Description:

Cannot listen when joining presence channel because of presence- prefix

Steps To Reproduce:

  1. Set the broadcast channel routes in routes/channels.php
  Broadcast::channel('room.{roomId}', function ($user, $roomId) {
     // some code here
  });
  1. Echo.join to 'room'
    Echo.join(`room.${this.roomId}`)
      .here(users => { this.users = users })
      .joining(user => this.users.push(user))
      .leaving(user => _.remove(this.users, user))
      .listen('NewMessage', e => {
          console.log(e)
      })
  1. in NewMessage Event
    public function broadcastOn()
    {
        return new PresenceChannel('room.'.$this->roomId);
    }
  1. Remove redis prefixes in .env
REDIS_PREFIX=
  1. Run laravel-echo-server and check the page
[7:43:06 PM] - l83ZKBCDZdXvdxKaAAAH joined channel: presence-room.1
Channel: presence-room.1
Event: App\Events\NewMessage

The NewMessage Event prefix the code with presence- but Echo cannot listen to presence-room.1 because it join to room.1

Is this a bug or I'm missing something?
Thanks in advance :D

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions