Передайте дополнительный параметр новому частному каналу в трансляции события [Laravel] - PullRequest
0 голосов
/ 28 мая 2020
public string $attachedDevicesStr;
public string $targetDeviceId;


public function __construct($attachedDevicesStr, $targetDeviceId)
{
   $this->attachedDevicesStr = $attachedDevicesStr;
   $this->targetDeviceId = $targetDeviceId;
}

public function broadcastOn()
{
    return new PrivateChannel('temperature-reading.' . $this->attachedDevicesStr);
}

// In channels.php
Broadcast::channel('temperature-reading.{attachedIdsStr}', function ($user, $attachedIdsStr, $targetDeviceId) {

    // WANT $targetDeviceId HERE WITHOUT PART OF CHANNEL NAME

});


// IN VUE
computed: {
  channelTemperatureReading() {
    return window.Echo.private('temperature-reading.' + this.targetDeviceIdsStr);
  }
},

Мне нужен $ targetDeviceId в маршруте каналов, но я не хочу, чтобы он был частью имени канала Dynami c, потому что я бы слушал на одной странице в VUE, где у меня был бы доступ к connectedDeviceIds из пользовательского сеанса, но не может знать входящий deviceId на этой странице.

Возможно ли это? приветствуется любое обходное решение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...