Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'api'.



Plus d’options de recherche

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Bienvenue
    • Annonces et suggestions
    • Nouveau ? Présentez-vous
    • Le bistrot
    • Mon installation domotique
    • Autres Solutions Domotiques
  • La HC2 et ses périphériques
    • La Home Center pour les nuls
    • Home Center 2 & Lite
    • Modules Fibaro
    • Modules Z-wave
    • Périphériques et matériels autres
    • Plugins
    • Alarme & Vidéo-surveillance
    • Multimédia
    • Chauffage et Energie
    • Actionneurs & Ouvrants (Portail, volets...)
    • Eclairage
    • Applications Smartphones et Tablettes
    • English Section
  • Les objets connectés
    • Les Assistants Vocaux
  • Fibaro's Awards
    • Membre du mois
    • Jeux concours & Cadeaux
  • Les bonnes affaires
    • Sites internet
    • Petites annonces

Calendriers

Aucun résultat à afficher.


9 résultats trouvés

  1. Création de Module Virtuel via l'API

    Bonsoir, J'essaie de créer un Module Virtuel en passant par l'API via http://xxx.xxx.xxx.xxx/docs mais je me retrouve avec ce message d'erreur : { "type": "ERROR", "reason": "Type not found", "message": "Type 'virtual_device'' is not installed in the system." } S'agit-il d'une sécurité, ou y- a-t-il une subtilité ? Etant précisé que le body que j'utilise est le contenu d'un fichier vfib sorti directement de la HC2.
  2. Mise à jour module via API

    Bonjour, J'essaye désespérément de mettre à jour un virtual device depuis une page PHP. Je fais une requête HTTP en PUT avec mes logins/pass admin (Ca fonctionne très bien en GET). Par contre le PUT me renvoi systématiquement l'erreur ci dessous quelque soit le JSON utilisé : "The document root must not be followed by other values." Je pense que le format de mon body n'est pas correcte, quelqu'un saurait me dire pourquoi svp ou me donner un exemple de json correcte? l'url utilisée : http://monuser:monpass@192.168.0.16/api/virtualDevices/191 le Json tout bête placé dans un tableau : {"id":191,"name":"InjectionModule"} ce que reçoit la HC2 (enfin un autre script ici) semble correcte : {"id":191,"name":"InjectionModule"} Merci d'avance du coup de patte!
  3. SOMFY - Ouverture

    Bonjour Messieurs, Somfy s'ouvre, j'ai noté : "A noter que des API seront disponibles" Comme quoi tout arrive ;-) https://www.maison-et-domotique.com/76693-somfy-support-ifttt-amazon-alexa-sonos-nouveau-thermostat-connecte/
  4. Utilisation API HC2

    Bonjour tout le monde ! Petite question rapide : (enfin je crois) j'arrive très facilement à récupérer des valeurs grâce à l'API de la HC2, exemple : je récupère la valeur suivante : l'heure défini dans le panneau de chauffage du lundi matin, comme ceci : local Pannel = api.get("/panels/heating/61") print(Pannel.properties["monday"].morning["hour"]) ça marche nickel ! j'utilise souvent cette méthode... Par contre si je veux écrire dans l'API, il faut utiliser un "PUT" ! -> ok mais y a t'il une méthode plus simple que le Net.HTTP ? On peut pas l'attaquer directement comme pour la lecture ? genre api.put .......... merci à vous !
  5. Bonjour, Voici une liste non exhaustive de l'API HTTP pour HOME CENTER 2 et HOME CENTER LITE A compléter si vous en connaissez d'autres !! - filters in /api/devices that allows for filtering out devices that meet some requirements, examples: HC IP/api/devices?visible=true returns devices with visible equal to 'true' HC IP/api/devices?property=[batteryLevel,100] returns devices with property batteryLevel equal to 100 HC IP/api/devices?interface=light returns devices with light interface Multiple filters can be used together, for example: HC IP/api/devices?visible=true&interface=light returns devices with visible equal to 'true' and with 'light' interface Suite à une Mise à jour, revenir à un firmware précédent http://ip_HC2/services/startUpgrade.php Relancer la fin de l'installation suite à une erreur 503 http://<IP hc2>/services/finishUpgradeAfterError.php
  6. Bonjour à tous, Comme évoqué dans un des topics du firmware avec @Lazer, j'initie un début de liste des différentes API-LUA et API-HTTP apparues suite aux évolutions de firmware. Pour HC2 UNIQUEMENT Cette liste est loin d'être exhaustive, je me suis basé sur les changelog des firmwares et le site https://developer.fibaro.com/. Si vous en connaissez d'autres, n'hésitez pas (je pense à vous les MAITRES du LUA ) Les admins/modos, je vous laisse le soin de mettre le sujet où bon vous semble ;-), un sous-forum de HC2 peut-être. These calls can be used to start increasing or decreasing Multilevel Switches (like Dimmer 2, RGBW or Roller Shutter 2 modules) value. 'x' and 'y' are optional parameters, used to set respectively time frame in which change should be applied and starting level. 'stopLevelChange' stops previously send action. fibaro:call(ID, 'startLevelIncrease', x, y) fibaro:call(ID, 'startLevelDecrease', x, y) fibaro:call(ID, 'stopLevelChange') Call used to get table with IDs of devices that meet requirement specified by 'x'. fibaro:getDevicesId(x) -- Examples: print('All devices with parameter visible equal to "true" and enabled equal to "true":') ids = fibaro:getDevicesId({visible = true, enabled = true}) print(json.encode(ids)) print('ALl devices with energy interface:') ids = fibaro:getDevicesId({interfaces ={"energy"}}) print(json.encode(ids)) print('All devices with 'unit' property (no matter its value):') ids = fibaro:getDevicesId({properties = {unit="nil"}}) print(json.encode(ids)) Which will set given scene respectively to Automatic, Manual and Disabled mode. Any other value will set scene triggering mode to Automatic. fibaro:setSceneRunConfig(sceneID, runConfig) where runConfig is string that takes one of these three values: - TRIGGER_AND_MANUAL - MANUAL_ONLY - DISABLED fibaro:getSceneRunConfig(sceneID) returns currently set value. Old functions will keep backward compatibility and continue to work without change. - fibaro:setSceneEnabled(sceneID, enabled) - fibaro:isSceneEnabled(sceneID) Redémarrage Home Center et Arrêt Home Center HomeCenter.SystemService.reboot() et HomeCenter.SystemService.shutdown() Exemples : -- Reboot system HomeCenter.SystemService.reboot(); -- Shutdown system HomeCenter.SystemService.shutdown(); Popup service HomeCenter.PopupService.publish({title, subtitle, contentTitle, contentBody, img, type, buttons}) Parameters title - string containing text to be displayed as a pop-up window title (parameter required) subtitle - string containing text to be displayed as a pop-up window subtitle contentTitle - string containing text to be displayed as a pop-up content title contentBody - string containing text to be displayed as a pop-up content (parameter required) img - string containing path of an image to be displayed in the pop-up window (supported extensions: .jpg, .bmp, .png, .gif) type - notification type indicated with a colour, available types: 'Info' - blue (default) 'Success' - green 'Warning' - yellow 'Critical' - red buttons - array containing definitions of buttons to be displayed in the pop-up, single button definition must be an array containing: 'caption' - text displayed on the button 'sceneId' - scene id triggered after pushing the button Exemple 1 --[[ %% properties %% globals --]] -- variable containing path of Motion Sensor’s icon local imgUrl = 'http://www.fibaro.com/sites/all/themes/fibaro/images/motion- sensor/en/motion_sensor_manual.png' -- pop-up call HomeCenter.PopupService.publish({ -- title (required) title = 'No motion detected', -- subtitle(optional), e.g. time and date of the pop-up call subtitle = os.date("%I:%M:%S %p | %B %d, %Y"), -- content header (optional) contentTitle = 'No motion since last 15 minutes', -- content (required) contentBody = 'Should I run the scene "Night"?', -- notification image (assigned from the variable) img = imgUrl, -- type of the pop-up type = 'Success', -- buttons definition buttons = { { caption = 'Yes', sceneId = 0 }, { caption = 'No', sceneId = 0 } } }) NOTE Please note that the example scene must be triggered manually. It just illustrates the way of creating pop-ups. Execution of this scene will not affect any device status (sceneId = 0). NOTE Setting an action of the button to 'sceneId = 0' means that no action will be performed. NOTE Created pop-up is sent to each of users and mobile devices connected with the main controller. NOTE There is no maximum size of image displayed in the pop-up window. However, using too large file may result in long waiting times required for downloading the image. NOTE Pushing one of the buttons displayed in the pop-up window may only trigger another scene. Exemple 2 --[[ %% properties 3814 value %% globals --]] local startSource = fibaro:getSourceTrigger(); if ( ( tonumber(fibaro:getValue(3814, "value")) > 60 ) or startSource["type"] == "other" ) then HomeCenter.PopupService.publish({ title = 'Brightness level', subtitle = 'is too high', contentTitle = 'Dimmer', contentBody = 'Would you like to turn it off?', img = ' http://www.fibaro.com/images/eng/icon_osw.png', type = 'Critical', buttons = { { caption = 'Turn off', sceneId = 3228 }, { caption = 'No', sceneId = 0 }, { caption = 'Set to 100%', sceneId = 3229 } } }) end 1ère MAJ venant de @Steven concernant les fonctions fibaro : Telecharger le tar.gz http://updatehc2.fibaro.com/4.083/ , puis dans opt/fibaro ouvrir fibaroSceneAPI.lua Backups depuis une scène (Merci à @Nikko) --[[ %% properties %% events %% globals --]] local portable = 385 local message = 'Backup du '..os.date("%d/%m/%y - %HH%M") local url = 'http://127.0.0.1:11111/api/settings/backups' local httpClient = net.HTTPClient() httpClient:request(url , { success = function(response) if tonumber(response.status) == 201 then print("Backup Created at " .. os.date()) fibaro:call(portable,'sendPush', message .. ' effectué') else print("Error " .. response.status) fibaro:call(portable,'sendPush', 'Erreur lors de la création du Backup') end end, error = function(err) print('error = ' .. err) end, options = { method = 'POST', headers = { ["content-type"] = 'application/x-www-form-urlencoded;' }, data = 'action=create&description='..message } }); - Attention, si planification avec GEA, dans la nuit, ca relance le zwave ;-) GEA.add(true, 30, "", {{"Scenario", id}}) ASTUCES DIVERSES Affichage persistent du LOG des VDs et couleurs possibles (merci @Steven et @Berale, je ne suis que le Scrib) - Code à mettre dans le MAIN-LOOP fibaro:log("Test") fibaro:call(fibaro:getSelfId(), "setProperty", "logTemp", "TxtGray" ) - Couleurs possibles : .TxtGreen .TxtRed .TxtYellow .TxtBlue .TxtGray Exemple de @Nico --1er bouton VD local deviceId = fibaro:getSelfId(); fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Repos") -- Second bouton du VD local deviceId = fibaro:getSelfId(); fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Alarme") fibaro:call(deviceId, "setProperty", "ui.Label2.value", os.date("%m %B %Y - %H:%M:%S")) -- Mainloop pour affichage persistent du log local deviceId = fibaro:getSelfId(); local value = fibaro:getValue(deviceId, "ui.Label2.value") fibaro:log(value) fibaro:call(fibaro:getSelfId(), "setProperty", "logTemp", "TxtGray" ) Affichage persistent HORS MAIN-LOOP fibaro:call(fibaro:getSelfId(), "setProperty", "log", "blablabla" ) MISE à jour suite à la version stable 4.10 : Merci à @Steven fibaro:callGroupAction(action, filters) { "filter": "hasProperty", "value": ["configured", "dead", "model"] } { "filter": "interface", "value": ["Z-Wave", "levelChange"] } { "filter": "parentId", "value": [664] } { "filter": "type", "value": ["com.fibaro.multilevelSwitch"] } { "filter": "roomID", "value": [2, 3] } { "filter": "baseType", "value": ["com.fibaro.binarySwitch"] } { "filter": "isTypeOf", "value": ["com.fibaro.binarySwitch"] } { "filter": "isPlugin", "value": [true] } { "filter": "propertyEquals", "value": [ { "propertyName": "configured", "propertyValue": [true] }, { "propertyName": "dead", "propertyValue": [false] }, { "propertyName": "deviceIcon", "propertyValue": [15] }, { "propertyName": "deviceControlType", "propertyValue": [15,20,25] } ] } { "filter": "deviceID", "value": [55,120,902] } Parameters action: action name filters: filters object Returned values devices: array of device id's filtered by given rule. Code example --[[ %% properties %% events %% globals --]] local data = { args = { 1 }, filters = { { filter = "roomID", value = { 2 } }, { filter = "type", value = { "com.fibaro.motionSensor" } } } } local devices = fibaro:callGroupAction("setArmed", data) for k,v in ipairs(devices) do print (v) end HomeCenter.NotificationService.publish(payload) Name Function name must be always the same: HomeCenter.NotificationService.publish Application Publishes notification. Parameters request: request object Code example HomeCenter.NotificationService.publish({ type = "GenericDeviceNotification", priority = "warning", data = { deviceId = 2643, title = "foo", text = "bar" } }) HomeCenter.NotificationService.update(id, payload) Name Function name must be always the same: HomeCenter.NotificationService.update Application Updates notification. Parameters id: notification id request: request object Code example HomeCenter.NotificationService.update(7, { canBeDeleted = true, data = { title = "udapted foo", text = "udapted bar" } }) HomeCenter.NotificationService.remove(id) Name Function name must be always the same: HomeCenter.NotificationService.remove Application Removes notification. Parameters id: notification id Code example HomeCenter.NotificationService.remove(7) Info du jour concernant le centre de notification de la HC2, merci @tinman, c'est ici : - Pour utiliser le centre de notification avec des infos "perso" : Tester et aprouvé en 4.10 function doNotify(text, devid) api.post('/notificationCenter', { type = 'GenericDeviceNotification', canBeDeleted = true, -- priority can be -- alert -- red alert sign -- warning -- yellow warning sign -- info -- same as warning priority = 'alert', data = { deviceId = devid, text = text, title = text } }) end doNotify('Test notif HC2', 12 )
  7. Hc2 Plugin Numericable

    Bonsoir, Qui a réussi a paramétrer le plugin Numericable ? Que renseigner dans les champs "TCP Port" et "UUDI" Je n'ai trouver aucune info sur le net a ce sujet. Y a t-il une API pour la box numericable ? Merci de votre aide.
  8. Bonjour j'ai enfin réussi à récupérer les infos de ma smappee à partir d'une interface REST. Malheureusement je galère à créer un module virtuel qui irait chercher ces infos automatiquement. Le problème est qu'il faut utiliser un Header pour la requête. Voici ce que j'ai trouvé et comment j'ai codé: local httpClient = net.HTTPClient(); httpclient:request('https://app1pub.smappee.net/dev/v1/servicelocation/[serviceLocationId]/consumption?aggregation=4&from=1423907904000&to=1426327104000', { success = successCallback, error = errorCallback, options = { method = 'GET' }, headers = { ['Authorization'] = 'bearer [ACCESS_TOKEN]' } } ) if (tonumber(errorCode) == 0) then jsonTable = json.decode(response); fibaro:debug("consumption" .. jsontable.consumptions.consumption); else fibaro:debug("error "..errorCode ) end la reponse étant { serviceLocationId: XXXX consumptions: [ 1] 0: { timestamp: 1425164400000 consumption: 721056.4 solar: 0 alwaysOn: 1408702 } - - } merci pour votre aide
  9. Questions Sur L'api Fibaro Et Lua

    Bonjour à tous, Nouveau sur le forum et sur la box Fibaro HC2, je souhaiterais avoir votre retour d’expérience en ce qui concerne l’appli mobile Android et l’API, et une indication sur le LUA. - Concernant l’appli Android, j’ai des problèmes de retour d’état. Quand je me connecte, ou si je suis déjà connecté et que je fais un refresh data par les paramètres, je n’ai pas toujours un retour d’état juste. J’ai des lampes affichées éteintes alors qu’elles sont allumées et ainsi de suite. Avez-vous constaté ça aussi ? je précise que ça le fait même sur des devices Fibaro et même parfois sur la page web sur un PC. - Pour l’API, j’ai aussi des décalages d’état dans la value qui n’est pas toujours juste. - Enfin, je n’arrive pas à trouver certaines commandes API ou LUA. Savez-vous s’il est possible, et si oui, comment : o Modifier la valeur d’une variable globale par son ID ou son nom par requete HTTP ? o Modifier le label d’une étiquette d’un périphérique virtuel avec la valeur d’une variable globale par LUA ? o Connaitre l'historique des valeurs d'un device par requete HTTP ? o J’ai des soucis avec la lecture de requetes JSON avec la fonction json.decode. Du coup je galère pour lire des données Eedomus avec le HC2. Est-ce que vous utilisez souvent cette fonction sans problème ou pas ? Merci d’avance pour vos réponses. Bonne journée.
×