Filtre des objets de télégrammes RAW (généralement produits par KNX Multi Routing) avant de les transmettre vers un autre gateway.
Syntaxe des motifs
- Motifs dâadresse de groupe (GA) avec
*par niveau :0/0/*correspond Ă toutes les GA dans0/00Ă©quivaut Ă0/*/*
- Motifs Source (adresse physique) avec
*par niveau :1.1.*correspond Ă tous les appareils sur zone1, ligne11Ă©quivaut Ă1.*.*
- Avancé :
re:<regex>pour utiliser directement une regex.
Mode (GA / Source)
- Off : pas de filtrage
- Allow only matching : autorise uniquement ce qui correspond
- Block matching : bloque ce qui correspond
Sorties
- Passés (à transmettre)
- Rejetés (debug optionnel)
Réécriture (Rewrite)
Vous pouvez réécrire (optionnellement) :
- destination (adresse de groupe)
knx.destination - source (adresse physique)
knx.source
Lors dâune réécriture, le nĆud met aussi Ă jour knx.cemi.hex pour reflĂ©ter les valeurs réécrites de knx.source/knx.destination (lorsque knx.cemi.hex est prĂ©sent).
Les rÚgles sont évaluées de haut en bas (premiÚre correspondance gagnante).
Exemples :
- Wildcards :
0/0/* => 2/0/*(le*est capturé et réutilisé) - Regex :
re:^1/2/(\\d+)$ => 3/2/$1
Métadonnées
Le nĆud ajoute msg.payload.knxRouterFilter :
- rejetés :
{ dropped: true, reason: 'event'|'ga'|'source', ... } - passés :
{ dropped: false, rewritten: <bool>, cemiSynced: <bool>, rewrite: { ... }, original: { ... } }
msg.setConfig
Vous pouvez modifier la configuration du nĆud Ă lâexĂ©cution en envoyant un objet msg.setConfig Ă lâentrĂ©e.
Clés prises en charge : allowWrite, allowResponse, allowRead, gaMode, gaPatterns, srcMode, srcPatterns, rewriteGA, gaRewriteRules, rewriteSource, srcRewriteRules.
La configuration est conservĂ©e jusquâau prochain msg.setConfig ou jusquâĂ un redeploy/redĂ©marrage. Les messages de configuration ne sont pas transmis.
Signification des propriétés :
allowWrite: autorise les télégrammesGroupValue_Write.allowResponse: autorise les télégrammesGroupValue_Response.allowRead: autorise les télégrammesGroupValue_Read.gaMode: mode de filtre GA de destination (off= pas de filtre,allow= autoriser uniquement les correspondances,block= bloquer les correspondances).gaPatterns: motifs GA de destination utilisés pargaMode(un par ligne, supporte*etre:<regex>).srcMode: mode de filtre Source (adresse physique) (off/allow/block).srcPatterns: motifs Source utilisés parsrcMode(un par ligne, supporte*etre:<regex>).rewriteGA: active la réécriture deknx.destinationsur les télégrammes passés.gaRewriteRules: rÚgles de réécriture GA (de => vers, premiÚre correspondance gagnante ; supporte*etre:<regex>).rewriteSource: active la réécriture deknx.sourcesur les télégrammes passés.srcRewriteRules: rÚgles de réécriture Source (de => vers, premiÚre correspondance gagnante ; supporte*etre:<regex>).
Exemple :
msg.setConfig = {
allowWrite: true,
allowResponse: true,
allowRead: true,
gaMode: "allow",
gaPatterns: "1/1/*\n1/2/3",
srcMode: "off",
srcPatterns: "",
rewriteGA: true,
gaRewriteRules: "5/5/1 => 1/1/1",
rewriteSource: true,
srcRewriteRules: "15.*.* => 1.1.254"
};
return msg;