I'm creating a simple Twitter app where I want to stream the timeline of the logged in user, but I can't figure out the right way.
With hard coded parameters it works fine, but I don't know how should I pass the logged in user's (token, who they are following) to the stream processor (which is running separately, in terminal), which checks the right timeline and returns it.
I also would like to get the tweets of the protected people followed by the user, but Stream API doesn't support that.
I'm using the Impensavel\Floodgate library, and, and my simple hard coded classes looks like this:
class Streaming extends Floodgate
{
/**
* {@inheritDoc}
*/
public function getParameters()
{
return [
'follow' => 83408038
];
}
}
This starts the actual requests, I just made a Symfony command out of it:
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;
}
});
}
}
With what kind of logic could I achieve the streaming of each user's own timeline, including protected users?