国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

workerman怎么推送微信模板消息

crelaber

請(qǐng)問(wèn)下我有如下需求
項(xiàng)目需求是這樣,

管理員通過(guò)在頁(yè)面前端創(chuàng)建課程,當(dāng)課程創(chuàng)建成功之后要給平臺(tái)所有的用戶推送一條微信模板消息,原先我是直接通過(guò) 順序執(zhí)行發(fā)送微信模板消息,但是這種情況下由于nginx服務(wù)器超時(shí)機(jī)制,會(huì)導(dǎo)致很多的人收不到消息,所以必須更改策略,請(qǐng)問(wèn)下使用workman怎么來(lái)實(shí)現(xiàn)給每個(gè)用戶推送微信模板消息(需要與微信服務(wù)器進(jìn)行交互)呢?

8500 3 0
3個(gè)回答

walkor 打賞

你把流程圖畫下吧

  • crelaber 2016-08-05

    管理員發(fā)布課程 ------>ajax提交數(shù)據(jù)

    后端處理
    1、添加課程數(shù)據(jù)到數(shù)據(jù)庫(kù)
    2、查詢?cè)撜n程對(duì)應(yīng)的機(jī)構(gòu)下所有的關(guān)注者列表
    3、循環(huán)遍歷關(guān)注著獲取用戶的openid
    4、通過(guò)openid調(diào)用封裝好的發(fā)送微信模板方法發(fā)送消息通知(這里是順序進(jìn)行,因?yàn)槌跗跊](méi)有考慮到用戶量以及線程堵塞的問(wèn)題)

    后端偽代碼如下
    $this->model('course')->add_course($course_data);
    $organ_id = $_post['organ_id']; //機(jī)構(gòu)id
    $follow_list = $this->model('organ')->get_follow_list($organ_id);

    foreach($follow_list as $key => $val){

    $this->model('weixin')->send_tpl_msg($val['openid']);

    }

crelaber

管理員發(fā)布課程 ------>ajax提交數(shù)據(jù)

后端處理
1、添加課程數(shù)據(jù)到數(shù)據(jù)庫(kù)
2、查詢?cè)撜n程對(duì)應(yīng)的機(jī)構(gòu)下所有的關(guān)注者列表
3、循環(huán)遍歷關(guān)注著獲取用戶的openid
4、通過(guò)openid調(diào)用封裝好的發(fā)送微信模板方法發(fā)送消息通知b

后端偽代碼如下

$this->model('course')->add_course($course_data);
$organ_id = $_post;  //機(jī)構(gòu)id
$follow_list = $this->model('organ')->get_follow_list($organ_id);

foreach($follow_list as $key => $val){

     $this->model('weixin')->send_tpl_msg($val);

}
  • 暫無(wú)評(píng)論
walkor 打賞

你可以用http://m.wtbis.cn/workerman-jsonrpc,它可以異步并行處理業(yè)務(wù)。

1、Applications/JsonRpc/Services 下新建Weixin.php

<?php
class Weixin
{
    public static function sendTplMsg($openid)
    {
        // 通過(guò)openid調(diào)用封裝好的發(fā)送微信模板方法發(fā)送消息通知
        send_tpl_msg($openid)
    }
}

2、啟動(dòng)服務(wù)端
調(diào)試方式終端命令行運(yùn)行,此方式運(yùn)行可以調(diào)試服務(wù)端錯(cuò)誤
php start.php start

正式環(huán)境終端命令行運(yùn)行,守護(hù)進(jìn)程方式運(yùn)行
php start.php start -d

3、網(wǎng)頁(yè)調(diào)用的時(shí)候像這樣

include_once 'yourClientDir/RpcClient.php';
// 服務(wù)端列表
$address_array = array('tcp://127.0.0.1:2015');
RpcClient::config($address_array);
$weixin = RpcClient::instance('Weixin');
foreach($follow_list as $key => $val){
    $weixin->asend_sendTplMsg($val);
}

4、workerman-jsonrpc只支持Linux系統(tǒng),win系統(tǒng)就不要想了。

  • crelaber 2016-08-08

    好的,多謝大大

  • lanlang666 2018-10-25

    @1209:有些問(wèn)題求教 留個(gè)聯(lián)系方式被

年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??