Le champ de recherche de la page Moniteur fait plus que rechercher du texte. Il comprend un petit langage de filtrage, vous pouvez donc faire correspondre les faits KNX exacts (adresses de groupe, expéditeurs, services de télégramme, priorité, nombre de sauts, valeurs décodées) et les combiner avec AND, OR et NOT. Cette page est la référence complète.
L'application d'un filtre vérifie une fois chaque télégramme déjà présent dans le moniteur ; les nouveaux télégrammes sont ensuite vérifiés au fur et à mesure de leur arrivée. Le filtre ne modifie que ce que vous voyez : rien n'est supprimé.
Exemples rapides
| Filtre | Spectacles |
|---|---|
kitchen |
Chaque ligne contenant kitchen - dans un nom, une valeur, une adresse ou ailleurs |
1/2/3 |
Télégrammes à l'adresse de groupe 1/2/3 |
1/2/* |
Télégrammes à n'importe quelle adresse de groupe sous 1/2 |
1.1.5 |
Télégrammes envoyés par l'appareil 1.1.5 |
1.1.* |
Télégrammes envoyés par n'importe quel appareil en ligne 1.1 |
apci:GroupValueWrite |
Écrire uniquement des télégrammes |
priority:urgent |
Télégrammes avec priorité Urgente |
value>=20 |
Télégrammes dont la valeur décodée est 20 ou plus |
ga:1/2/* + value>=20 |
Regrouper les adresses sous 1/2 avec une valeur de 20 ou plus |
src:1.1.* | src:1.2.* |
Télégrammes de la ligne 1.1 ou de la ligne 1.2 |
!kind:gap |
Tout sauf des lacunes dans l'enregistrement |
Laissez les sélecteurs créer des filtres pour vous
Vous n'êtes pas obligé de saisir des filtres. Le bouton Recherche à côté du champ (adresses de groupe et appareils de votre projet ETS) et Voir → Voir le Groupe dans la ligne des badges (adresses, types de télégrammes, priorité) les créent pour vous - choisir un expéditeur donne src:1.1.5, choisir Urgent donne priority:urgent, et ainsi de suite.
Si un filtre est déjà actif, SharKNX demande comment ajouter le nouveau :
| Choix | Résultat |
|---|---|
| Remplacer | Utilise uniquement le nouveau filtre |
| ET | Nécessite à la fois le filtre actuel et le nouveau |
| OU | Accepte soit le filtre actuel, soit le nouveau |
| Annuler | Laisse le filtre inchangé |
Avec AND ou OR, le filtre actuel est placé entre parenthèses afin que sa signification soit conservée - par exemple ga:1/2/* | ga:2/1/* plus Urgent avec AND devient :
(ga:1/2/* | ga:2/1/*) + priority:urgent
Le résultat apparaît dans le champ de recherche, vous pouvez donc le voir, le modifier et l'appliquer à nouveau. Effacer supprime le filtre et le texte.
Recherche de texte
Le texte brut est une recherche insensible à la casse dans tout ce qu'une ligne affiche : adresses source et de destination, nom et description de l'adresse de groupe, type de télégramme, valeur décodée, hexadécimal de charge utile, priorité et étiquettes des événements de bus.
read
Ceci est délibérément large : il correspond à un GroupValueRead, à une adresse de groupe nommée Read request ou à une valeur contenant read. Pour un type de télégramme exact, utilisez plutôt apci:.
Les espaces ne signifient pas ET. living room recherche l'expression salon. Pour combiner deux conditions, utilisez +.
Adresses de groupe : ga:
1/2/3
1/2/*
ga:1/*/*
1/515
Une adresse de groupe simple fonctionne toute seule ; le préfixe ga: le rend explicite, ce qui est plus clair dans les filtres plus longs. ga: ne correspond qu'aux télégrammes envoyés à une adresse de groupe.
- Niveau 3 :
0-31principal,0-7intermédiaire, sous0-255 - Niveau 2 :
0-31principal, sous0-2047 - Un joker
*doit remplacer une pièce entière :1/2/*fonctionne,1/2/2*non.
La correspondance utilise la valeur brute de l'adresse, donc 1/2/3 et 1/515 sont la même adresse - le fait de basculer l'affichage entre le niveau 2 et le niveau 3 ne modifie jamais les résultats.
Expéditeurs : src:
1.1.5
1.1.*
src:1.*.*
Une simple adresse individuelle fonctionne toute seule ; src: le rend explicite. Il correspond toujours à l'Émetteur d'un télégramme, jamais à sa destination.
- Zone
0-15, ligne0-15, appareil0-255 - Un joker
*doit remplacer une pièce entière.
Type de télégramme : apci:
apci:GroupValueRead
apci:GroupValueResponse
apci:GroupValueWrite
Utilisez le nom complet du service : la majuscule n'a pas d'importance, mais apci:read est rejetée. Pour un service sans nom, utilisez son code en hexadécimal, de 0x0 à 0x3FF :
apci-code:0x155
Priorité et nombre de sauts
priority:system
priority:urgent
priority:normal
priority:low
hop:3
La priorité élevée de KNX est appelée urgent - priority:high est rejeté. Le nombre de sauts est un nombre entier compris entre 0 et 7.
Valeurs décodées : value
value>20
value<20
value>=20
value<=20
value>=-2.5
- Seuls les télégrammes avec une valeur numérique décodée correspondent - chargez votre projet ETS pour que les valeurs puissent être décodées.
- Utilisez un point pour les décimales (
1.5), quelle que soit la langue de votre téléphone. - Pas d'unités, pas de notation scientifique (
1e3) et pas de=- pour une valeur exacte, utilisezvalue>=20 + value<=20. - Les valeurs sont comparées sous forme de nombres, quel que soit leur type de point de données, combinez donc une condition de valeur avec une adresse de groupe pour garder sa signification claire :
ga:1/2/3 + value>=20
Événements de bus : kind:
Outre les télégrammes, le moniteur enregistre d'autres observations. Filtrez-les par genre :
| Filtre | Matchs |
|---|---|
kind:telegram |
Télégrammes KNX normaux |
kind:buscontrol |
Acquittements du moniteur de bus (mode Bus Monitor) |
kind:raw |
Trames SharKNX reçues mais n'a pas pu décoder |
kind:invalid |
Cadres mal formés |
kind:gap |
Lieux où les télégrammes ont été manqués |
Les espaces, les tirets, les traits de soulignement et les majuscules n'ont pas d'importance : kind:Bus Control fonctionne également.
Combinaison de conditions
| Opérateur | Signification | Exemple |
|---|---|---|
! |
PAS | !kind:gap |
+ |
ET | ga:1/2/* + value>=20 |
| |
OU | kind:gap | kind:invalid |
( ) |
Regroupement | (ga:1/2/* | ga:2/1/*) + value>=20 |
NOT lie le plus fort, puis AND, puis OR. Donc:
kind:gap | priority:urgent + hop:3
signifie un écart ou un télégramme urgent avec un nombre de sauts 3. En cas de doute, ajoutez des parenthèses :
ga:1/2/* + (apci:GroupValueWrite | apci:GroupValueResponse)
(src:1.1.* | src:1.2.*) + value>=20
!(value>20)affiche également les lignes sans de valeur décodée, car NOT inverse simplement le résultat.
Recherche de caractères spéciaux
Pour rechercher du texte contenant +, |, ! ou des parenthèses, mettez-le entre guillemets :
"Alarm + Hall"
"Status (North)"
Écrivez une citation à l'intérieur d'un texte cité sous la forme \" et une barre oblique inverse sous la forme \\. Les guillemets forcent également une recherche en texte brut pour tout ce qui ressemble à un filtre, tel que "unknown:value".
Lorsqu'un filtre est rejeté
Si un filtre ne peut pas être compris, SharKNX affiche l'erreur et sa position sous le champ de recherche. Le dernier filtre valide reste actif, donc la liste ne change pas jusqu'à ce que vous corrigiez le texte et l'appliquiez à nouveau.
| vous avez tapé | Pourquoi il est rejeté | Écrivez plutôt |
|---|---|---|
33/1/1 |
Le groupe principal monte jusqu'à 31 | Un groupe principal de 0 à 31 |
1/8/1 |
Le groupe intermédiaire monte jusqu'à 7 | Un groupe intermédiaire de 0 à 7 |
16.1.1 |
La zone s'étend jusqu'à 15 | Une zone allant de 0 à 15 |
ga:1/2/2* |
Un caractère générique doit remplir une partie entière | ga:1/2/* |
apci:read |
Les noms de services doivent être complets | apci:GroupValueRead, ou read simple |
priority:high |
KNX appelle cela urgent | priority:urgent |
hop:8 |
Le nombre de sauts monte jusqu'à 7 | Une valeur comprise entre 0 et 7 |
apci-code:80 |
Les codes sont hexadécimaux | apci-code:0x80 |
value=20 |
= n'est pas pris en charge |
value>=20 + value<=20 |
value>1,5 |
Virgule décimale | value>1.5 |
ga:1/2/* + |
Rien après ET | Complétez ou supprimez le + |
(ga:1/2/* |
) manquant |
Ajoutez le ) |
Un filtre valide n'affiche rien -
- L'adresse est-elle un Émetteur (
src:) ou une Adresse de groupe (GA) (ga:) ? - Les télégrammes ont-ils une valeur décodée ? Chargez le projet ETS.
- Le nom
apci:est-il complet ? - AND/OR nécessite-t-il des parenthèses ?
1/2/3 1.1.5est une seule recherche textuelle, pas deux conditions - écrivezga:1/2/3 + src:1.1.5.
Pas la même chose que les filtres Shark Hunt
Les actions Shark Hunt Moniteur personnalisé utilisent des conditions que vous créez dans un formulaire (jusqu'à 10, jointes par AND ou OR), et non cette syntaxe typée. Voir Comment créer un Shark Hunt.