流式传输多个 Twitter 时间线,包括受保护的

Stream multiple Twitter timelines including protected

我正在创建一个简单的 Twitter 应用程序,我想在其中流式传输登录用户的时间线,但我想不出正确的方法。

使用硬编码参数它工作正常,但我不知道我应该如何将登录用户的(令牌,他们正在关注的人)传递给流处理器(分别为 运行,在终端),检查正确的时间线并 returns 它。

我也想获取用户关注的受保护人的推文,但 Stream API 不支持。

我正在使用 Impensavel\Floodgate 库,并且我的简单硬编码 类 如下所示:

class Streaming extends Floodgate
{
    /**
     * {@inheritDoc}
     */
    public function getParameters()
    {
        return [
            'follow' => 83408038
        ];
    }
}

这会启动实际的请求,我只是用它做了一个 Symfony 命令:

class StreamCommand extends ContainerAwareCommand
{

 protected function configure()
    {
        $this->setName('stream:start');
    }
 protected function execute(InputInterface $input, OutputInterface    $output)
  {
    $config = [
        'consumer_key' => '**',
        'consumer_secret' => '**',
        'token' => '**',
        'token_secret' => '**',
    ];

    $stream = Streaming::create($config);

    $stream->filter(function ($data) {
        if(isset($data->text)){
            echo $data->text . PHP_EOL;
        }
    });
  }
}

通过什么样的逻辑可以实现每个用户自己的时间线的流式传输,包括受保护的用户?

最后,我设法通过使用 ReactPHP 运行 流处理和 Ratchet 与客户端通信解决了这个问题。