这个词条被刷上热搜好几波,我观察到了身边的一些有趣现象,不同角色的人他们站队和态度截然不同。

  • 老板、高管 无不例外的站队杰克马身后、苦口婆心996是光、是热、是苦口济世良药。既得利益者,很好理解哼?
  • 大神和公知 一致表态:血汗工厂!违法!反人类!也许他们当中有工作起来比996更拼的,但他们基本已经脱离了需要被996的生活状态
  • 没啥关系的吃瓜群众 这个群体最有趣的,他们甚至不是圈内人但口号倒是惊奇的一致:有赞白鸦沙比!狗东大沙比! 看热闹不嫌事大吧?
  • 中层管理者 夹在中间显得小心谨慎,要么三咸其口要么小声苦逼表示:苟活不易且行且珍惜

你问我怎么看?
现在凌晨2:38我刚把今天(误,昨天)的工作做完,你问我怎么看???

接续处理前几天的需求,这两天原本是在思考公众号的响应交互有没有办法在被动回给用户一条多图文消息后,根据用户的点击动作继续给用户响应文本或图文消息。

不查不要紧,一查发现™D水真深,又是一个大坑。
首先我在官方的文档原文看到了一句之前未曾见到的补充说明
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140543

回复图文消息 的参数说明内

ArticleCount 是(是否必须) 图文消息个数;当用户发送文本、图片、视频、图文、地理位置这五种消息时,开发者只能回复1条图文消息;其余场景最多可回复8条图文消息
Articles 是(是否必须) 图文消息信息,注意,如果图文数超过限制,则将只发限制内的条数

似乎是2018年底开始的改动,而且是偷偷改的,并未在微信开发者更新上进行公告。
?!! 那就是说, 只有事件型的响应例如关注、扫码 才可以触发最多8个items的图文消息,消息型的响应被阉割成1条了

然后我又查到了微信公众号开发者论坛的这条
https://developers.weixin.qq.com/community/develop/doc/0006c2dd60c6188526e7194ec56800?page=1#comment-list

里面也是一片惨叫。1250张八骏图从心里滚过..

立刻自己测试一下..

//该测试显示多图文
unset($its);

$its[0]["Title"]="测试显示多图文信息的复数查询结果";
$its[0]["PicUrl"]="http://wx.praysatoshi.top/wxservice/ruoyu_test/test_location_sm.png";    
$its[1]["Title"]="lat:".$lat;    
$its[2]["Title"]="lon:".$lon;
$its[3]["Title"]="以上是刚才上报的位置信息";
$its[4]["Title"]="多图文推送测试结束.";
die($this->xmlNews($fromUsername,$toUsername,$its)); //应推送出1+4 的5项图文信息块

...

/**
 * wechatCallbackapiTest::xmlNews()
 * 生成图文信息
 * @param mixed $fromUsername
 * @param mixed $toUsername
 * @param Array $items  
 * @return String $xml
 * items的元素(keys)有
 * Title
 * Description
 * PicUrl 首图360*200,小图200*200
 * Url
 */
 private function xmlNews($fromUsername,$toUsername,$items){
    $time = time();
    $xmlTpl = "<xml>
                <ToUserName><![CDATA[%s]]></ToUserName>
                <FromUserName><![CDATA[%s]]></FromUserName>
                <CreateTime>%s</CreateTime>
                <MsgType><![CDATA[news]]></MsgType>
                <ArticleCount>%s</ArticleCount>
                <Articles>
                %s
                </Articles>
               </xml>";

    $itemCount = count($items);

    //组织items串
    $stritem = "";
    foreach($items as $item){
        $stritem .="<item>";

        if($item["Title"]) $stritem .= "
                <Title><![CDATA[{$item["Title"]}]]></Title>";
        if($item["Description"]) $stritem .= " 
                <Description><![CDATA[{$item["Description"]}]]></Description>";
        if($item["PicUrl"]) $stritem .= "
                <PicUrl><![CDATA[{$item["PicUrl"]}]]></PicUrl>";
        if($item["Url"]) $stritem .= "
                <Url><![CDATA[{$item["Url"]}]]></Url>";
            else  $stritem .= "
                <Url><![CDATA[]]></Url>";          

        $stritem .="</item>";
    }

    $resultStr = sprintf($xmlTpl, $fromUsername, $toUsername, $time, $itemCount, $stritem);
    return $resultStr; 
}

微信图片_20190416021044.jpg

触发交互——SHIT! 实锤了!!

结论

安逸了..不用想微信内的交互了,明天向甲方解释一下..死了心做jssdk上的H5交互..

微信固然有自己的考虑,但从来当开发者和公众号用户的呼声是屎一样..着实被恶心了一次又一次,大家都想逃离然而又显得那么无可奈何。
当有实力抗衡这匹独角兽的挑战者出现的时候大家的义无反顾也会变得理所当然吧。

一次意外断电,造成lnmp没有正常自启动(wwwroot用sd卡mount的),开始以为是启动脚本没写好,忘了mount sd 卡。
手动mount完之后 lnmp提示restart成功。 但在浏览器端始终无法打开文件,加载到超时。再后来发现在ssh上看sd卡上的文件系统也是提示大量的错误类似于

flamen@z8350:/mnt/sdcard$ ls -l
ls: 无法访问'wwwroot': 输入/输出错误
ls: 无法访问'bakwallet': 输入/输出错误
ls: 无法访问'script': 输入/输出错误
总用量 32
...

试过重启,插拔 sd卡,均无效。
查了下,用以下命令修复成功

fsck -y /dev/mmcblk1p1

(sd卡的分区的名称是 /dev/mmcblk1p1)

fsck -y /dev/mmcblk1p1 
fsck,来自 util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
/dev/mmcblk1p1: 正在修复日志
/dev/mmcblk1p1: clean, 12652/1954064 files, 1103525/7814912 blocks
root@z8350:/dev# reboot

执行完之后重启,一切恢复正常