push_helper.php 37 KB

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