Pusher не получает события от трансляции Laravel 5.2

Я использую Laravel 5.2 и php 7. Я тестирую это в локальной среде Mac OSX. У меня нет проблем с тем, чтобы пинговать другие сервисы или делать запросы с помощью php. Я настроил свое приложение, отредактировав широковещательные.php и .env со своими данными API.

broadcasting.php

'default' => env('BROADCAST_DRIVER', 'pusher'),

'connections' => [

'pusher' => [
'driver' => 'pusher',
'key' => env('mykey'),
'secret' => env('mysecret'),
'app_id' => env('myappid'),
],
...

и в .env

...
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=redis
BROADCAST_DRIVER=pusher

PUSHER_KEY=mykey
PUSHER_SECRET=mysecret
PUSHER_APP_ID=myappid
...

Я создал TestEvent так

<?php

namespace App\Events;

use App\Events\Event;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;

class TestEvent extends Event implements ShouldBroadcast
{
use SerializesModels;

public $data;

public function __construct()
{
$this->data = array(
'power'=> '10'
);
}

public function broadcastOn()
{
return ['test_channel'];
}
}

Затем я призываю на событие, как так

Event::fire(new TestEvent());

Событие обнаруживается и обрабатывается в Redis

[2016-02-04 10:06:18] Processed: Illuminate\Broadcasting\BroadcastEvent
[2016-02-04 10:08:44] Processed: Illuminate\Broadcasting\BroadcastEvent
[2016-02-04 10:11:14] Processed: Illuminate\Broadcasting\BroadcastEvent
[2016-02-04 10:11:59] Processed: Illuminate\Broadcasting\BroadcastEvent
[2016-02-04 10:14:22] Processed: Illuminate\Broadcasting\BroadcastEvent
[2016-02-04 11:17:04] Processed: Illuminate\Broadcasting\BroadcastEvent
[2016-02-04 11:38:14] Processed: Illuminate\Broadcasting\BroadcastEvent

Но при просмотре консоли отладки в пушере ничего не появляется. Таким образом, кажется, что событие по какой-то причине никогда не отправляется в толкач. Я также проверил настройки часового пояса, чтобы убедиться, что это не проблема. Нет ошибок в моем файле журнала laravel при трансляции события.

Как я могу решить эту проблему? Есть ли хороший способ отладки и посмотреть, есть ли на самом деле запрос на отправку?

4

Решение

Это может не решить проблему, и, возможно, вы изменили свои данные для вопроса, но если ваш .env это так:

PUSHER_KEY=mykey
PUSHER_SECRET=mysecret
PUSHER_APP_ID=myappid

Разве код ваших учетных данных не должен выглядеть так:

'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_KEY'),
'secret' => env('PUSHER_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
],

Это ссылка на значение в вашем коде, а не ключ!

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]