Aller au contenu

Afficher Un Message Au D


mikael2235

Messages recommandés

Bonjour,

Cela ne fait pas partie des attributions du Syno.

A toi de développer un petit script VBS qui teste la connexion et affiche une MsgBox au milieu de l'écran !

Ça peut être utile... Je verrais à l'occasion, quand j'aurais le temps, et l'envie... :D

Bonne soirée.

Lien vers le commentaire
Partager sur d’autres sites

Je pense que c'est plutot cette solution que je cherche !!!

Mais le VBS ....:o

http://claudiosoft.online.fr/frmsgbox.html

Lien vers le commentaire
Partager sur d’autres sites

Mais comment que je suis trop gentil B)

Voici ton code VBS :

Dim v_IP

Dim v_ping_cmd, v_ping, v_etat, v_icon


v_IP = "192.168.1.10"


Set WshShell = CreateObject ("Wscript.shell" )

v_ping_cmd = "cmd /c ping.exe -n 1 " & v_IP & " | find /I " & CHR(34) & "Impossible" & CHR(34)

v_ping = WshShell.Run(v_ping_cmd, 0, TRUE)


Select Case v_ping

Case 0 :

v_etat = "hors ligne"

v_icon = "16"

Case 1 :

v_etat = "en ligne"

v_icon = "64"

Case Else

v_etat = "### ERREUR DU SCRIPT ###"

v_icon = 16

End Select


' MsgBox "v_ping_cmd = " & v_ping_cmd, 64, "DEBUG"


Msgbox "Le NAS à l'adresse " & v_IP & " est actuellement " & v_etat, v_icon, "Test de connectivité au NAS"

Tu n'as plus qu'à copier cela dans un fichier texte dont tu renommeras l'extension en VBS.

Change bien sur l'IP de ta machine à la troisième ligne v_IP = " x.x.x.x".

Tu mets ça dans ton répertoire de démarage et ça roule !

Je viens de tester et ça fonctionne avec une icone d'information quand c'est bon et une croix rouge quand c'est caca.

ed64eb75-6fb0-44ed-b762-8b492a363aec.jpg

ccf18f04-8200-4a57-852c-a31f43ee7173.jpg

EDIT : étrangement en fait j'ai oublié de tester un IP KO, et ça ne marche pas :D je postasse mon erreur et je reviens ^^

EDIT2 : C'est fixé !

Modifié par Pim
Lien vers le commentaire
Partager sur d’autres sites

En tant que puriste du scripting WSH, je proposerai un ping WMI plutôt qu'un shell ... Le résultat sera le même mais c'est plus propre :-))

POUR EXEMPLE

Lien vers le commentaire
Partager sur d’autres sites

Mais comment que je suis trop gentil B)

Voici ton code VBS :

EDIT2 : C'est fixé !

Salut Pimusu, et les autres.

Merci pour ton code, il fonctionne parfaitement.

Est-ce qu'il est possible de tester la connection à distance, par ftp par exemple ?

Et si dans le script, il trouve le Syno éteint, alors il teste par FTP et renvoie un message "accessible uniquement par ftp", et sinon, le SYNO est déconnecté.

Merci

Je viens de tester avec le même script en remplacant l'adresse ip par ; mon domaine.com:5000. Il est me répond qu'il est bien connecté (normal il l'est vraiment). Mais quand je fais un ping via cmd sur cette même adresse. ça ne répond pas. bizarre !

Modifié par mikael2235
Lien vers le commentaire
Partager sur d’autres sites

J'ai modifié comme ceci. Mais il me met tout le temps "... ACCESSIBLE UNIQUEMENT PAR FTP", même en local. Quelque chose dans mes conditions ne doit pas lui plaire.


Dim v_IP 

Dim v_ping_cmd, v_ping, v_etat, v_icon 


v_IP = "192.168.0.2" 


Set WshShell = CreateObject ("Wscript.shell" ) 

v_ping_cmd = "cmd /c ping.exe -n 1 " & v_IP & " | find /I " & CHR(34) & "Impossible" & CHR(34) 

v_ping = WshShell.Run(v_ping_cmd, 0, TRUE) 


Select Case v_ping 

Case 0 : 

v_etat = "déconnecté du réseau local" 

v_icon = "16" 

Case 1 : 

v_etat = "connecté au réseau local" 

v_icon = "64" 

Case Else 

v_etat = "### ERREUR DU SCRIPT ###" 

v_icon = 16 

End Select 


' MsgBox "v_ping_cmd = " & v_ping_cmd, 64, "DEBUG" 



If Case1 Then 

Msgbox "Le Serveur SYNOLOGY à l'adresse " & v_IP & " est actuellement " & v_etat, v_icon, "Test de connectivité au NAS"

Else






Dim v_IP2 

Dim v_ping_cmd2, v_ping2, v_etat2, v_icon2 


v_IP2 = "mondomaine.com:5000" 


Set WshShell = CreateObject ("Wscript.shell" ) 

v_ping_cmd2 = "cmd /c ping.exe -n 1 " & v_IP2 & " | find /I " & CHR(34) & "Impossible" & CHR(34) 

v_ping2 = WshShell.Run(v_ping_cmd2, 0, TRUE) 


Select Case v_ping2 

Case 0 : 

v_etat2 = "déconnecté du réseau distant" 

v_icon2 = "16" 

Case 1 : 

v_etat2 = "connecté au réseau distant, mais ACCESSIBLE UNIQUEMENT PAR FTP" 

v_icon2 = "64" 

Case Else 

v_etat2 = "### ERREUR DU SCRIPT ###" 

v_icon2 = 16 

End Select 


' MsgBox "v_ping_cmd2 = " & v_ping_cmd2, 64, "DEBUG" 

End If


If Case1 Then

Msgbox "Le Serveur SYNOLOGY à l'adresse " & v_IP2 & " est actuellement " & v_etat2, v_icon2, "Test de connectivité au NAS"

Else


Msgbox "Le Serveur SYNOLOGY à l'adresse " & v_IP2 & " est actuellement " & v_etat2, v_icon2, "Test de connectivité au NAS"


End If

Merci pour votre aide.

Lien vers le commentaire
Partager sur d’autres sites

Salut Pimusu, et les autres.

Merci pour ton code, il fonctionne parfaitement.

De rien.

Est-ce qu'il est possible de tester la connection à distance, par ftp par exemple ?

Et pour cela tu veux tester quoi ? Qu'un compte se connecte bien ? (avoir les infos d'un compte en clair dans le code c'est moche !) Juste tester que le port 21 est ouvert ? (connexion en français, connection en anglais :) )

Et si dans le script, il trouve le Syno éteint, alors il teste par FTP et renvoie un message "accessible uniquement par ftp", et sinon, le SYNO est déconnecté.

Je ne vois pas comment, tout en ayant le syno éteint, on pourrait avoir le service FTP opérationnel !

Je viens de tester avec le même script en remplacant l'adresse ip par ; mon domaine.com:5000. Il est me répond qu'il est bien connecté (normal il l'est vraiment). Mais quand je fais un ping via cmd sur cette même adresse. ça ne répond pas. bizarre !

Le "PING" ne gère pas les ports il me semble :) -> je confirme, PING n'utilise pas de protocole nécessitant un port donc il ne les gère pas.

J'ai essayé de bricoler ceci, mais ma 1ere condition ne doit pas être bonne ! Et il me met toujours connecté au réseau local, alors que je ne suis pas chez moi.



Merci
C'est même pas du bricolage là, c'est du vandalisme ! :lol: Me dit pas que tu as mis tout ça dans un même fichier ? Ensuite, c'est quoi ça ?
If Case1 Then

Msgbox "Le Serveur SYNOLOGY à l'adresse " & v_IP & " est actuellement " & v_etat, v_icon, "Test de connectivité au NAS"

Else


Msgbox "Le Serveur SYNOLOGY à l'adresse " & v_IP & " est actuellement " & v_etat, v_icon, "Test de connectivité au NAS"


End If
"Si Case1 (variable qui ne correspond à rien) alors faire un message sinon, faire le même message." Aucun intérêt :blink: T'as voulu faire quoi ? Arg et je n'avais pas vu le
If Case1 Then 

Msgbox "Le Serveur SYNOLOGY à l'adresse " & v_IP & " est actuellement " & v_etat, v_icon, "Test de connectivité au NAS"

Else

...

End IF
A mon avis avant de te lancer dans la modif' de script à l'arrache, choppe toi un site pou débutant en VBS et essaie de comprendre les instructions utilisées. Là c'est grillé que tu ne comprends rien au déroulement du code (même si je ne l'ai pas commenté il est pas trop dur je pense) et donc forcément, quand on ne pige pas, on fait tout de travers ^^ Et pour finir faudrait indenter et commenter ce que tu fais même si je n'ai pas montré l'exemple :
Dim v_IP                                            ' Déclaration des variables...

Dim v_ping_cmd, v_ping, v_etat, v_icon              '...suite et fin


v_IP = "192.168.1.10"                   			' Définition de l'adresse IP de la machine à tester


Set WshShell = CreateObject ("Wscript.shell" )      ' Création de l'objet Shell

v_ping_cmd = "cmd /c ping.exe -n 1 " & v_IP & " | find /I " & CHR(34) & "Impossible" & CHR(34)   	' commande de test

v_ping = WshShell.Run(v_ping_cmd, 0, TRUE)              ' exécution de la commande


Select Case v_ping                            ' Traitement des différents cas du ping

  Case 0 :                                    ' si le string "Impossible" est détecté dans la réponse du ping 

    v_etat = "hors ligne"

    v_icon = "16"

  Case 1 :                                    ' si il ne l'est pas

    v_etat = "en ligne"

    v_icon = "64"

  Case Else                       			' si autre

    v_etat = "### ERREUR DU SCRIPT ###"

    v_icon = 16

End Select                                     	' Fin du traitement des cas du ping


' MsgBox "v_ping_cmd = " & v_ping_cmd, 64, "DEBUG"                ' message de débeug à commenter uen fois terminé


Msgbox "Le NAS à l'adresse " & v_IP & " est actuellement " & v_etat, v_icon, "Test de connectivité au NAS"       			' Message affiché à l'utilisateur

Allez allez, on se met au boulot là !

Lien vers le commentaire
Partager sur d’autres sites

Ok sorry pour le vandalisme !:(

Ben c'est normal, je ne te l'ai pas reproché ^^

On casse toujours un objet pour savoir comment il fonctionne la première fois ^^

Ensuite on arrive à le démonter et à le remonter.

Et enfin on en fabrique un soi-même !

Tiens bon ! :)

PS : rien à voir, elle est bien ta camIP ?

Lien vers le commentaire
Partager sur d’autres sites

Re Pimusu,

Ce matin je n'avais pas le temps de répondre à ton message. Alors je vais le faire maintenant et mettre des numéros plutôt que de re-citer les messages.

1°/ Je voudrais simplement tester que le Synology est sous-tension. Après qu'un compte se connecte, bon, si il est en marche alors le compte se connectera où alors il y a un autre problème (coté administratif)

2°/ = n°1 Tout à fait d'accord avec toi, c'est donc pour ça que je veux juste tester qu'il est accessible (sous-tension)

3°/ Pour le PING, si il ne gère pas les ports comment peut-on faire, parce que si je mets mondomaine.com, alors il va me dire si mon routeur est connecté.

4°/ Excuse moi, mais j'étais pressé ce matin, et j'ai fais ça vite fais... Trop peut-être !!! C'est vrai que c'est pas mon métier, donc je me débrouille comme je peux. Je fais du VBA, du PHP, du CSS, mais en apprenant par moi-même, et c'est donc pas facile, je m'aide des forums comme je peux. Et je suppose que mes codes en général ne sont pas trés propre et mal indenté. Mais généralement avec plus ou moins de temps, j'arrive à les faire fonctionner.

Sinon si, c'est dans le même fichier. et après réflexion et avec tes remarques : ben mon code est complètement con...

5°/ End IF , problème de syntaxe. (d'ou mes nombreuses erreurs en php... )

6°/ Pour le code, j'ai jamais fais de VBS. ça ressemble beaucoup au VBA ! Je pensais que Case1 était la réponse du ping, mais en fait c'est "v_etat"

Il aurait donc fallu que je mette If v_etat="en ligne" Then MsgBox (blablabla) ....

Par contre, je ne vois pas quale est le lien entre la réponse du Ping, et v_etat ou v_icon ?

PS °/ Pour la caméra, c'est la Heden VisionCam avec wifi, je l'ai payé environ 80 euros. Je n'ai jamais reussi à faire fonctionner le wifi, je ne pense pas être une bille en informatique pourtant, ou alors c'est la cam qui à un problème.

Avec l'interface web de la cam, on peut la faire tourner, gérer les comptes admin, visiteur, et donc la possibilité ou non de faire tourner la cam.

La résolution n'est pas super, mais à ce prix là j'en demande pas mieux, on voit quand même trés bien ! La vision nocturne infra-rouge est parfaite, et on voit bien, ça fait une lumière plutot verte//blanche mais c'est bien.

Avec le Syno Ds210j, La possibilité d'enregistrer par detection de mvt ou en continu, avec gestion du planning est interessante.

C'est dommage que l'on ne puisse pas la faire tourner dans des positions prédéfinies comme prévu. Mais avec cette cam ça ne doit pas être compatible.

Si tu ou vous avez d'autres questions, n'hésitez pas à me demander. Je peux aussi faire un tuto avec photos et captures d'écran mais dans quelle section ?

Modifié par mikael2235
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.