Erreurs sur scripts LUA
Publié : 09 mai 2017, 11:08
Bonjour à tous,
je cherche à utiliser l'API de MYFOX et j'ai utiliser un script que j'ai trouvé sur la toile mais j'ai cette erreur à chaque fois que je le lance :
2017-05-08 21:41:00.101 Error: EventSystem: in Prise1: [string "-- Installation de luasec pour le https -- su..."]:5: module 'ssl.https' not found:
no field package.preload['ssl.https']
no file '/usr/local/share/lua/5.2/ssl/https.lua'
no file '/usr/local/share/lua/5.2/ssl/https/init.lua'
no file '/usr/local/lib/lua/5.2/ssl/https.lua'
no file '/usr/local/lib/lua/5.2/ssl/https/init.lua'
no file './ssl/https.lua'
no file '/usr/local/lib/lua/5.2/ssl/https.so'
no file '/usr/local/lib/lua/5.2/loadall.so'
no file './ssl/https.so'
no file '/usr/local/lib/lua/5.2/ssl.so'
no file '/usr/local/lib/lua/5.2/loadall.so'
no file './ssl.so'
J'ai regardé dans le répertoire et en effet je n'ai pas de directory 5.2 mais uniquement 5.1.
De plus, j'ai téléchargé la 5.2 de LUA que j'ai normalement installé mais rien ne change...
Pouvez vous m'aider ?
Je vous indique ci-dessous le script que j'utilise :
-- Installation de luasec pour le https
-- sudo apt-get install libssl1.0.0 libssl-dev
-- sudo luarocks install luasec OPENSSL_LIBDIR=/usr/lib/x86_64-linux-gnu (Ubuntu)
-- sudo luarocks install luasec OPENSSL_LIBDIR=/usr/lib/arm-linux-gnueabihf (Raspberry Pi)
local https = require("ssl.https")
local identifiant = 'login Myfox'
local motDePasse = 'Mot de passe Myfox'
local clientID = 'Client ID généré sur le site Myfox'
local clientSecret = 'Client secret généré sur le site Myfox'
local siteId = 'num. du site'
local deviceID = 'num. du device'
local access_token = nil
local refresh_token = nil
local echeance = nil
-- Request access token
function acquerirJeton()
local url = 'https://api.myfox.me/oauth2/token'
local post = string.format('grant_type=password&client_id=%s&client_secret=%s&username=%s&password=%s', clientID, clientSecret, identifiant, motDePasse)
local body, code = https.request(url, post)
assert(code == 200)
access_token, refresh_token = string.match(body, '"access_token":"([^"]*)".*"refresh_token":"([^"]*)"')
end
-- Refreshing an expired access_token
function renouvelerJeton()
local url = 'https://api.myfox.me/oauth2/token'
local post = string.format('grant_type=refresh_token&refresh_token=%s&client_id=%s&client_secret=%s', refresh_token, clientID, clientSecret)
local body, code = https.request(url, post)
assert(code == 200)
access_token, refresh_token = string.match(body, '"access_token":"([^"]*)".*"refresh_token":"([^"]*)"')
end
-- Statut de l'alarme : 'disarmed', 'partial' ou 'armed'
function statut()
local url = string.format('https://api.myfox.me:443/v2/site/%s/dev ... s_token=%s', tostring(siteId), tostring(deviceID), access_token)
local body, code = https.request(url)
assert(code == 200)
local statut = string.match(body, '"statusLabel":"([^"]*)"')
return statut
end
Merci d'avance à tous !
je cherche à utiliser l'API de MYFOX et j'ai utiliser un script que j'ai trouvé sur la toile mais j'ai cette erreur à chaque fois que je le lance :
2017-05-08 21:41:00.101 Error: EventSystem: in Prise1: [string "-- Installation de luasec pour le https -- su..."]:5: module 'ssl.https' not found:
no field package.preload['ssl.https']
no file '/usr/local/share/lua/5.2/ssl/https.lua'
no file '/usr/local/share/lua/5.2/ssl/https/init.lua'
no file '/usr/local/lib/lua/5.2/ssl/https.lua'
no file '/usr/local/lib/lua/5.2/ssl/https/init.lua'
no file './ssl/https.lua'
no file '/usr/local/lib/lua/5.2/ssl/https.so'
no file '/usr/local/lib/lua/5.2/loadall.so'
no file './ssl/https.so'
no file '/usr/local/lib/lua/5.2/ssl.so'
no file '/usr/local/lib/lua/5.2/loadall.so'
no file './ssl.so'
J'ai regardé dans le répertoire et en effet je n'ai pas de directory 5.2 mais uniquement 5.1.
De plus, j'ai téléchargé la 5.2 de LUA que j'ai normalement installé mais rien ne change...
Pouvez vous m'aider ?
Je vous indique ci-dessous le script que j'utilise :
-- Installation de luasec pour le https
-- sudo apt-get install libssl1.0.0 libssl-dev
-- sudo luarocks install luasec OPENSSL_LIBDIR=/usr/lib/x86_64-linux-gnu (Ubuntu)
-- sudo luarocks install luasec OPENSSL_LIBDIR=/usr/lib/arm-linux-gnueabihf (Raspberry Pi)
local https = require("ssl.https")
local identifiant = 'login Myfox'
local motDePasse = 'Mot de passe Myfox'
local clientID = 'Client ID généré sur le site Myfox'
local clientSecret = 'Client secret généré sur le site Myfox'
local siteId = 'num. du site'
local deviceID = 'num. du device'
local access_token = nil
local refresh_token = nil
local echeance = nil
-- Request access token
function acquerirJeton()
local url = 'https://api.myfox.me/oauth2/token'
local post = string.format('grant_type=password&client_id=%s&client_secret=%s&username=%s&password=%s', clientID, clientSecret, identifiant, motDePasse)
local body, code = https.request(url, post)
assert(code == 200)
access_token, refresh_token = string.match(body, '"access_token":"([^"]*)".*"refresh_token":"([^"]*)"')
end
-- Refreshing an expired access_token
function renouvelerJeton()
local url = 'https://api.myfox.me/oauth2/token'
local post = string.format('grant_type=refresh_token&refresh_token=%s&client_id=%s&client_secret=%s', refresh_token, clientID, clientSecret)
local body, code = https.request(url, post)
assert(code == 200)
access_token, refresh_token = string.match(body, '"access_token":"([^"]*)".*"refresh_token":"([^"]*)"')
end
-- Statut de l'alarme : 'disarmed', 'partial' ou 'armed'
function statut()
local url = string.format('https://api.myfox.me:443/v2/site/%s/dev ... s_token=%s', tostring(siteId), tostring(deviceID), access_token)
local body, code = https.request(url)
assert(code == 200)
local statut = string.match(body, '"statusLabel":"([^"]*)"')
return statut
end
Merci d'avance à tous !