Aller au contenu

Messages recommandés

Posté(e)

Alors je vais devoir arrêter de ta parler :P

 

En effet, je viens de copier/coller dans Notepad++.... et devine quoi.... c'est mal tabulé aussi :P

 

En fait c'est simple, certaines lignes (telles que le "break") n'ont pas de tabulation, mais des espaces !!!

Donc selon la largeur de la tabulation configurée dans TON Notepad++, ça s'affiche bien. Mais pas dans MON Notepad++, ni sur le forum.

 

Voilà , Jojo maintenant j'arrête de te parler (temporairement ;) ) :2:

Posté(e)

ok, pour les break je n'étais pas passé par notepad, juste fait enter dans l'éditeur Fibaro et l'un ou l'autre tab. Maintenant je sais que Fibaro génère des espace et pas des tabulations  :angry:

Posté(e)

Code adopté merci à  vous, par contre pouvez vous poster la modif pour supprimer le double click. (pas utile chez moi)

pourquoi ne pas proposer dans début de code, un paramètre yes/no pour laisser le choix ?

 

une autre question que je me posais, vrai pour d'autres VD, avoir tous les commentaires dans la main loop, c'est pas gênant ? 

Posté(e)

Aucun problème pour les commentaires, ce VD n'est pas très gros.

Le seul désagrément (léger) c'est que ça ralenti le chargement de l'interface, surtout depuis un mobile, car il y a du texte inutile àcharger.

Posté(e)

@Sakkhho,

Voici le code du bouton tout éteindre sans le double click

----------------------------------
-- User Settings
----------------------------------
 
-- Modules àexclure et fonction de traitement (pas raccordés àdes lumières)
-- Peut contenir un id ou un mot clés àchercher dans le nom du module
toExclude = {} 
 
----------------------------------
-- DO not change bellow this line
----------------------------------
 
-- Modules àexclure ou inclure et fonction de traitement (pas raccordés àdes lumières)
-- Peut contenir un id ou un mot clés àchercher dans le nom du module
-- toExclude = {72, "Dispo", "Volet", "Bubendorff"}
function shouldExclude(module)
	for _, v in pairs(toExclude) do
		if string.find(module.name, v) ~= nil or module.id == v then return true end
	end
	return false
end
 


	-- Récupération de la liste des modules
	local HC2 = Net.FHttp("127.0.0.1", 11111)
	local payload = "/api/devices"
	local response, status, errorCode = HC2:GET(payload)
	if tonumber(errorCode) == 0 and tonumber(status) == 200 and response ~= nil and response ~= "" then
		local jsonTable = json.decode(response)
		-- Boucle sur les modules
		for device = 1, #jsonTable do
			    -- look for lighting devices
	if jsonTable[device].interfaces and not shouldExclude(jsonTable[device]) then
			for interface = 1, #jsonTable[device].interfaces do
				if jsonTable[device].interfaces[interface] == "light" then
					local DeviceValue = tonumber(jsonTable[device].properties.value)
					if (DeviceValue and DeviceValue > 0) or (jsonTable[device].properties.value == "true") then
					--fibaro:debug(" id: "..jsonTable[device].id.." is "..jsonTable[device].name.." type: "..jsonTable[device].interfaces[interface])
					--fibaro:debug(" value: "..jsonTable[device].properties.value..". Turning Off")
					fibaro:call(jsonTable[device].id, "turnOff")
					end
            		break
				end
			end
		end
		end
	else
		fibaro:debug('<span style="display:inline;color:red;">status='..status..', errorCode='..errorCode..', payload='..payload..', response='..(response or "")..'</span>')
	end
 

  • 7 mois après...
Posté(e)

Salut a tous et encore bravo !

je voudrais pouvoir soit avec ce module soit avec un autre

pouvoir voire la meme chose mais pour mais ventilateur de plafond

et aussi voire quelles sont les fenetres ouvertes de la maison j'ai des FGK101

merci pour votre aide

Posté(e)

bon je craque

je n'y arrive pas !

j'ai des module : FGS222 Switch 2x1,5kW EU

la premier sortie c'est une lampe et dans Appareil commandé j'ai sélectionner : éclairage

et la 2 eme sortie c'est un ventilateur de plafond et dans Appareil commandé j'ai sélectionner : ventilateur

je cherche a faire le meme super VD que celui la mais que pour les ventilateur

 

je n'arrive pas !

svp help merci

Posté(e)

ok merci voila le json d'un des module :

{
  "id": 18,
  "name": "Ventilateur plafond",
  "roomID": 8,
  "type": "com.fibaro.binarySwitch",
  "baseType": "com.fibaro.actor",
  "enabled": true,
  "visible": true,
  "isPlugin": false,
  "parentId": 17,
  "remoteGatewayId": 0,
  "interfaces": [
    "zwave",
    "zwaveFirmwareUpdate"
  ],
  "properties": {
    "parameters": [
      {
        "id": 1,
        "lastReportedValue": 255,
        "lastSetValue": 255,
        "size": 1,
        "value": 255
      },
      {
        "id": 3,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 4,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 2,
        "value": 0
      },
      {
        "id": 5,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 2,
        "value": 0
      },
      {
        "id": 6,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 7,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 13,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 14,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 15,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 16,
        "lastReportedValue": 1,
        "lastSetValue": 1,
        "size": 1,
        "value": 1
      },
      {
        "id": 30,
        "lastReportedValue": 3,
        "lastSetValue": 3,
        "size": 1,
        "value": 3
      },
      {
        "id": 31,
        "lastReportedValue": 2,
        "lastSetValue": 2,
        "size": 1,
        "value": 2
      },
      {
        "id": 32,
        "lastReportedValue": 3,
        "lastSetValue": 3,
        "size": 1,
        "value": 3
      },
      {
        "id": 33,
        "lastReportedValue": 1,
        "lastSetValue": 1,
        "size": 1,
        "value": 1
      },
      {
        "id": 39,
        "lastReportedValue": 600,
        "lastSetValue": 600,
        "size": 2,
        "value": 600
      },
      {
        "id": 40,
        "lastReportedValue": 3,
        "lastSetValue": 3,
        "size": 1,
        "value": 3
      },
      {
        "id": 41,
        "lastReportedValue": 2,
        "lastSetValue": 2,
        "size": 1,
        "value": 2
      },
      {
        "id": 42,
        "lastReportedValue": 3,
        "lastSetValue": 3,
        "size": 1,
        "value": 3
      },
      {
        "id": 43,
        "lastReportedValue": 1,
        "lastSetValue": 1,
        "size": 1,
        "value": 1
      }
    ],
    "zwaveCompany": "Fibargroup",
    "zwaveInfo": "3,3,52",
    "zwaveVersion": "2.2",
    "pollingTimeSec": 0,
    "configured": "true",
    "dead": "false",
    "deviceControlType": "13",
    "deviceIcon": "11",
    "emailNotificationID": "0",
    "emailNotificationType": "0",
    "endPointId": "0",
    "liliOffCommand": "",
    "liliOnCommand": "",
    "log": "",
    "logTemp": "",
    "manufacturer": "",
    "markAsDead": "true",
    "model": "",
    "nodeId": "2",
    "parametersTemplate": "357",
    "productInfo": "1,15,2,2,16,2,2,2",
    "pushNotificationID": "0",
    "pushNotificationType": "0",
    "remoteGatewayId": "0",
    "saveLogs": "true",
    "smsNotificationID": "0",
    "smsNotificationType": "0",
    "useTemplate": "true",
    "userDescription": "",
    "value": "true"
  },
  "actions": {
    "reconfigure": 0,
    "turnOff": 0,
    "turnOn": 0,
    "updateFirmware": 1
  },
  "created": 1465571481,
  "modified": 1465571481,
  "sortOrder": 12
}
Posté(e)

le parametre que je veux exploiter est :

 

"deviceControlType": "13",

 

je veux le meme vd que celui de ce poste mais rien que sur les device qui ont ce paramètre :

"deviceControlType": "13",

 

merci encore je voie la lumière !

Posté(e)

Comme ceci peut-etre ? je tatonne toujours pour descendre dans les niveaux du json ;-)

jsonTable[device].properties.deviceControlType == "13"
Posté(e)

et dernier truc :

pour un Sensor de porte le faire lister que quand il est ouvert ?

"type": "com.fibaro.doorSensor", and "status open" ?

c'est ca ? :

 jsonTable[device].type == "com.fibaro.doorSensor" and ... ?

la suite je ne vois pas ou trouver le status ouvre ou fermer

Posté(e)

voila le json :

{
  "id": 100,
  "name": "Sensor de porte",
  "roomID": 19,
  "type": "com.fibaro.doorSensor",
  "baseType": "com.fibaro.doorWindowSensor",
  "enabled": true,
  "visible": true,
  "isPlugin": false,
  "parentId": 99,
  "remoteGatewayId": 0,
  "interfaces": [
    "battery",
    "tamper",
    "zwave",
    "zwaveFirmwareUpdate",
    "zwaveSceneActivation",
    "zwaveWakeup"
  ],
  "properties": {
    "parameters": [
      {
        "id": 1,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 2,
        "value": 0
      },
      {
        "id": 2,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 3,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 5,
        "lastReportedValue": 255,
        "lastSetValue": 255,
        "size": 1,
        "value": 255
      },
      {
        "id": 7,
        "lastReportedValue": 255,
        "lastSetValue": 255,
        "size": 1,
        "value": 255
      },
      {
        "id": 9,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 10,
        "lastReportedValue": 1,
        "lastSetValue": 1,
        "size": 1,
        "value": 1
      },
      {
        "id": 12,
        "lastReportedValue": 8,
        "lastSetValue": 8,
        "size": 1,
        "value": 8
      },
      {
        "id": 13,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 14,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      },
      {
        "id": 15,
        "lastReportedValue": 0,
        "lastSetValue": 0,
        "size": 1,
        "value": 0
      }
    ],
    "zwaveCompany": "Fibargroup",
    "zwaveInfo": "3,3,67",
    "zwaveVersion": "2.5",
    "wakeUpTime": 4000,
    "pollingTimeSec": 0,
    "alarmDelay": "0",
    "alarmExclude": "false",
    "alarmTimeTimestamp": "0",
    "armConditions": "{\"auto\":false,\"devices\":[{\"id\":100,\"propertyName\":\"value\",\"propertyValue\":\"0\"}],\"time\":0}",
    "armConfig": "0",
    "armDelay": "0",
    "armError": "{}",
    "armTimeTimestamp": "0",
    "armed": "false",
    "batteryLevel": "88",
    "batteryLowNotification": "true",
    "configured": "true",
    "dead": "false",
    "defInterval": "0",
    "deviceControlType": "0",
    "deviceIcon": "44",
    "emailNotificationID": "90",
    "emailNotificationType": "0",
    "endPointId": "0",
    "fibaroAlarm": "false",
    "interval": "0",
    "lastBreached": "1466754404",
    "liliOffCommand": "",
    "liliOnCommand": "",
    "log": "",
    "logTemp": "",
    "manufacturer": "",
    "markAsDead": "true",
    "maxInterval": "0",
    "minInterval": "0",
    "model": "",
    "nodeId": "18",
    "parametersTemplate": "308",
    "productInfo": "1,15,7,0,16,0,2,5",
    "pushNotificationID": "90",
    "pushNotificationType": "0",
    "remoteGatewayId": "0",
    "saveLogs": "true",
    "sceneActivation": "0",
    "smsNotificationID": "0",
    "smsNotificationType": "0",
    "stepInterval": "0",
    "tamper": "false",
    "useTemplate": "true",
    "userDescription": "",
    "value": "false"
  },
  "actions": {
    "forceArm": 0,
    "meetArmConditions": 0,
    "reconfigure": 0,
    "setArmed": 1,
    "setInterval": 1,
    "updateFirmware": 1
  },
  "created": 1465571481,
  "modified": 1465571481,
  "sortOrder": 133
}
Posté(e)

Ta porte est fermée pour le json que tu as envoyé ?

Si oui, regarde sous userDescription, tu as value : false,

ouvre ta porte, regarde le json, le value doit etre à  "true"

donc cela doit etre

 jsonTable[device].properties.value == "true"
×
×
  • Créer...