unniks/twitter-enterprise-for-laravel

Laravel Twitter Powertrack 包

dev-master 2019-10-14 07:08 UTC

This package is auto-updated.

Last update: 2024-09-14 18:20:48 UTC


README

Twitter Power Tracker 是一个用于连接和流式传输数据的包,用于 Twitter 的企业流媒体计划。

安装

$ composer require unniks/twitter-powertracker

别忘了添加服务提供者

unniks\TwitterPowertracker\PowerTrackerServiceProvider::class,

Twitter Power Tracker 包含门面。在别名中添加以下行

'TwitterPowertracker' => unniks\TwitterPowertracker\PowerTrackFacade::class,

发布供应商文件以进行配置

$ php artisan vendor:publish --provider="unniks\TwitterPowertracker\PowerTrackerServiceProvider"

用法

在开始使用此功能之前,我们需要 GNIP 账户。如果您有 GNIP 用户名和密码,请将以下变量添加到您的 .env 文件中

TWITTER_GNIP_USERNAME=test@test.xyz <br>
TWITTER_GNIP_PASSWORD=xxxxx <br>
TWITTER_GNIP_URL=https://gnip-stream.twitter.com/stream/powertrack/accounts/{username}/publishers/twitter/{variable}.json <br>
TWITTER_GNIP_REPLAY_URL=https://gnip-stream.gnip.com/replay/powertrack/accounts/{username}/publishers/twitter/{variabale}.json <br>
TWITTER_GNIP_STREAMING_30_DAYS_URL=https://gnip-api.twitter.com/search/30day/accounts/{username}/{variabale}.json <br>
TWITTER_GNIP_RULES_URL=https://gnip-api.twitter.com/rules/powertrack/accounts/{username}/publishers/twitter/{variabale}.json 

使用此门面

use TwitterPowertracker; 

创建规则

如果您可以传递 GNIP 控制台推荐的 JSON 格式

_

 $json =  {"rules" :[{"value" : "from:foo","tag" : "some_foo_tag"},{"value" : "foo:keyword"}]} ;
TwitterPowertracker::ruleCreationByJson($json);
或者只需传递类似这样的规则数组,使用 ruleCreationByArray() 方法

_

$rules =['from:rahul','@shami'];
TwitterPowertracker::ruleCreationByArray($rules); 
如果您需要传递标签数组,只需这样操作

_

$rules = ['from:rahul','@shami'];
$tags = ['rahul_tag','sham_tag'];
TwitterPowertracker::ruleCreationByArray($rules,$tags);

注意:$tags 的数组索引应与 $rules 的数组索引相匹配

删除规则

您可以使用上面提到的相同技术进行以下操作

_

TwitterPowertracker::ruleDeletionByJson($json); 

_

TwitterPowertracker::ruleDeletionByJson($json); 
TwitterPowertracker::ruleDeletionByArray($rules,$tags); 

规则是什么?请参阅此文档:https://developer.twitter.com/en/docs/tweets/filter-realtime/overview/powertrack-api

流式传输数据

use TwitterPowertracker; 
TwitterPowertracker::powerStream();

通过调用 powerStream() 方法,数据将连续流式传输到模型 app/TwitterPowerTrackerStream.php

public static function getPowerTrack($data)
{
    //do some stuff with incoming $data
}

强制停止实时流

//return "exit" in the function "app/TwitterPowerTrackerStream.php"

public static function getPowerTrack($data)
{
    //some code
    if(//some condition)
    {
      return "exit";
    }
}

********* 正在等待为这个简单的包做出杰出贡献 **********

许可证

unniks/twitter-powertracker 是在 MIT 许可下许可的开源软件

twitter-enterprise-for-laravel