本文整理汇总了PHP中Subscriber::subscribe方法的典型用法代码示例。如果您正苦于以下问题:PHP Subscriber::subscribe方法的具体用法?PHP Subscriber::subscribe怎么用?PHP Subscriber::subscribe使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Subscriber
的用法示例。
在下文中一共展示了Subscriber::subscribe方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testUnsubscribeSubscribe
/**
* @magentoDataFixture Magento/Newsletter/_files/subscribers.php
* @magentoAppArea frontend
*/
public function testUnsubscribeSubscribe()
{
// Unsubscribe and verify
$this->assertSame($this->_model, $this->_model->loadByCustomerId(1));
$this->assertEquals($this->_model, $this->_model->unsubscribe());
$this->assertEquals(Subscriber::STATUS_UNSUBSCRIBED, $this->_model->getSubscriberStatus());
// Subscribe and verify
$this->assertEquals(Subscriber::STATUS_SUBSCRIBED, $this->_model->subscribe('customer@example.com'));
$this->assertEquals(Subscriber::STATUS_SUBSCRIBED, $this->_model->getSubscriberStatus());
}
示例2: subscribe
/**
* send subscribtion and fork the process, the child-process listens the socket for new events
* while the parent-pocess continues working
* @param $Callback stringrepresentation of the callback-function
* @return true, if subscribtion and fork were succesful, else false
*/
public function subscribe($Callback)
{
if (!parent::subscribe()) {
return false;
}
$this->m_Callback = $Callback;
$this->m_PidParent = getmypid();
$this->m_PidChild = pcntl_fork();
if ($this->m_PidChild == -1) {
die('could not create child-process');
return false;
} else {
if ($this->m_PidChild) {
// parent registers signal-handler
pcntl_signal(SIGUSR1, array($this, 'sig_handler'));
} else {
// start listening at the socket
$this->listen();
}
}
return true;
}
示例3: update_rss_feed
//.........这里部分代码省略.........
if (!$registered_title || $registered_title == "[Unknown]") {
$feed_title = db_escape_string($rss->get_title());
if ($feed_title) {
_debug("registering title: {$feed_title}", $debug_enabled);
db_query("UPDATE ttrss_feeds SET\n\t\t\t\t\t\ttitle = '{$feed_title}' WHERE id = '{$feed}'");
}
}
if ($site_url && $orig_site_url != $site_url) {
db_query("UPDATE ttrss_feeds SET\n\t\t\t\t\tsite_url = '{$site_url}' WHERE id = '{$feed}'");
}
_debug("loading filters & labels...", $debug_enabled);
$filters = load_filters($feed, $owner_uid);
$labels = get_all_labels($owner_uid);
_debug("" . count($filters) . " filters loaded.", $debug_enabled);
$items = $rss->get_items();
if (!is_array($items)) {
_debug("no articles found.", $debug_enabled);
db_query("UPDATE ttrss_feeds\n\t\t\t\t\tSET last_updated = NOW(), last_error = '' WHERE id = '{$feed}'");
return;
// no articles
}
if ($pubsub_state != 2 && PUBSUBHUBBUB_ENABLED) {
_debug("checking for PUSH hub...", $debug_enabled);
$feed_hub_url = false;
$links = $rss->get_links('hub');
if ($links && is_array($links)) {
foreach ($links as $l) {
$feed_hub_url = $l;
break;
}
}
_debug("feed hub url: {$feed_hub_url}", $debug_enabled);
if ($feed_hub_url && function_exists('curl_init') && !ini_get("open_basedir")) {
require_once 'lib/pubsubhubbub/subscriber.php';
$callback_url = get_self_url_prefix() . "/public.php?op=pubsub&id={$feed}";
$s = new Subscriber($feed_hub_url, $callback_url);
$rc = $s->subscribe($fetch_url);
_debug("feed hub url found, subscribe request sent.", $debug_enabled);
db_query("UPDATE ttrss_feeds SET pubsub_state = 1\n\t\t\t\t\t\tWHERE id = '{$feed}'");
}
}
_debug("processing articles...", $debug_enabled);
foreach ($items as $item) {
if ($_REQUEST['xdebug'] == 3) {
print_r($item);
}
$entry_guid = $item->get_id();
if (!$entry_guid) {
$entry_guid = $item->get_link();
}
if (!$entry_guid) {
$entry_guid = make_guid_from_title($item->get_title());
}
_debug("f_guid {$entry_guid}", $debug_enabled);
if (!$entry_guid) {
continue;
}
$entry_guid = "{$owner_uid},{$entry_guid}";
$entry_guid_hashed = db_escape_string('SHA1:' . sha1($entry_guid));
_debug("guid {$entry_guid} / {$entry_guid_hashed}", $debug_enabled);
$entry_timestamp = "";
$entry_timestamp = $item->get_date();
_debug("orig date: " . $item->get_date(), $debug_enabled);
if ($entry_timestamp == -1 || !$entry_timestamp || $entry_timestamp > time()) {
$entry_timestamp = time();
$no_orig_date = 'true';
示例4: update_rss_feed
//.........这里部分代码省略.........
_debug("update_rss_feed: checking for PUSH hub...");
}
$feed_hub_url = false;
if ($use_simplepie) {
$links = $rss->get_links('hub');
if ($links && is_array($links)) {
foreach ($links as $l) {
$feed_hub_url = $l;
break;
}
}
} else {
$atom = $rss->channel['atom'];
if ($atom) {
if ($atom['link@rel'] == 'hub') {
$feed_hub_url = $atom['link@href'];
}
if (!$feed_hub_url && $atom['link#'] > 1) {
for ($i = 2; $i <= $atom['link#']; $i++) {
if ($atom["link#{$i}@rel"] == 'hub') {
$feed_hub_url = $atom["link#{$i}@href"];
break;
}
}
}
} else {
$feed_hub_url = $rss->channel['link_hub'];
}
}
if ($debug_enabled) {
_debug("update_rss_feed: feed hub url: {$feed_hub_url}");
}
if ($feed_hub_url && function_exists('curl_init') && !ini_get("open_basedir")) {
require_once 'lib/pubsubhubbub/subscriber.php';
$callback_url = get_self_url_prefix() . "/public.php?op=pubsub&id={$feed}";
$s = new Subscriber($feed_hub_url, $callback_url);
$rc = $s->subscribe($fetch_url);
if ($debug_enabled) {
_debug("update_rss_feed: feed hub url found, subscribe request sent.");
}
db_query($link, "UPDATE ttrss_feeds SET pubsub_state = 1\n\t\t\t\t\t\tWHERE id = '{$feed}'");
}
}
if ($debug_enabled) {
_debug("update_rss_feed: processing articles...");
}
foreach ($iterator as $item) {
if ($_REQUEST['xdebug'] == 2) {
print_r($item);
}
if ($use_simplepie) {
$entry_guid = $item->get_id();
if (!$entry_guid) {
$entry_guid = $item->get_link();
}
if (!$entry_guid) {
$entry_guid = make_guid_from_title($item->get_title());
}
} else {
$entry_guid = $item["id"];
if (!$entry_guid) {
$entry_guid = $item["guid"];
}
if (!$entry_guid) {
$entry_guid = $item["about"];
}
示例5: boot
/**
* Boots the plugin.
*/
public function boot()
{
$this->subscriber->subscribe();
}
示例6: update_rss_feed
//.........这里部分代码省略.........
db_query("UPDATE ttrss_feeds SET favicon_last_checked = NOW()\n\t\t\t\t\t{$favicon_colorstring}\n\t\t\t\t\tWHERE id = '{$feed}'");
}
_debug("loading filters & labels...", $debug_enabled);
$filters = load_filters($feed, $owner_uid);
_debug("" . count($filters) . " filters loaded.", $debug_enabled);
$items = $rss->get_items();
if (!is_array($items)) {
_debug("no articles found.", $debug_enabled);
db_query("UPDATE ttrss_feeds\n\t\t\t\t\tSET last_updated = NOW(), last_error = '' WHERE id = '{$feed}'");
return;
// no articles
}
if ($pubsub_state != 2 && PUBSUBHUBBUB_ENABLED) {
_debug("checking for PUSH hub...", $debug_enabled);
$feed_hub_url = false;
$links = $rss->get_links('hub');
if ($links && is_array($links)) {
foreach ($links as $l) {
$feed_hub_url = $l;
break;
}
}
_debug("feed hub url: {$feed_hub_url}", $debug_enabled);
$feed_self_url = $fetch_url;
$links = $rss->get_links('self');
if ($links && is_array($links)) {
foreach ($links as $l) {
$feed_self_url = $l;
break;
}
}
_debug("feed self url = {$feed_self_url}");
if ($feed_hub_url && $feed_self_url && function_exists('curl_init') && !ini_get("open_basedir")) {
require_once 'lib/pubsubhubbub/subscriber.php';
$callback_url = get_self_url_prefix() . "/public.php?op=pubsub&id={$feed}";
$s = new Subscriber($feed_hub_url, $callback_url);
$rc = $s->subscribe($feed_self_url);
_debug("feed hub url found, subscribe request sent. [rc={$rc}]", $debug_enabled);
db_query("UPDATE ttrss_feeds SET pubsub_state = 1\n\t\t\t\t\t\tWHERE id = '{$feed}'");
}
}
_debug("processing articles...", $debug_enabled);
$tstart = time();
foreach ($items as $item) {
if ($_REQUEST['xdebug'] == 3) {
print_r($item);
}
if (ini_get("max_execution_time") > 0 && time() - $tstart >= ini_get("max_execution_time") * 0.7) {
_debug("looks like there's too many articles to process at once, breaking out", $debug_enabled);
break;
}
$entry_guid = $item->get_id();
if (!$entry_guid) {
$entry_guid = $item->get_link();
}
if (!$entry_guid) {
$entry_guid = make_guid_from_title($item->get_title());
}
if (!$entry_guid) {
continue;
}
$entry_guid = "{$owner_uid},{$entry_guid}";
$entry_guid_hashed = db_escape_string('SHA1:' . sha1($entry_guid));
_debug("guid {$entry_guid} / {$entry_guid_hashed}", $debug_enabled);
$entry_timestamp = "";
$entry_timestamp = $item->get_date();
示例7: Subscriber
<?php
include "subscriber.php";
//define hub, callback and feed
$hub = 'http://pubsubhubbub.appspot.com/';
$callback = 'http://www.example.com/publish';
$feed = 'http://www.example.com';
//create new subscriber
$subscriber = new Subscriber($hub, $callback);
//subscribe / unsubscribe methods
$response = $subscriber->subscribe($feed);
//$response = $subscriber->unsubscribe($feed);
//print response
var_dump($response);
示例8: testSubscribe
public function testSubscribe()
{
$sub = new Subscriber($this->mock);
$sub->subscribe('http://hub.tld/subscribe', 'http://subscriber.tld/callback', 'http://publisher.tld/topic', 'sync');
$this->markTestIncomplete('This test has not been implemented yet.');
}
示例9: Subscriber
<?php
// simple example for the PHP pubsubhubbub Subscriber
// as defined at http://code.google.com/p/pubsubhubbub/
// written by Josh Fraser | joshfraser.com | josh@eventvue.com
// Released under Apache License 2.0
include "subscriber.php";
$hub_url = "http://pubsubhubbub.appspot.com";
$callback_url = "put your own endpoint here";
$feed = "http://feeds.feedburner.com/onlineaspect";
// create a new subscriber
$s = new Subscriber($hub_url, $callback_url);
// subscribe to a feed
$s->subscribe($feed);
// unsubscribe from a feed
$s->unsubscribe($feed);
?>
示例10: EventChannel
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
* $Id$
*
******************************************************************************/
include "../interface/EventChannel.php";
include "../interface/Subscriber.php";
$subject = "testsubj";
print "generating Famouso EventChannel\n";
$EventChannel = new EventChannel($subject);
print "generating PHP Subscriber\n";
$Subscriber = new Subscriber($EventChannel);
print "sending subscribtion\n";
if (!$Subscriber->subscribe()) {
print "subscribtion failed - exit\n";
exit;
}
print "getting all events by polling\n";
for ($i = 0; $i < 10; $i++) {
$event = $Subscriber->getEvent();
print $i . " event\n";
print "subject: " . $event['subject'] . "\n";
print "length : " . $event['length'] . "\n";
print "data : " . $event['data'] . "\n";
}
print "sending unsubscribtion\n";
$Subscriber->unsubscribe();
示例11: update_rss_feed
//.........这里部分代码省略.........
_debug("update_rss_feed: loading filters & labels...");
}
$filters = load_filters($link, $feed, $owner_uid);
$labels = get_all_labels($link, $owner_uid);
if ($debug_enabled) {
//print_r($filters);
_debug("update_rss_feed: " . count($filters) . " filters loaded.");
}
$items = $rss->get_items();
if (!is_array($items)) {
if ($debug_enabled) {
_debug("update_rss_feed: no articles found.");
}
db_query($link, "UPDATE ttrss_feeds\n\t\t\t\t\tSET last_updated = NOW(), last_error = '' WHERE id = '{$feed}'");
return;
// no articles
}
if ($pubsub_state != 2 && PUBSUBHUBBUB_ENABLED) {
if ($debug_enabled) {
_debug("update_rss_feed: checking for PUSH hub...");
}
$feed_hub_url = false;
$links = $rss->get_links('hub');
if ($links && is_array($links)) {
foreach ($links as $l) {
$feed_hub_url = $l;
break;
}
}
if ($debug_enabled) {
_debug("update_rss_feed: feed hub url: {$feed_hub_url}");
}
if ($feed_hub_url && function_exists('curl_init') && !ini_get("open_basedir")) {
require_once 'lib/pubsubhubbub/subscriber.php';
$callback_url = get_self_url_prefix() . "/public.php?op=pubsub&id={$feed}";
$s = new Subscriber($feed_hub_url, $callback_url);
$rc = $s->subscribe($fetch_url);
if ($debug_enabled) {
_debug("update_rss_feed: feed hub url found, subscribe request sent.");
}
db_query($link, "UPDATE ttrss_feeds SET pubsub_state = 1\n\t\t\t\t\t\tWHERE id = '{$feed}'");
}
}
if ($debug_enabled) {
_debug("update_rss_feed: processing articles...");
}
foreach ($items as $item) {
if ($_REQUEST['xdebug'] == 3) {
print_r($item);
}
$entry_guid = $item->get_id();
if (!$entry_guid) {
$entry_guid = $item->get_link();
}
if (!$entry_guid) {
$entry_guid = make_guid_from_title($item->get_title());
}
if ($debug_enabled) {
_debug("update_rss_feed: guid {$entry_guid}");
}
if (!$entry_guid) {
continue;
}
$entry_guid = "{$owner_uid},{$entry_guid}";
$entry_timestamp = "";
$entry_timestamp = strtotime($item->get_date());