Aller au contenu

Messages recommandés

Posté(e) (modifié)

Bonjour ,

J'essayes de commander Kodi depuis un VD, problème, le user/pass ne semblent pas être pris en compte et j’obtiens une "erreur 2". Comment-faut il les formater pour qu'ils soient pris en compte dans le Net.Fhttp?

 

    jsonrpc={};
    jsonrpc['jsonrpc']='2.0';
  	jsonrpc['method']='Input.'..key;
  	jsonrpc['id']=number;
  
	local path='/jsonrpc?request='..json.encode(jsonrpc);
    path = urlencode(path);
	dump('Path Kodi',path,'yellow');
  	if(not SIMU) then
    	Kodi = Net.FHttp("koduseri%34kodipass%40192.168.0.10", 8081);
      	result, status, errorCode = Kodi:GET(path);
    end
    dump('Result',result);
  	dump('Status',status);
  	dump('Error code',errorCode);

 

 

 

Voici la sortie des dump:

Path Kodi : %2Fjsonrpc%3Frequest%3D%7B%22id%22%3A1%2C%22method%22%3A%22Input%2ERight%22%2C%22jsonrpc%22%3A%222%2E0%22%7D
[DEBUG] 11:49:52: Result :
[DEBUG] 11:49:52: Status :
[DEBUG] 11:49:52: Error code : 2

 

Modifié par Indyana
Posté(e)

Bonjour @Indyana

J'ai l'impression que tu veux refaire un VD qui existe déjà. Tu trouveras ton bonheur ici dans lequel @Lazer parle d'un VD pour piloter KODI. Sinon dans les echanges du sujet je crois me souvenir que l'on parle à un moment du formatage de jsonrpc

 

Posté(e)

Dans cet addon c'est plustot Kodi qui pilote la HC2. Mais tu as raison il y a un VD dedans qui doit faire le sens inverse et aussi piloter Kodi, malheureusement impossible d'accéder au fichier ZIP, "j'ai pas les droits"... Meu pouquoi? je suis gentil moi?....

Posté(e)

Oui, l'addon d'ADN est dans le sens KODI --> HC2 avec retour CAM et etat des modules je crois. MAis @Lazer avait commencé un VD identique à ce que tu veux faire. Je vais esasyer de telecharger.

 

Sur le fofo officiel il y a cela :


 

local selfID = fibaro:getSelfId()
local selfName = tostring(fibaro:getName(selfID));

local ip = fibaro:get(selfID, 'IPAddress')
local port = fibaro:get(selfID, 'TCPPort')
local kodi = Net.FHttp(ip, tonumber(port))

-- Function
-- Log Color Function
function log(color, message)
    if color and color ~= "" then
        fibaro:debug('<span style="color:'..color..';">'..message..'</span>')
    else
        fibaro:debug(message)
    end
end

local datas = '{"jsonrpc":"2.0","id":1,"method":"Addons.ExecuteAddon","params":{"addonid":"HC2.addon","params":{"fonction":"ActiveCamera", "idcam":"1","uptime":"30","refresh":"1000"}}}';
local url = '/jsonrpc?request='

local response, status, errorCode = kodi:POST(url, datas)
if tonumber(errorCode) == 0 and tonumber(status) == 200 and response ~= ""  then
    log("green", "POST OK")
    log("green","Response : "..response.."Status : " ..status.." Error :"..errorCode)
else
    log("red", "POST FAIL")
    log("red","Response : "..response.."Status : " ..status.." Error :"..errorCode)
end

 

Posté(e)

Désolé je n'ai pas encore partagé mon VD, faut que je me motive.

 

Vous venez de me relancer inconsciemment !

 

Sinon pour répondre à ta question directement, il faut faire cela :
 

local KODI = Net.FHttp(self.ip, tonumber(self.port))
KODI:setBasicAuthentication(kodi_user, kodi_password)
local response, status, errorCode = KODI:POST(url, payload)

 

  • Like 1
Posté(e) (modifié)

Ha super je ne connaissais pas le basicauth. J'aurais encore appris quelquechose aujourd'hui. Merci à tous les deux!

Modifié par Indyana
×
×
  • Créer...