jeudi 24 mai 2018

Raspberry épisode 21 : Raspberry et RFID

Bonjour,
Nous allons voir ici le RFID avec le raspberry
D'abord qu'est-ce que le RFID.
Il s'agit d'un moyen de communication courte distance sans contact.
On retrouve la technologie dans certaines carte d'accès, les badges d'ouverture de porte ou digicode, dans les magasins pour l'inventaire
Elle est peu à peu remplacé par le NFC qui équipe désormais nos smartphone, nos carte bancaire, carte d'identité, passeport, carte d'accès.
C'est pourquoi le coût du matériel est moins cher que le NFC (5€ contre 30 à 50€ le lecteur)


1°) Comment le connecter ?
Carte RFID   couleur de cable   Raspberry
SDA   marron   PIN25r
SCK   rouge   PIN24
MOSI   orange   PIN20
MISO   jaune   PIN22
IRQ   vert   non branché
GRD  bleu   PIN6
RST   violet   PIN23
3.3V  gris   PIN 1


cd rfid/SPI-Py/rfid2/MFRC522-python

python Read.py

Mon article rédigé le 01/08/2017 s'arrête ici car je pense avoir un problème avec le lecteur de carte.
Je me suis ensuite plongé dans l'étude de cette technologie et j'ai rapproché toutes les informations dans un nouvel article.



jeudi 17 mai 2018

VBS: rendre vos utilisateurs autonomes (Vider le gestionnaire d'identification ou Coffre Fort)


Comme vu sur l'article suivant : Migration de poste: mots de passe enregistrés il est possible d'exporter ses identifiants d'un poste à l'autre grâce aux outils Microsoft Credential Manager ou en ligne de commande avec CMDKEY.

Il est donc possible d'automatiser quelques tâches en voici un exemple :

Dim shell,command
command = "powershell.exe -nologo -command (cmdkey /list | ForEach-Object{if($_ -like '*Cible*'){cmdkey /del:($_ -replace ' ','' -replace 'Cible:','')}})"

Set shell = CreateObject("WScript.Shell")
shell.Run command,0
msgbox("Nettoyage du Gestionnaire d'identification effectué")

La solution est certes alambiqué, un VBS qui lance un PowerShell qui lance un exécutable, mais elle a le mérite d'exister, et d'être transparent pour l'utilisateur 

mercredi 16 mai 2018

Camera IP Thomson Advisen 512304

Bonjour à tous,



fiche technique:
http://www.avidsen.com/cache/documents/product/fp-cameraipwifi720p-123284-avidsen-710.pdf

la DOC: (allez savoir pourquoi elle devient le modèle 123284)
http://www.avidsen.com/cache/documents/product/notice-123284-avidsen.pdf

j'ai fait l’acquisition de cette caméra Ip, il y a peu.
Très cheap, sont prix à 19€ (Chez Castorama) vous le confirmera.

Elle n'a pas marché du premier coup, un problème sur électrique (prise micro USB bougeant)
je suis retourner au magasin pour la changer.

La nouvelle fonctionne mieux, mais je ne l'utilise pas au quotidien.
La configuration sonore m'a bien fait rire.
Tout comme la mise sous tension avec le gros CLAC sonore





Le matériel, sous libellé Thomson, c'est le chinois Advisen qui monte le matériel.
La configuration se fait au travers de l'application Visia Avisen

login par défaut : admin
password par défaut : admin

Le mot de passe Wifi ne doit pas comporter de caractères spéciaux trop compliqués.
et la configuration passe par modulation sonore entre le smartphone et la caméra.

les ports utilisés:
80,554,8080

Une fois configuré, la consultation, la prise de photo ou vidéo, déclenchement automatique sont possible sur une carte SD à ajouter. (format: FAT)

Sur PC, le logiciel IP CAMERA VIEWER 4 fait très bien l'affaire.
Sur un navigateur (images)
http://192.168.0.23/web/tmpfs/auto.jpg
ou
http://192.168.0.23/web/tmpfs/snap.jpg
 Sur un lecteur multimedia (VLC)
rtsp://192.168.0.23:554/1
ou
rtsp://192.168.0.23:554/2

Quelques liens:
http://tutoriels.domotique-store.fr/content/52/293/fr/api-des-cameras-ip-wanscam-onvif-hw-nouvelle-generation.html
https://stackoverflow.com/questions/45464775/how-to-control-ip-camera-avidsen-visia-via-api
http://public-camera.com/en/how-to-connect-Avidsen-ipcamera.html
https://forum.hardware.fr/message.php?config=hfr.inc&cat=16&post=71355&page=1&p=1&subcat=462&sondage=0&owntopic=0&new=0


Mon problème est de pouvoir lire les vidéos de la carte SD, VLC n'arrive pas à les lires.
Cependant, directement depuis le smartphone: pas de problème

[Edit : 07/08/18] Il faut choisir le bon demultiplexeur dans VLC
Outils/ Préférence / Vidéo , Choisir tous les paramètres (en bas) /Entré Codec / Demultiplexeur
Module de demultiplexage : Demultiplexeur H264
plus de problème ensuite

mardi 15 mai 2018

PowerShell Import Module ne fonctionne pas





Si en PowerShell vous souhaitez utiliser la fonction Import-Module mais que celle-ci de fonctionne pas.
"n'est pas reconnu"
Installez la dernière version du Windows Management Framework 5.1
et redémarrez


Pour être sûr: dans une fenêtre PowerShell, lancez la commande "HOST"
Si la version est 4, ce n'est pas bon
Si la version est 5.1, c'est bon
=>Testez la commande import-module


La commande "import-module" est disponible :)


lundi 7 mai 2018

Gérer les mots de passe sous MAC OS

Avec SpotLight, cherchez le trousseau d'accès.

Vous n'avez plus qu'a effacer les mots de passe manquant (double clic , supprimer)

Vous pouvez cocher la case en fin de fenetre pour afficher le mot de passe

jeudi 26 avril 2018

Migration

Si vous devez sauvegarder le profil d'un utilisateur (W7-10), voici un petit script:

mkdir %~dp0%username%\

net use > %~dp0%username%\lecteurs_reseau.txt
%~dp0%Listeimprimante.vbs

move "%~dp0imprimante.txt" "%~dp0%username%\"
move "%~dp0imprimanteDefault.txt" "%~dp0%username%\"

rem echo %~dp0

cls
@echo Office va se fermer . sauvegarder vos document avant d aller plus loin
pause
taskkill /IM outlook.exe
taskkill /IM excel.exe
taskkill /IM word.exe



rem xcopy /S /Q /H /Y "%userprofile%\OneDrive\*" "%~dp0%username%\OneDrive\"
rem xcopy /S /Q /H /Y "%userprofile%\OneDrive Entreprise – Modifications *\*" "%~dp0%username%\OneDrive Entreprise – Modifications non synchronisées\"

xcopy /S /Q /H /Y "%userprofile%\Contacts\*" "%~dp0%username%\Contacts\"
xcopy /S /Q /H /Y "%userprofile%\Favorites\*" "%~dp0%username%\Favorites\"

xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Microsoft\Sticky Notes\*" "%~dp0%username%\AppData\Roaming\Microsoft\Sticky Notes\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Microsoft\Excel\*" "%~dp0%username%\AppData\Roaming\Microsoft\Excel\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Microsoft\Proof\*" "%~dp0%username%\AppData\Roaming\Microsoft\Proof\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Microsoft\Signatures\*" "%~dp0%username%\AppData\Roaming\Microsoft\Signatures\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Microsoft\Templates\*" "%~dp0%username%\AppData\Roaming\Microsoft\Templates\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Microsoft\UProof\*" "%~dp0%username%\AppData\Roaming\Microsoft\UProof\"

xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Mozilla\*" "%~dp0%username%\AppData\Roaming\Mozilla\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Local\Google\*" "%~dp0%username%\AppData\Local\Google\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Roaming\Apple\*" "%~dp0%username%\AppData\Roaming\Apple\"

xcopy /S /Q /H /Y "%userprofile%\Desktop\*" "%~dp0%username%\Desktop\"
xcopy /S /Q /H /Y "%userprofile%\Documents\*" "%~dp0%username%\Documents\"
xcopy /S /Q /H /Y "%userprofile%\Pictures\*" "%~dp0%username%\Pictures\"
xcopy /S /Q /H /Y "%userprofile%\Music\*" "%~dp0%username%\Music\"
xcopy /S /Q /H /Y "%userprofile%\downloads\*" "%~dp0%username%\downloads\"
xcopy /S /Q /H /Y "%userprofile%\Videos\*" "%~dp0%username%\Videos\"
xcopy /S /Q /H /Y "%userprofile%\AppData\Local\Microsoft\Outlook\*.pst" "%~dp0%username%\AppData\Local\Microsoft\Outlook\*.pst"



pause
cls
pause
echo pensez aux lecteurs reseau
echo pensez aux imprimantes
echo pensez signatures par défaut
Et le script ListeImprimante à mettre au meme :
Const ForWriting = 2
Dim fso, f  
strComputer = "."

Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colInstalledPrinters = objWMIService.ExecQuery ("Select * from Win32_Printer")

Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(".\imprimante.txt", ForWriting,true)
set f2 = fso.OpenTextFile(".\imprimanteDefault.txt", ForWriting,true)

For Each objPrinter in colInstalledPrinters

if (objPrinter.Name <> "Fax") and (objPrinter.Name <> "Microsoft Office Live Meeting 2007 Document Writer") and (objPrinter.Name <> "Microsoft XPS Document Writer")  Then
        f.write(objPrinter.Name & vbnewline)
    end if

if (objPrinter.Default = true) then
    f2.write(objPrinter.Name & vbnewline)
end if


Next

Migration : VBS : PS :Signature Outlook



Si vous souhaitez enregistrer le nom des signatures utilisées pour les nouveaux emails et réponse dans Outlook, voici un petit script VBS (et PowerShell) pour afficher ces informations.

VBS:

Const ForReading = 1, ForWriting = 2
Set WshShell = WScript.CreateObject("WScript.Shell")
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")


Set objWord = CreateObject("Word.Application")
Set objEmailOptions = objWord.EmailOptions
Set objSignatureObject = objEmailOptions.EmailSignature

msgbox (objSignatureObject.NewMessageSignature)
Set f = fso.OpenTextFile("c:\temp\mail_signature_new.txt", ForWriting,true)
f.write(objSignatureObject.NewMessageSignature)

msgbox (objSignatureObject.ReplyMessageSignature)
Set f = fso.OpenTextFile("c:\temp\mail_signature_rep.txt", ForWriting,true)
f.write(objSignatureObject.ReplyMessageSignature)
'objSignatureObject.ReplyMessageSignature = "Signature"

PowerShell: 

#Set the signature as default for new emails
$MSWord = New-Object -ComObject word.application
$EmailOptions = $MSWord.EmailOptions
$EmailSignature = $EmailOptions.EmailSignature

$wshell = New-Object -ComObject Wscript.Shell
$wshell.Popup($EmailSignature.NewMessageSignature,0,"Done",0x1)
$wshell.Popup($EmailSignature.ReplyMessageSignature,0,"Done",0x1)

$file = new-item "c:\temp\email_new.txt" –type file -force
add-content $file $EmailSignature.NewMessageSignature

$file = new-item "c:\temp\email_rep.txt" –type file -force
add-content $file $EmailSignature.ReplyMessageSignature

#$EmailSignature.NewMessageSignature = "agadou" #insert the signature name
#$EmailSignature.ReplyMessageSignature ="agadou"

$MSWord.Quit()