$MCache = new Memcached();
$Memcache = &$MCache;
$MCache->addSErver('/var/run/memcached.sock', 0);
$Re = new Redis();
$Re->connect('/var/run/redis/redis.sock');
?>
$Memcache = new Memcached();
$Memcache->addServer('/var/run/memcached.sock', 0);
$Redis = new Redis();
$Redis->connect('/var/run/redis/redis.sock');
class Push {
private $channel;
function __construct() {
global $Redis;
$this->channel = 'ANIZONE_GLOBAL';
$this->redis = &$Redis;
}
function channel($channel) {
$this->channel = $channel;
}
function trigger($event, $data, $channel = null) {
if($channel == null) $channel = $this->channel;
$json['channel'] = $channel;
$json['data']['event'] = $event;
$json['data']['data'] = $data;
$json = json_encode($json);
$this->redis->publish('juggernaut', $json);
}
}
class PushWing {
function queue($phone, $subject, $contents, $url, $timestamp = null) {
if($timestamp === null) $timestamp = time();
$odb = &oDB::getInstance();
$contents = str_replace( "
", '\n', $contents );
$contents = str_replace( "
", '\n', $contents );
$contents = str_replace( "
", '\n', $contents );
$contents = str_replace( "
", '\n', $contents );
$contents = strip_tags($contents);
$odb->insert('anizone_push_queue', ['phone' => $phone, 'subject' => $subject, 'contents' => $contents, 'url' => $url, 'timestamp' => $timestamp]);
}
function getGroupFavPhones($group_srl, $except_member_srl = []) {
$oCacheHandler = CacheHandler::getInstance('object');
$cache_key = 'anizone:group_fav_phones_cache:'.$group_srl;
$output = $oCacheHandler->get($cache_key);
if(!$output) {
$output = [];
$odb = &oDB::getInstance();
$list = $odb->select('xe_member_fav', ['target_srl' => $group_srl]);
$oMemberModel = &getModel('member');
foreach($list as $val) {
$mem = $oMemberModel->getMemberInfoByMemberSrl($val->member_srl);
if(in_array('즐겨찾기한 그룹의 새로운 글 작성', $mem->push_trigger) && is_array($mem->phone)) $output[] = implode('', $mem->phone);
}
$oCacheHandler->put($cache_key, $output);
}
foreach($except_member_srl as $except) {
if(($key = array_search($except, $output)) !== false) {
unset($messages[$key]);
}
}
$phone = implode(',', $output);
return $phone;
}
function clearGroupFavPhoneCache($group_srl) {
$oCacheHandler = CacheHandler::getInstance('object');
$cache_key = 'anizone:group_fav_phones_cache:'.$group_srl;
$oCacheHandler->delete($cache_key);
}
}
?>
자유 게시판
본문으로 바로가기
-
다들 건강하신가요?
-
아니 진짜 이 글 쓰냐?
-
이게 팀이냐
-
1학기가 끝났습니다
-
아아아니 4일동안 글이 없다니
-
오랜만에 애니플러스샵을 다녀와스빈다~
-
U20 결승 우크라이나전 선발 라인업
-
은덩쨩 없지? 19금 달린다!
-
대한민국 피파주관대회 두번째 결승진출이자 남자팀 첫 결승진출!!
-
국가대표 평가전 이란전 선발 라인업
-
안휘 여긴 고대로
-
와..36년만의 u-20 월드컵 4강신화 ㅠㅠ
-
한국이 호주 상대로 이겼네요
-
으어아아아아아아아아아 구글 어시스턴트으아아아아아
-
가입했어요~ 오늘 처음으로 ㅎㅎㅎ
-
소전 음악회 가시는분 있으신가요?
-
리버풀이 우승했네요
-
이것이 인간사료인가...
-
기생충 보고 왔습니다(스포 거의X)
-
젠카이노!
-
오늘 칼퇴했습니다.
-
주식 시작했습니다
-
게임 중독이 질병이면
-
10년만에 여기 들려봄
-
오랜만이군요
-
장식장을 샀어요
-
다녀왔습니다
-
5252믿고있었다구~
-
다시 살아났군요
-
와 다시 살아났네요
서버에 요청 중입니다. 잠시만 기다려 주십시오...