构建一个队列,用于向pushover API发送通知

时间:2015-12-12 23:16:19

标签: php cakephp cakephp-3.0 cakephp-3.x pushover

我建立了一个小网站,用户可以通过pushover(https://www.pushover.net)向其他用户发送通知。

除了pushover(https://pushover.net/api#limits)之外的限制,一切正常:

“不要向我们的API发送超过2个并发HTTP请求(TCP连接).....为了加速多个请求,您可以使用HTTP keep-alive在同一TCP连接上依次发送每个请求以避免新的TCP连接和SSL协商的开销。不要每5秒重试一次同一个请求....“

据我了解,我必须在5秒内发送少于2封的消息吗?但在我的情况下,我有时会有大约4-5条消息/秒。谁有人知道如何做到这一点“HTTP keep-alive” - 保持它的发展?

为了发送我实际上使用Chris Schalenborgh的“php-pushover”。

我的方法如下:

function alertSend($title, $message, $participants, $account){
    $timestamp = time();
    $datum = date("d.m.Y - H:i", $timestamp);
    $pushover = new Pushover();
    $pushover->setToken($account->alerts);
    $pushover->setUser($account->usertoken);
    $devices = validateUser($account->alerts, $account->usertoken, $account->verify);
    foreach($participants as $user){
        if (strpos($devices, $user) !== false) {
            $final .= $user.",";
        }
    }
    if(!empty($final)){
        $pushover->setDevice($final);
        $pushover->setPriority('1');
        $pushover->setExpire('300');
        $pushover->setRetry('30');
        $pushover->setTitle($title);
        $pushover->setMessage($message);

        if(isset($final)){
            $final = '';
        }
    }
}

在我看来,一般都没有失败。

我希望任何人都有答案如何解决这个问题。

0 个答案:

没有答案