push_helper.php 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 2016/11/15
  6. * Time: 下午12:26
  7. */
  8. require_once (BASE_ROOT_PATH . '/helper/sms_helper.php');
  9. require_once (BASE_ROOT_PATH . '/helper/push_sender.php');
  10. class push_helper
  11. {
  12. static $admin_info = null;
  13. private static function admin_alias() {
  14. return bonus\parameters::admin_member_id;
  15. }
  16. private static function admin_avatar()
  17. {
  18. if(self::$admin_info == null) {
  19. self::$admin_info = new member_info(self::admin_alias());
  20. }
  21. return self::$admin_info->avatar();
  22. }
  23. public static function stolen_bonus(member_info $from_info,member_info $to_info,$amount)
  24. {
  25. $thief = $to_info->nickname();
  26. $text = "{$thief}偷走了您{$amount}元的红包.";
  27. $push_param['alias'] = $from_info->member_id();
  28. $push_param['title'] = "摇红包";
  29. $push_param['text'] = $text;
  30. $push_param['extra']['go_type'] = 'bonus';
  31. $push_param['extra']['title'] = "红包被偷";
  32. $push_param['extra']['text'] = $text;
  33. $push_param['extra']['show_type'] = 'pop';
  34. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  35. $push_param['extra']['image'] = $to_info->avatar();
  36. QueueClient::push('upushSendMsg',$push_param);
  37. }
  38. public static function fly_bonus(member_info $from_info,member_info $to_info,$amount)
  39. {
  40. $name = $from_info->nickname();
  41. $text = "{$name}的{$amount}元的红包,在向您飞来~.";
  42. $push_param['alias'] = $to_info->member_id();
  43. $push_param['title'] = "摇红包";
  44. $push_param['text'] = $text;
  45. $push_param['extra']['go_type'] = 'bonus';
  46. $push_param['extra']['title'] = "摇红包";
  47. $push_param['extra']['text'] = $text;
  48. $push_param['extra']['show_type'] = 'pop';
  49. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  50. $push_param['extra']['image'] = $from_info->avatar();
  51. QueueClient::push('upushSendMsg',$push_param);
  52. }
  53. public static function order_refund_bonus($member_id,$amount)
  54. {
  55. $minfo = new member_info($member_id);
  56. $text = "退款通知:金额{$amount}元红包已退还到您的账户.";
  57. $push_param['alias'] = $member_id;
  58. $push_param['title'] = "退款";
  59. $push_param['text'] = $text;
  60. $push_param['extra']['go_type'] = 'bonus';
  61. $push_param['extra']['title'] = "退款";
  62. $push_param['extra']['text'] = $text;
  63. $push_param['extra']['show_type'] = 'pop';
  64. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  65. $push_param['extra']['image'] = $minfo->avatar();
  66. QueueClient::push('upushSendMsg',$push_param);
  67. }
  68. public static function send_bonus($member_id,$to_ids)
  69. {
  70. $sender = new member_info($member_id);
  71. $name = $sender->nickname();
  72. foreach ($to_ids as $member_id)
  73. {
  74. $push_param = [];
  75. $text = "新的红包:您的好友{$name}给您发了一个红包,请查收.";
  76. $push_param['alias'] = $member_id;
  77. $push_param['title'] = "新到红包";
  78. $push_param['text'] = $text;
  79. $push_param['extra']['go_type'] = 'bonus';
  80. $push_param['extra']['title'] = "新到红包";
  81. $push_param['extra']['text'] = $text;
  82. $push_param['extra']['show_type'] = 'pop';
  83. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  84. $push_param['extra']['image'] = $sender->avatar();
  85. QueueClient::push('upushSendMsg',$push_param);
  86. }
  87. }
  88. public static function bonus_refund($member_id,$amount)
  89. {
  90. $sender = new member_info($member_id);
  91. $text = "红包退还通知:您发送的红包已超过24小时,退还未被领取的金额{$amount}元,您可以重新发送并通知小伙伴及时领取.";
  92. $push_param['alias'] = $member_id;
  93. $push_param['title'] = "过期未领红包退还";
  94. $push_param['text'] = $text;
  95. $push_param['extra']['go_type'] = 'bonus';
  96. $push_param['extra']['title'] = "过期未领红包退还";
  97. $push_param['extra']['text'] = $text;
  98. $push_param['extra']['show_type'] = 'pop';
  99. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  100. $push_param['extra']['image'] = $sender->avatar();
  101. QueueClient::push('upushSendMsg',$push_param);
  102. }
  103. public static function invite_bonus($member_id,$money)
  104. {
  105. $minfo = new member_info($member_id);
  106. $text = "好东西就要与好盆友一起分享,感谢您的热情推荐,特奖励您{$money}元的友情红包,请查收~.";
  107. $push_param['alias'] = $member_id;
  108. $push_param['title'] = "邀请奖励";
  109. $push_param['text'] = $text;
  110. $push_param['extra']['go_type'] = 'bonus';
  111. $push_param['extra']['title'] = "邀请奖励";
  112. $push_param['extra']['text'] = $text;
  113. $push_param['extra']['show_type'] = 'pop';
  114. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  115. $push_param['extra']['image'] = $minfo->avatar();
  116. QueueClient::push('upushSendMsg',$push_param);
  117. }
  118. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  119. public static function register_bonus($user, $money,$type_sn,$fQueue=false)
  120. {
  121. $text = "您获得{$money}元的新人首单红包,请查收~";
  122. $push_param['alias'] = $user;
  123. $push_param['title'] = "收到新人首单红包";
  124. $push_param['text'] = $text;
  125. $push_param['extra']['go_type'] = 'bonus';
  126. $push_param['extra']['title'] = "收到新人首单红包";
  127. $push_param['extra']['text'] = $text;
  128. $push_param['extra']['show_type'] = 'pop';
  129. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  130. $push_param['extra']['image'] = self::admin_avatar();
  131. self::push($user,$push_param,Sms::tpl_reg_user_bonus,['amount' => $money],$fQueue);
  132. }
  133. public static function money_rate_desc($money,$rate)
  134. {
  135. $discount = 100 - $rate;
  136. if($discount == 0) {
  137. $desc = "全抵";
  138. } else {
  139. $tmp = $discount / 10;
  140. $desc = "{$tmp}折";
  141. }
  142. $desc = "可抵扣";
  143. $amount = intval($money * 100 + 0.5) / 100;
  144. return "{$amount}元{$desc}";
  145. }
  146. private static function push($alias, $push_param, $sms_type='',$sms_param=[], $fQueue=false)
  147. {
  148. $alias_info = new member_info($alias);
  149. $mobile = $alias_info->mobile();
  150. $client_type = $alias_info->client_type();
  151. if($fQueue)
  152. {
  153. if($client_type > 0) {
  154. QueueClient::push('upushSendMsg',$push_param);
  155. }
  156. else
  157. {
  158. if(!empty($sms_type) && $alias_info->can_sms()) {
  159. $sms_param['mobile'] = $mobile;
  160. $sms_param['type'] = $sms_type;
  161. QueueClient::push('sendOperSMS',$sms_param);
  162. }
  163. else {
  164. QueueClient::push('upushSendMsg',$push_param);
  165. }
  166. }
  167. }
  168. else
  169. {
  170. if($client_type > 0) {
  171. $push = new push_sender();
  172. $status = $push->send($push_param,$client_type);
  173. }
  174. else
  175. {
  176. if(!empty($sms_type) && $alias_info->can_sms()) {
  177. $sms = new Sms();
  178. $status = $sms->send_oper($mobile,$sms_type,$sms_param);
  179. }
  180. else {
  181. $push = new push_sender();
  182. $status = $push->send($push_param,$client_type);
  183. }
  184. }
  185. }
  186. }
  187. private static function inviter_text(member_info $invitee, $level, $money, $rate)
  188. {
  189. $nickname = $invitee->nickname();
  190. $text = self::money_rate_desc($money, $rate);
  191. return "{$nickname} 成为您的{$level}度粉丝,您获得{$text}红包奖励.";
  192. }
  193. public static function inviter_bonus($inviter, $user, $level, $money, $rate, $type_sn,$fQueue=false)
  194. {
  195. $user_info = new member_info($user);
  196. $text = self::inviter_text($user_info,$level,$money,$rate);
  197. $push_param['alias'] = $inviter;
  198. $push_param['title'] = "收到邀请奖励红包";
  199. $push_param['text'] = $text;
  200. $push_param['extra']['go_type'] = 'bonus';
  201. $push_param['extra']['title'] = "收到邀请奖励红包";
  202. $push_param['extra']['text'] = $text;
  203. $push_param['extra']['show_type']= 'pop';
  204. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  205. $push_param['extra']['image'] = $user_info->avatar();
  206. self::push($inviter,$push_param,Sms::tpl_reg_inviter,['user_name' => $user_info->nickname(),'level' => $level,'amount' => $money],$fQueue);
  207. }
  208. private static function invitee_text(member_info $inviter, member_info $user, $level, $money, $rate)
  209. {
  210. $desc = self::money_rate_desc($money, $rate);
  211. $text = "{$user->nickname()}成为{$inviter->nickname()}的{$level}度粉丝,您获得{$desc}红包奖励.";
  212. return $text;
  213. }
  214. public static function invitee_bonus($inviter, $invitee,member_info $user,$level, $money, $rate, $type_sn,$fQueue=false)
  215. {
  216. $inviter_info = new member_info($inviter);
  217. $text = self::invitee_text($inviter_info,$user,$level,$money,$rate);
  218. $push_param['alias'] = $invitee;
  219. $push_param['title'] = "收到雨露均沾红包";
  220. $push_param['text'] = $text;
  221. $push_param['extra']['go_type'] = 'bonus';
  222. $push_param['extra']['title'] = "收到雨露均沾红包";
  223. $push_param['extra']['text'] = $text;
  224. $push_param['extra']['show_type']= 'pop';
  225. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  226. $push_param['extra']['image'] = $inviter_info->avatar();
  227. if($level < 2) {
  228. self::push($invitee,$push_param,Sms::tpl_reg_invitee,
  229. ['user_name' => $user->nickname(),'inviter_name' => $inviter_info->nickname(),'level' => $level,'amount' => $money],
  230. $fQueue);
  231. } else {
  232. $push = new push_sender();
  233. $push->send($push_param);
  234. }
  235. }
  236. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  237. private static function buygoods_inviter_text(member_info $user, $level, $goods_name)
  238. {
  239. $text = "您的{$level}度粉丝 {$user->nickname()},刚刚购买了《{$goods_name}》.";
  240. return $text;
  241. }
  242. public static function inviter_order_paied($inviter, $user, $level, $goods_info,$fQueue=false)
  243. {
  244. $user_info = new member_info($user);
  245. $text = self::buygoods_inviter_text($user_info,$level,$goods_info['goods_name']);
  246. $push_param['alias'] = $inviter;
  247. $push_param['title'] = "粉丝正在买";
  248. $push_param['text'] = $text;
  249. $push_param['extra']['go_type'] = 'bonus';
  250. $push_param['extra']['title'] = "粉丝正在买";
  251. $push_param['extra']['text'] = $text;
  252. $push_param['extra']['show_type']= 'pop';
  253. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  254. $push_param['extra']['image'] = $goods_info['goods_image'];
  255. QueueClient::push('upushSendMsg',$push_param);
  256. //self::push($inviter,$push_param);
  257. }
  258. private static function buygoods_invitee_text(member_info $user, $goods_name)
  259. {
  260. $text = "您的好友 {$user->nickname()},刚刚购买了《{$goods_name}》.";
  261. return $text;
  262. }
  263. public static function invitee_order_paied($invitee, $user, $goods_info)
  264. {
  265. $user_info = new member_info($user);
  266. $text = self::buygoods_invitee_text($user_info,$goods_info['goods_name']);
  267. $push_param['alias'] = $invitee;
  268. $push_param['title'] = "好友正在买";
  269. $push_param['text'] = $text;
  270. $push_param['extra']['go_type'] = 'bonus';
  271. $push_param['extra']['title'] = "好友正在买";
  272. $push_param['extra']['text'] = $text;
  273. $push_param['extra']['show_type']= 'pop';
  274. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  275. $push_param['extra']['image'] = $goods_info['goods_image'];
  276. QueueClient::push('upushSendMsg',$push_param);
  277. }
  278. public static function user_order_paied($user, $paysn)
  279. {
  280. $text = "请留意发货短信,确认收货后会有红包奖励~";
  281. $push_param['alias'] = $user;
  282. $push_param['title'] = "支付成功";
  283. $push_param['text'] = $text;
  284. $push_param['extra']['go_type'] = '';
  285. $push_param['extra']['title'] = "支付成功";
  286. $push_param['extra']['text'] = $text;
  287. $push_param['extra']['show_type'] = 'pop';
  288. $push_param['extra']['url'] = schema_helper::order_info($paysn);
  289. $push_param['extra']['image'] = self::admin_avatar();
  290. QueueClient::push('upushSendMsg',$push_param);
  291. //self::push($user,$push_param);
  292. }
  293. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  294. public static function user_order_complete_fixed($user, $money, $rate, $type_sn)
  295. {
  296. $desc = self::money_rate_desc($money,$rate);
  297. $text = "您的宝贝已被安全签收,小熊猫送您{$desc}红包,请查收~";
  298. $push_param['alias'] = $user;
  299. $push_param['title'] = "收货红包";
  300. $push_param['text'] = $text;
  301. $push_param['img'] = self::admin_avatar();
  302. $push_param['extra']['go_type'] = 'bonus';
  303. $push_param['extra']['title'] = "收货红包";
  304. $push_param['extra']['text'] = $text;
  305. $push_param['extra']['show_type']= 'pop';
  306. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  307. $push_param['extra']['image'] = self::admin_avatar();
  308. QueueClient::push('upushSendMsg',$push_param);
  309. //self::push($user,$push_param);
  310. }
  311. public static function user_order_complete_random($user,$num,$type_sn)
  312. {
  313. $text = "您的宝贝已被安全签收,小熊猫送您{$num}个可分享红包,分享给小伙伴吧~";
  314. $push_param['alias'] = $user;
  315. $push_param['title'] = "收货可分享红包";
  316. $push_param['text'] = $text;
  317. $push_param['img'] = self::admin_avatar();
  318. $push_param['extra']['go_type'] = 'bonus';
  319. $push_param['extra']['title'] = "收货可分享红包";
  320. $push_param['extra']['text'] = $text;
  321. $push_param['extra']['show_type']= 'pop';
  322. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  323. $push_param['extra']['image'] = self::admin_avatar();
  324. QueueClient::push('upushSendMsg',$push_param);
  325. //self::push($user,$push_param);
  326. }
  327. private static function inviter_order_complete_text(member_info $invitee, $level, $money, $rate)
  328. {
  329. $nickname = $invitee->nickname();
  330. $text = self::money_rate_desc($money, $rate);
  331. return "您的{$level}度粉丝 {$nickname} 下单成功,您获得{$text}红包奖励.";
  332. }
  333. public static function inviter_order_complete_bonus($inviter, $user, $level, $money, $rate, $type_sn,$fQueue=false)
  334. {
  335. $user_info = new member_info($user);
  336. $text = self::inviter_order_complete_text($user_info,$level,$money,$rate);
  337. $push_param['alias'] = $inviter;
  338. $push_param['title'] = "收到粉丝下单红包";
  339. $push_param['text'] = $text;
  340. $push_param['extra']['go_type'] = 'bonus';
  341. $push_param['extra']['title'] = "收到粉丝下单红包";
  342. $push_param['extra']['text'] = $text;
  343. $push_param['extra']['show_type']= 'pop';
  344. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  345. $push_param['extra']['image'] = $user_info->avatar();
  346. self::push($inviter,$push_param,Sms::tpl_order_complete_inviter,['level' => $level,'name' => $user_info->nickname(),'amount' => $money],$fQueue);
  347. }
  348. private static function invitee_order_complete_text(member_info $user, $money, $rate)
  349. {
  350. $nickname = $user->nickname();
  351. $text = self::money_rate_desc($money, $rate);
  352. return "好友{$nickname}下单成功,您获得{$text}红包奖励.";
  353. }
  354. public static function invitee_order_complete_bonus($invitee,member_info $user, $money, $rate, $type_sn,$fQueue=false)
  355. {
  356. $text = self::invitee_order_complete_text($user,$money,$rate);
  357. $push_param['alias'] = $invitee;
  358. $push_param['title'] = "收到好友下单红包";
  359. $push_param['text'] = $text;
  360. $push_param['extra']['go_type'] = 'bonus';
  361. $push_param['extra']['title'] = "收到好友下单红包";
  362. $push_param['extra']['text'] = $text;
  363. $push_param['extra']['show_type']= 'pop';
  364. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  365. $push_param['extra']['image'] = $user->avatar();
  366. self::push($invitee,$push_param,Sms::tpl_order_complete_invitee,['name' => $user->nickname(),'amount' => $money],$fQueue);
  367. }
  368. private static function all_order_complete_text(member_info $user, $money, $rate)
  369. {
  370. $nickname = $user->nickname();
  371. $text = self::money_rate_desc($money, $rate);
  372. return "{$nickname}下单成功,引发红包风暴,您获得{$text}红包奖励.";
  373. }
  374. public static function all_order_complete_bonus($user, member_info $buyer, $money, $rate, $type_sn, $fQueue=false)
  375. {
  376. $text = self::all_order_complete_text($buyer,$money,$rate);
  377. $push_param['alias'] = $user;
  378. $push_param['title'] = "收到下单红包雨";
  379. $push_param['text'] = $text;
  380. $push_param['extra']['go_type'] = 'bonus';
  381. $push_param['extra']['title'] = "收到下单红包雨";
  382. $push_param['extra']['text'] = $text;
  383. $push_param['extra']['show_type']= 'pop';
  384. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  385. $push_param['extra']['image'] = self::admin_avatar();
  386. self::push($user,$push_param,Sms::tpl_order_complete_all,['name' => $buyer->nickname(),'amount' => $money],$fQueue);
  387. }
  388. public static function order_cancel_bonus($member_id,$amount,$rate,$order_sn,$type_sn)
  389. {
  390. $desc = self::money_rate_desc($amount,$rate);
  391. $text = "订单{$order_sn}取消成功,退还{$desc}红包.";
  392. $push_param['alias'] = $member_id;
  393. $push_param['title'] = "收到取消订单红包";
  394. $push_param['text'] = $text;
  395. $push_param['extra']['go_type'] = 'bonus';
  396. $push_param['extra']['title'] = "收到取消订单红包";
  397. $push_param['extra']['text'] = $text;
  398. $push_param['extra']['show_type'] = 'pop';
  399. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  400. $push_param['extra']['image'] = self::admin_avatar();
  401. QueueClient::push('upushSendMsg',$push_param);
  402. }
  403. public static function order_evaluate_bonus($user, $money,$rate,$type_sn)
  404. {
  405. $desc = self::money_rate_desc($money, $rate);
  406. $text = "感谢您的每一个评价,小熊猫送您{$desc}红包,请查收~.";
  407. $push_param['alias'] = $user;
  408. $push_param['title'] = "收到评价红包";
  409. $push_param['text'] = $text;
  410. $push_param['extra']['go_type'] = 'bonus';
  411. $push_param['extra']['title'] = "收到评价红包";
  412. $push_param['extra']['text'] = $text;
  413. $push_param['extra']['show_type'] = 'pop';
  414. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  415. $push_param['extra']['image'] = self::admin_avatar();
  416. QueueClient::push('upushSendMsg',$push_param);
  417. }
  418. private static function inviter_evaluated_text(member_info $user, $level, $goods_name)
  419. {
  420. $text = "您的{$level}度粉丝 {$user->nickname()},刚刚评论了《{$goods_name}》.";
  421. return $text;
  422. }
  423. public static function inviter_order_evaluated($inviter, $user, $level, $goods_info)
  424. {
  425. $user_info = new member_info($user);
  426. $text = self::inviter_evaluated_text($user_info,$level,$goods_info['goods_name']);
  427. $push_param['alias'] = $inviter;
  428. $push_param['title'] = "粉丝正在评论";
  429. $push_param['text'] = $text;
  430. $push_param['extra']['go_type'] = 'bonus';
  431. $push_param['extra']['title'] = "粉丝正在评论";
  432. $push_param['extra']['text'] = $text;
  433. $push_param['extra']['show_type']= 'pop';
  434. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  435. $push_param['extra']['image'] = $goods_info['goods_image'];
  436. QueueClient::push('upushSendMsg',$push_param);
  437. }
  438. private static function invitee_evaluated_text(member_info $user, $goods_name)
  439. {
  440. $text = "您的好友 {$user->nickname()},刚刚评论了《{$goods_name}》.";
  441. return $text;
  442. }
  443. public static function invitee_order_evaluated($invitee, $user, $goods_info)
  444. {
  445. $user_info = new member_info($user);
  446. $text = self::invitee_evaluated_text($user_info,$goods_info['goods_name']);
  447. $push_param['alias'] = $invitee;
  448. $push_param['title'] = "好友正在评论";
  449. $push_param['text'] = $text;
  450. $push_param['extra']['go_type'] = 'bonus';
  451. $push_param['extra']['title'] = "好友正在评论";
  452. $push_param['extra']['text'] = $text;
  453. $push_param['extra']['show_type']= 'pop';
  454. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  455. $push_param['extra']['image'] = $goods_info['goods_image'];
  456. QueueClient::push('upushSendMsg',$push_param);
  457. }
  458. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  459. public static function nofity_ugc_pub($follow,$author_id,$special_id,$title)
  460. {
  461. $author = new member_info($author_id);
  462. $text = "好友{$author->nickname()} 发表文章《{$title}》";
  463. $push_param['alias'] = $follow;
  464. $push_param['title'] = "好友发表文章";
  465. $push_param['text'] = $text;
  466. $push_param['extra']['go_type'] = 'bonus';
  467. $push_param['extra']['title'] = "好友发表文章";
  468. $push_param['extra']['text'] = $text;
  469. $push_param['extra']['show_type']= 'pop';
  470. $push_param['extra']['url'] = schema_helper::ugc($title,$special_id);
  471. $push_param['extra']['image'] = $author->avatar();
  472. QueueClient::push('upushSendMsg',$push_param);
  473. }
  474. public static function nofity_ugc_submit($author,$reader,$special_id,$title)
  475. {
  476. $user = new member_info($reader);
  477. $text = "好友{$user->nickname()} 阅读了您的文章《{$title}》";
  478. $push_param['alias'] = $author;
  479. $push_param['title'] = "好友阅读文章";
  480. $push_param['text'] = $text;
  481. $push_param['extra']['go_type'] = 'bonus';
  482. $push_param['extra']['title'] = "好友阅读文章";
  483. $push_param['extra']['text'] = $text;
  484. $push_param['extra']['show_type']= 'pop';
  485. $push_param['extra']['url'] = schema_helper::ugc($title,$special_id);
  486. $push_param['extra']['image'] = $user->avatar();
  487. QueueClient::push('upushSendMsg',$push_param);
  488. }
  489. public static function nofity_ugc_comment($author,$commender,$fcomment,$special_id,$content,$article_title)
  490. {
  491. $commender = new member_info($commender);
  492. if($fcomment) {
  493. $title = '收到留言回复';
  494. $text = "好友{$commender->nickname()} 回复您的评论:{$content}";
  495. } else {
  496. $title = '收到文章评论';
  497. $text = "文章《{$article_title}》收到一个新评论";
  498. }
  499. $push_param['alias'] = $author;
  500. $push_param['title'] = $title;
  501. $push_param['text'] = $text;
  502. $push_param['extra']['go_type'] = '';
  503. $push_param['extra']['title']= $title;
  504. $push_param['extra']['text'] = $text;
  505. $push_param['extra']['show_type'] = 'pop';
  506. $push_param['extra']['url'] = schema_helper::ugc($article_title,$special_id);
  507. $push_param['extra']['image'] = $commender->avatar();
  508. QueueClient::push('upushSendMsg',$push_param);
  509. }
  510. public static function nofity_ugc_support($author,$commender,$fcomment,$special_id,$content,$article_title)
  511. {
  512. if($commender > 0)
  513. {
  514. $commender = new member_info($commender);
  515. if($fcomment) {
  516. $text = "{$commender->nickname()} 点赞您的评论:{$content}";
  517. } else {
  518. $text = "{$commender->nickname()} 点赞您的文章《{$article_title}》";
  519. }
  520. $push_param['extra']['image'] = $commender->avatar();
  521. }
  522. else
  523. {
  524. if($fcomment) {
  525. $text = "刚刚有人点赞您的评论:{$content}";
  526. } else {
  527. $text = "刚刚有人点赞您的文章《{$article_title}》";
  528. }
  529. $push_param['extra']['image'] = "";
  530. }
  531. $push_param['alias'] = $author;
  532. $push_param['title'] = '收到点赞';
  533. $push_param['text'] = $text;
  534. $push_param['extra']['go_type'] = '';
  535. $push_param['extra']['title']= '收到点赞';
  536. $push_param['extra']['text'] = $text;
  537. $push_param['extra']['show_type'] = 'pop';
  538. $push_param['extra']['url'] = schema_helper::ugc($article_title,$special_id);
  539. QueueClient::push('upushSendMsg',$push_param);
  540. }
  541. public static function nofity_ugc_appreciate($author,$user,$special_id,$article,$rate,$amount)
  542. {
  543. $user_info = new member_info($user);
  544. $name = $user_info->nickname();
  545. $desc = self::money_rate_desc($amount,$rate);
  546. $text = "{$name}打赏您的文章《{$article}》{$desc}红包,快去查看吧.";
  547. $push_param['alias'] = $author;
  548. $push_param['title'] = "文章打赏";
  549. $push_param['text'] = $text;
  550. $push_param['extra']['go_type'] = 'bonus';
  551. $push_param['extra']['title'] = "文章打赏";
  552. $push_param['extra']['text'] = $text;
  553. $push_param['extra']['show_type'] = 'pop';
  554. $push_param['extra']['url'] = schema_helper::ugc($article,$special_id);
  555. $push_param['extra']['image'] = $user_info->avatar();
  556. QueueClient::push('upushSendMsg',$push_param);
  557. }
  558. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  559. public static function fcode_unlock($member_id,$num)
  560. {
  561. $text = "F码解锁通知:您有{$num}个F码已成功解锁,请注意过期时间~.";
  562. $push_param['alias'] = $member_id;
  563. $push_param['title'] = "F码";
  564. $push_param['text'] = $text;
  565. $push_param['extra']['go_type'] = 'fcode';
  566. $push_param['extra']['title'] = "F码";
  567. $push_param['extra']['text'] = $text;
  568. $push_param['extra']['show_type'] = 'pop';
  569. $push_param['extra']['url'] = schema_helper::mine_fcode();
  570. $push_param['extra']['image'] = self::admin_avatar();
  571. QueueClient::push('upushSendMsg', $push_param);
  572. }
  573. public static function notice_expring($member_id,$amount,$remain_days)
  574. {
  575. $minfo = new member_info($member_id);
  576. $text = "红包过期提醒:您价值{$amount}元的红包即将在{$remain_days}天内过期,尽快使用或者慷慨地分享给好友吧~";
  577. $push_param['alias'] = $member_id;
  578. $push_param['title'] = "红包过期提醒";
  579. $push_param['text'] = $text;
  580. $push_param['extra']['go_type'] = 'fcode';
  581. $push_param['extra']['title']= "红包过期提醒";
  582. $push_param['extra']['text'] = $text;
  583. $push_param['extra']['show_type'] = 'pop';
  584. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/mine/fcode';
  585. $push_param['extra']['image'] = $minfo->avatar();
  586. QueueClient::push('upushSendMsg', $push_param);
  587. }
  588. public static function notice_expired($member_id,$amount)
  589. {
  590. $minfo = new member_info($member_id);
  591. $text = "红包过期通知:您价值{$amount}元的红包已过期,别伤心,每天十点试试手气,可以继续赚红包哦~";
  592. $push_param['alias'] = $member_id;
  593. $push_param['title'] = "红包过期通知";
  594. $push_param['text'] = $text;
  595. $push_param['extra']['go_type'] = 'bonus';
  596. $push_param['extra']['title']= "红包过期提醒";
  597. $push_param['extra']['text'] = $text;
  598. $push_param['extra']['show_type'] = 'pop';
  599. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/mine/fcode';
  600. $push_param['extra']['image'] = $minfo->avatar();
  601. QueueClient::push('upushSendMsg', $push_param);
  602. }
  603. public static function notice_subscribe($member_id,member_info $user)
  604. {
  605. $name = $user->nickname();
  606. $text = "手机{$name}用户,关注了你~";
  607. $push_param['alias'] = $member_id;
  608. $push_param['title'] = "好友关系";
  609. $push_param['text'] = $text;
  610. $push_param['extra']['go_type'] = 'bonus';
  611. $push_param['extra']['title']= "好友关系";
  612. $push_param['extra']['text'] = $text;
  613. $push_param['extra']['show_type'] = 'pop';
  614. $push_param['extra']['image'] = $user->avatar();
  615. QueueClient::push('upushSendMsg',$push_param);
  616. }
  617. public static function oper_push($member_id,$content)
  618. {
  619. $minfo = new member_info($member_id);
  620. $push_param['alias'] = $member_id;
  621. $push_param['title'] = "日常活动";
  622. $push_param['text'] = $content;
  623. $push_param['extra']['go_type'] = '';
  624. $push_param['extra']['title']= "日常活动";
  625. $push_param['extra']['text'] = $content;
  626. $push_param['extra']['show_type'] = 'pop';
  627. $push_param['extra']['image'] = $minfo->avatar();
  628. QueueClient::push('upushSendMsg',$push_param);
  629. }
  630. public static function format_msg($member_id,$content)
  631. {
  632. $param['alias'] = $member_id;
  633. $param['text'] = $content;
  634. $param['extra']['go_type'] = '';
  635. $param['extra']['show_type'] = 'pop';
  636. return $param;
  637. }
  638. public static function fcode_warning($cid,$member_id,$usable_time)
  639. {
  640. $minfo = new member_info($member_id);
  641. $goods_name = self::goods_name($cid);
  642. $remain_days = intval((time() - $usable_time) / 86400);
  643. if(!empty($goods_name))
  644. {
  645. $param = [];
  646. $param['alias'] = $member_id;
  647. $param['title'] = "F码过期提醒";
  648. if($remain_days > 0) {
  649. $text = "F码过期提醒:您《{$goods_name}》的F码即将在{$remain_days}天内过期,请尽快使用";
  650. } else {
  651. $text = "F码过期提醒:您《{$goods_name}》的F码即将在今天过期,请尽快使用";
  652. }
  653. $param['text'] = $text;
  654. $param['extra']['go_type'] = 'fcode';
  655. $param['extra']['title']= "用户评价";
  656. $param['extra']['text'] = $text;
  657. $param['extra']['show_type'] = 'pop';
  658. $param['extra']['url'] = 'xmmz://p.lrlz.com/mine/fcode';
  659. $param['extra']['image'] = $minfo->avatar();
  660. QueueClient::push('upushSendMsg', $param);
  661. }
  662. }
  663. private static function goods_name($cid)
  664. {
  665. $items = Model()->table('goods_common')->field('goods_name')->where(['goods_commonid' => $cid])->select();
  666. if(empty($items)) {
  667. return false;
  668. }
  669. else {
  670. return $items[0]['goods_name'];
  671. }
  672. }
  673. private static function pushurl()
  674. {
  675. $url = BASE_SITE_URL . "/mobile/index.php?act=webpush";
  676. return $url;
  677. }
  678. //DialogMessage
  679. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  680. public static function poor_user_bonus($user, $money, $rate, $type_sn, $fQueue=false)
  681. {
  682. // $url = self::pushurl() . "&op=bonus&type_sn={$type_sn}";
  683. $desc = self::money_rate_desc($money,$rate);
  684. $text = "您的红包余额不足,好心人紧急为您充值{$desc}红包~";
  685. $push_param['alias'] = $user;
  686. $push_param['title'] = "收到津贴红包";
  687. $push_param['text'] = $text;
  688. $push_param['extra']['go_type'] = 'bonus';
  689. $push_param['extra']['title'] = "收到津贴红包";
  690. $push_param['extra']['text'] = $text;
  691. $push_param['extra']['show_type']= 'pop';
  692. $push_param['extra']['url'] = url_helper::bonus_open_url($type_sn);
  693. $push_param['extra']['image'] = self::admin_avatar();
  694. self::push($user,$push_param);
  695. }
  696. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  697. public static function first_present($member_id,$fcode)
  698. {
  699. $fc_id = intval($fcode['fc_id']);
  700. $url = self::pushurl() . "&op=fcode&fc_id={$fc_id}";
  701. $minfo = new member_info($member_id);
  702. $push_param['alias'] = $member_id;
  703. $push_param['title'] = "收到下单首单礼";
  704. $text = "恭喜您获得首单礼,现在就去下单";
  705. $push_param['text'] = $text;
  706. $push_param['extra']['go_type'] = '';
  707. $push_param['extra']['title']= "下单首单礼";
  708. $push_param['extra']['text'] = $text;
  709. $push_param['extra']['show_type'] = 'dialog';
  710. $push_param['extra']['image'] = $minfo->avatar();
  711. $push_param['extra']['url'] = $url;
  712. QueueClient::push('upushSendMsg',$push_param);
  713. }
  714. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  715. public static function call_friends($caller,$callee)
  716. {
  717. $minfo = new member_info($caller);
  718. $push_param['alias'] = $callee;
  719. $push_param['title'] = "{$minfo->nickname()} 的召唤";
  720. $text = "我正在赚红包,你也有得赚,赶快登陆App查看你的红包余额,赢免费大牌美妆~";
  721. $push_param['text'] = $text;
  722. $push_param['extra']['go_type'] = '';
  723. $push_param['extra']['title']= "{$minfo->nickname()} 的召唤";
  724. $push_param['extra']['text'] = $text;
  725. $push_param['extra']['show_type'] = 'pop';
  726. $push_param['extra']['image'] = $minfo->avatar();
  727. $push_param['extra']['url'] = schema_helper::invite_page();
  728. self::push($callee,$push_param,Sms::tpl_call_user_back,['name' => $minfo->nickname()],true);
  729. }
  730. public static function pop_message($user, $title, $text,$url)
  731. {
  732. $push_param['alias'] = $user;
  733. $push_param['title'] = $title;
  734. $push_param['text'] = $text;
  735. $push_param['extra']['go_type'] = '';
  736. $push_param['extra']['title']= $title;
  737. $push_param['extra']['text'] = $text;
  738. $push_param['extra']['show_type'] = 'pop';
  739. $push_param['extra']['image'] = self::admin_avatar();
  740. $push_param['extra']['url'] = $url;
  741. return $push_param;
  742. }
  743. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  744. public static function bargain_bonus($user, $money,$type_sn,$fQueue=false)
  745. {
  746. $text = "您获得{$money}元的砍价红包,请查收~";
  747. $push_param['alias'] = $user;
  748. $push_param['title'] = "收到砍价红包";
  749. $push_param['text'] = $text;
  750. $push_param['extra']['go_type'] = 'bonus';
  751. $push_param['extra']['title'] = "收到砍价红包";
  752. $push_param['extra']['text'] = $text;
  753. $push_param['extra']['show_type'] = 'pop';
  754. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  755. $push_param['extra']['image'] = self::admin_avatar();
  756. QueueClient::push('upushSendMsg',$push_param);
  757. }
  758. }
  759. class push_event
  760. {
  761. static public function publish_special($member_ids,$ispub,$count)
  762. {
  763. if($ispub) {
  764. $visible_type = 'pub_visible';
  765. } else {
  766. $visible_type = 'pri_visible';
  767. }
  768. foreach ($member_ids as $member_id)
  769. {
  770. $info['alias'] = $member_id;
  771. $info['custom'] = ['type' => 'add_special','visible_type' => $visible_type,'count' => $count];
  772. QueueClient::push('sendPushMessage',$info);
  773. }
  774. }
  775. }