Цель: – получать непрочитанные сообщения на определенном канале.
Вход пользователя на веб-сайт upitch.
Как только он перейдет на страницу «Сообщение», мы поддерживаем message_page_visited_count = 1
когда пользователь перемещается с страницы сообщений на любую другую страницу, мы обновляем message_page_visited_count = 0
и обновляем отметку времени.
теперь для обновления timestamp мы используем mysql function strtotime("now")
что-то вроде этого.
$this->Userlink->updateAll( array('pubnub_time_stamp' => strtotime("now")), array('Userlink.id' => $loggedInUser) ); // updating timestamp for logged in user 1455687812
Какие обновления 1455687812
отметки времени в нашей базе данных для зарегистрированных пользователей.
Как обсуждалось с командой pubnub, команда pubnub заявила, чтобы добавить 7 нулей в правый конец моей метки времени. Который становится
14556878120000000
У меня встроенный php-sdk pubnub
include_once './vendor/autoload.php'; use Pubnub\Pubnub; $publish_key = publish_key $subscribe_key = subscribe_key $pubnub = new Pubnub($publish_key, $subscribe_key);
Я нашел способ воплотить историю в нечто подобное.
history( string $channel, integer $count = 100, boolean $include_token = null, integer $start = null, integer $end = null, boolean $reverse = false)
Внедряя это: –
$result= $pubnub->history( "2242_2272_1116", //my channel null, true, null, 14556878120000000, //endtime token with 7 zeros null); echo "<pre>"; print_r($result);die;
Печать, почему я получаю все сообщения? вместо получения сообщений после заданного токена?
Причина может заключаться в добавлении 7 нулей, которые не принимаются pubnub, если вы любезно предложите мне преобразовать мою метку времени (1455687812) в токен времени pubnub (17 цифр).
или, пожалуйста, укажите мне, что я делаю неправильно здесь?
Ваша помощь будет оценена заранее.
РЕДАКТИРОВАТЬ
Я получаю сообщения и его токен-то, что-то вроде этого. // TIMETOKENS AND MESSAGES
14556879844588614 Really want some more levels 14556879769565496 The fact I can see 14556871094404310 Haunted 14556871091411782 Hello 14556870983775230 Hello $result= $pubnub->history( "2242_2272_1116", null, true, null, 14556871094404310, null); echo "<pre>"; print_r($result);die;
Я передаю токен 3-го сообщения, который является 14556871094404310
и сообщение Haunted. Ожидается, что ожидаемый результат будет
14556879844588614 Really want some more levels 14556879769565496 The fact I can see
Почему его возвращение всего сообщения вместо 2 сообщения?
Примечание : на этот раз я не добавил ни одного нуля и использовал изначально созданный timetoken pubnub.
Даже делая это, вы также возвращаете все сообщения!
до сих пор не повезло.