找回密码
 立即注册
搜索
查看: 5821|回复: 30

[流程系列] 精简油价流(被鸽自搞版)

[复制链接]

42

主题

2175

回帖

8704

积分

元老级技术达人

积分
8704
金钱
6472
HASS币
110
发表于 2024-3-28 09:55:33 | 显示全部楼层 |阅读模式
本帖最后由 ghostist 于 2024-3-28 15:49 编辑

精简油价流/增加油价变动提醒 - 『Node-RED』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz! (hassbian.com)
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
迫于这哥们放鸽子,自己搞了
说什么测试几天稳定,搞不懂有啥好测试的,接口都一样,接口噶了原版也噶

---------说正事分割线----------------------
完全兼容之前的版本,不需要重新写markdowm卡

---------吐槽分割线----------------------
话说这哥们发的全是分享,一个配置都不上
不喜欢这种吊胃口
要么就别发
---------补充分割线-----------------------
早上用chatgpt辅助,大概10分钟不到就完成了,最近几次搞NR用到function节点都配合gpt,效率很高,推荐!
补个图,也是5个节点
微信截图_20240328154710.png
OilPrice.zip (1.3 KB, 下载次数: 340)

评分

参与人数 10金钱 +65 收起 理由
xhily + 4 感谢楼主分享!
PerryLayne + 7 感谢大神分享
xiangboshi + 5 膜拜大神!
Dlian + 5 感谢楼主分享!
warmsake + 8 论坛有你更精彩!
hungheo + 5 感谢楼主分享!
zxyny1989 + 12 感谢楼主分享!
[email protected] + 2 高手,这是高手!
baobaobuku + 5 感谢楼主分享!
隔壁的王叔叔 + 12 感谢楼主分享!

查看全部评分

回复

使用道具 举报

0

主题

6

回帖

68

积分

注册会员

积分
68
金钱
62
HASS币
0
发表于 2024-4-2 15:27:30 | 显示全部楼层
稍微加了一点逻辑,支持了微信每日推送,推送插件请参考论坛内教程。
首先通过switch节点过滤包含“油价”的消息,过滤对象为“msg.message.Content”,然后通过change节点,把查询者“msg.message.FromUserName”记录到“flow.touser”中作为回复对象,最后在作者函数后面加一个函数构建推送消息,参考如下:
var newmsg={};

var prices = msg.price;

var tips = msg.tips;

var state = msg.state;

// 构建Markdown消息
var markdownContent = `
# 今日油价

| 汽油类型 | 价格(元/升) |
| :--------: | :------------: |
`;

// 遍历价格数据并构建Markdown表格的行
for (var i = 0; i < prices.length; i += 2) {
    markdownContent += `| ${prices[i]} | ${prices[i + 1]} |\n`;
}

// 将油价提示信息和油价状态信息整合到Markdown消息中
markdownContent += `
## 油价状态
${state}

## 油价变动
${tips}
`;

// 将Markdown消息作为payload发送
newmsg.payload = markdownContent;

// 将92#汽油价格作为标题,95#用prices[3],98#用prices[5],柴油用prices[7]
newmsg.introduction="92号汽油:"+prices[1]+"元/升,更多内容请点击查看。"

// 当消息由微信触发时,发送给指定查询者;定时则消息发送给所有人。
if(flow.get("touser")!==undefined)
newmsg.touser=flow.get("touser");

return newmsg;


以下为修改后的流程参考图:
屏幕截图 2024-04-02 151657.png


回复

使用道具 举报

0

主题

16

回帖

173

积分

注册会员

积分
173
金钱
157
HASS币
0
发表于 2024-4-2 16:46:48 | 显示全部楼层
自己找到markdown怎么写了 有需要的可以借鉴

<ha-icon icon="mdi:update"></ha-icon> {{ states.sensor.zuixinyoujia.last_changed.strftime('%Y-%m-%d') }}
## <center>92# <ha-icon icon="mdi:gas-station"></ha-icon>  <font color=#ea4335> {{ state_attr('sensor.zuixinyoujia', '92')}} </font>  &nbsp; &nbsp;   95# <ha-icon icon="mdi:gas-station"></ha-icon>  <font color=#fbbc05>  {{ state_attr('sensor.zuixinyoujia', '95')}} </font> <p> &nbsp; 98# <ha-icon icon="mdi:gas-station"></ha-icon> <font color=#4285f4>  {{ state_attr('sensor.zuixinyoujia', '98')}}</font>   &nbsp; &nbsp; &nbsp;  0#柴<ha-icon icon="mdi:gas-station"></ha-icon> <font color=#34a853>  {{ state_attr('sensor.zuixinyoujia', '0')}} </font></center>
- {{ states('sensor.zuixinyoujia') }}

- {{ state_attr('sensor.zuixinyoujia','tips')}}

评分

参与人数 1金钱 +3 收起 理由
xhily + 3 论坛有你更精彩!

查看全部评分

回复

使用道具 举报

hhh. 手机认证

10

主题

326

回帖

2888

积分

论坛UI达人

积分
2888
金钱
2552
HASS币
0
发表于 2024-5-4 18:25:59 | 显示全部楼层
去除广告信息

var OilPrice = msg.payload[0].split('\n');
// 去除数组中的空元素
var filteredArray = OilPrice.filter(function (element) {
    return element !== '';
});

var StateTips = msg.payload[1].split('\n');
var endIndex = StateTips[2].indexOf('。');
var TipsTips = StateTips[2].substring(0, endIndex + 1);

var newmsg = {};
newmsg.price = filteredArray;
newmsg.state = StateTips[1];
newmsg.tips = TipsTips;

return newmsg;
回复

使用道具 举报

1

主题

136

回帖

3184

积分

论坛元老

积分
3184
金钱
3047
HASS币
0
发表于 2024-3-28 10:49:30 | 显示全部楼层
这哥们在b站卖精简油价的流
回复

使用道具 举报

4

主题

94

回帖

791

积分

高级会员

积分
791
金钱
693
HASS币
0
发表于 2024-3-28 10:54:05 | 显示全部楼层
学习一下
回复

使用道具 举报

Ari 手机认证

0

主题

674

回帖

2873

积分

金牌会员

积分
2873
金钱
2199
HASS币
0
发表于 2024-3-28 10:56:07 | 显示全部楼层
顶楼主!既然想分享就直接分享,要收费就明说好了
回复

使用道具 举报

14

主题

1578

回帖

5180

积分

论坛元老

积分
5180
金钱
3588
HASS币
0
发表于 2024-3-28 10:56:18 | 显示全部楼层
虽然我不会写,但是我会评分,感谢大佬分享。
回复

使用道具 举报

179

主题

2676

回帖

8983

积分

元老级技术达人

积分
8983
金钱
6118
HASS币
50
发表于 2024-3-28 12:50:21 | 显示全部楼层
是的,我也赞同楼主的说法,想分享,就大公无私,尽可能把要点和操作步骤都写清楚,不要写的含含糊糊的,
回复

使用道具 举报

1

主题

191

回帖

1803

积分

金牌会员

积分
1803
金钱
1611
HASS币
0
发表于 2024-3-28 14:46:24 | 显示全部楼层
楼主给力,非常赞同
回复

使用道具 举报

7

主题

316

回帖

2502

积分

金牌会员

积分
2502
金钱
2179
HASS币
0
发表于 2024-3-28 16:07:04 | 显示全部楼层
特意跑进来看看发生什么事情。哈哈~~~
回复

使用道具 举报

3

主题

381

回帖

3596

积分

论坛元老

积分
3596
金钱
3212
HASS币
0
发表于 2024-3-28 16:13:27 | 显示全部楼层
baobaobuku 发表于 2024-3-28 10:49
这哥们在b站卖精简油价的流

真相帝!!
回复

使用道具 举报

15

主题

493

回帖

2811

积分

金牌会员

积分
2811
金钱
2303
HASS币
0
发表于 2024-3-28 16:39:15 | 显示全部楼层
楼主给力,那种装逼分享的,确实不怎么样
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-7-6 01:20 , Processed in 0.065186 second(s), 16 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表