Récupérer le login de l'utilisateur en cours

Dans mon design plein écran je l’ai rajouté directement en utilisant la variable js existante currentUserLogin
$('#userLogin').html(user_login);

j’ai pas testé mais en php d’après la doc tu as user::getLogin() qui devrait correspondre à tes besoins

https://jeedom.github.io/documentation/phpdoc/classes/user.html#method_getLogin

Bonjour

alors en js sur un design

$(‹ #userLogin ›).html()

ca donne rien du tout (PI : je connais le jquerry)
tu m’aurais pas oublié un bout ?

merci pour ton aide

cdt

ah mince :rofl:
alors dans le code de mon design j’ai créé un <div id="userLogin"></div> à l’emplacement où je voulais que le nom apparaisse

<script>$("#userLogin").html(user_login);</script> à la fin du code de mon design rempli donc le div portant le nom userLogin

Bonjour

je suis en V4, en faisant ce que tu me dit j’ai une erreur JS :
Uncaught ReferenceError: currentUserLogin is not defined

<div id="userLogin"></div>
<script>
  $('#userLogin').html(currentUserLogin);
</script>

autant pour moi javais pas vu tout mon code ça fait un moment qu’il est en place, la variable de base c’est user_login

$("#userLogin").html(user_login);

lui ça sera bon ^^ désolé :stuck_out_tongue:

yep ! trop cool , la variable JS ‹ user_login › marche , MERCI !

Du coup pour le design c’est OK, je cherche désormais une solution pour les scénarios, dont a priori il faut que je fouille le php

Si tu a besoin, passe discord ou alors tu me dit je te le partage ici. Mais on a deux user qui ont crée un scenario pour faire sa.

Adapter pour discord link mais utilisable partout avec quelque édit.

Cdt
Thibaut

Bonjour

oui je suis trop partant pour que tu me partages ton code :slight_smile:

C’est pas le mien mais celui d’un autre, Je vois avec lui si il vient te le partager ou si je le fait.

Cdt
Thibaut

Je vais préciser mon besoin,

je loue une partie mitoyenne de la maison.

J’ai créé un user ‹ locataire › qui peut controler le portail et accéder à la caméra du portail.

grace a ton code JS, désormais si le user locataire va sur mes designs (on peut pas les filtrer par user), ca lui pop up qu’il a pas le droit et le redirige vers le dashboard .

Désormais je voudrais que mon script qui lance la fermeture du portail (je passe par un virtuel qui lance un script ne fasse pas parler mon google Home lorsque c’est les voisins qui l’ouvre !

Je vient de demander,
Si tu veux entrée en contact direct avec eux, voici le lien : Discord

Cdt
Thibaut

Salut,
Nous avons créé un scénario qui te permet de savoir :

  • lorsqu’un utilisateur se connecte, tu as son nom
  • quand tu le souhaites, tu peux avoir la liste des utilisateurs avec leur dernière connexion
    Est-ce que ça répond à ton problème ?
    Je travaille sur l’amélioration de ce scénario. A savoir, si l’utilisateur est toujours actif au moment où tu le demandes
1 « J'aime »

Bonjour

excellent travail !
Mais je crois pas que ca réponde a ma problématique, moi je cherche a savoir qui lance un scénario, hors si 2 users sont loggués en meme temps ca pose soucis avec ton scénario !

Merci pour ton aide
cdt

Bonjour @frixo

Dans core/php/utils.inc.php, il existe la fonction isConnect() qui peut être appelée avec en paramètre l’utilisateur à vérifier.

if (!isConnect('admin')) {
	throw new \Exception('401 Unauthorized');
}
1 « J'aime »

Bonjour

alors j’ai lancé le code suivant dans un bloc code d’un scénario

if (isConnect('admin')) {
	$scenario->setLog('---> ADMIN');
}else{
  $scenario->setLog('-----> KO');
}
$scenario->setLog('end');

les logs disent :
[2020-06-07 09:56:25][SCENARIO] Start : Scenario lance manuellement.
[2020-06-07 09:56:25][SCENARIO] Exécution du sous-élément de type [action] : action
[2020-06-07 09:56:25][SCENARIO] Exécution d’un bloc élément : 359
[2020-06-07 09:56:25][SCENARIO] Exécution du sous-élément de type [action] : code
[2020-06-07 09:56:25][SCENARIO] Exécution d’un bloc code
[2020-06-07 09:56:25][SCENARIO] -----> KO
[2020-06-07 09:56:25][SCENARIO] end
[2020-06-07 09:56:25][SCENARIO] Fin correcte du scénario

pourtant je suis bien en admin !

Ton login est admin ?

Bonjour @frixo

Effectivement, ça ne fonctionne pas:
Ce code dans un scénario affiche systématiquement : Not connected

if (!isConnect()) $scenario->setLog('Not connected ');

Ça doit être normal, c’est le serveur qui exécute les scénarios sans restriction.

Mon utilisateur limité à qui j’ai donné un accès visualisation à une caméra, ne voit qu’elle.
De même pour les commandes de la porte où il a un accès visu et action.

Sur le design il ne voit que la caméra et les commandes de la porte.

Sur le dashboard, il voit tous les objets et les équipement la caméra et commande porte.
Il y a quand même bcp trop de choses qui s’affichent.

  • Accés à toutes les vues avec leur commandes.
  • Accès à la liste de tous les objets

bonjour
tu peux via js
savoir qui clic (vu plus haut)
enregistrement dans virtuel « api js »
et historique
via une surveillance html class/div
la surveillance MutationObserver
exemple

si la commande change
exécute pour en récupérer l’info

l’équipement sur la même page que le plug html display
si oui c’est normal
2 data-cmd_id avec le meme ID
un seul se met a jour (j essai de trouver une manière pour reprendre la mise à jour)

ou plus simple via virtuel action default
« simple bouton »

en configuration avancé

ajouté en action ton scénario (tag si ti veux)
et un Event sur une info

je crois que jeedom peux bloqué objet
sinon idem en html un widget ou plug
display html
si user = « quidam » tous caché

pour du simple hors jeedom
une page html un iframe sur ta cam
et un http exécute scénario et commande
avec un exécuté sur un virtuel mettant à jour l’utilisateur X
et dans ton scénario
si virtuel n’a pas changé dans les 5 secondes c"est toi

Hello,
Ces fonctions m’intéresse bien. Tu peux partager le code ?