Script d’alerte de connexion Teamviewer
Je vous partage un petit script qui permet d’envoyer un email avec le récap des connexions entrantes Teamviewer pour la journée d’hier.
C’est un script tout simple écrit en powershell qui va se servir du fichier de log C:\Program Files (x86)\TeamViewer\Connections_incoming.txt. Pour que ce fichier existe il faut cocher le log de connexion entrante dans les options Teamviewer

Voila le script
<#
.Synopsis
This script allows you to get the list of Teamviewers connections for yesterday
.CREDITS
Geo Holz https://blog.jolos.fr
#>
$smtpServer="192.168.X.X"
$smtpfrom="toto@tata.fr"
$smtpto="titi@tata.fr,tutu@tata.fr"
$messageSysAdmin = New-Object System.Net.Mail.MailMessage $smtpfrom, $smtpto
$messageSysAdmin.Subject = "SERVER1 : Connection Teamviewer pour la journée d'hier"
$messageSysAdmin.IsBodyHTML = $true
$Yesterday=(get-date (get-date).addDays(-1) -UFormat "%d-%m-%Y")
$string=Get-Content "C:\Program Files (x86)\TeamViewer\Connections_incoming.txt" -Tail 10
foreach ($line in $string)
{
if ( $line.split("`t")[2].split(" ")[0] -eq $Yesterday)
{
$LogTW=$LogTW + $line.split("`t")[1] + " s'est connecté hier à " + $line.split("`t")[2].split(" ")[1] + " jusqu'à " + $line.split("`t")[3].split(" ")[1] + "<br />"
}
}
$messageSysAdmin.Body ="Connection Teamviewer pour la journée d'hier :<br/>"+$LogTW
if ($LogTW) {
$mailSysadmin = New-Object Net.Mail.SmtpClient($smtpServer)
$mailSysadmin.Send($messageSysAdmin)
}
Donc le lendemain vous recevrez ce genre d’email :
Connection Teamviewer pour la journée d’hier :
Hervé Tutu s’est connecté hier à 13:00:50 jusqu’à 13:36:53
Kris Tata s’est connecté hier à 15:05:06 jusqu’à 15:08:15
Kris Tata s’est connecté hier à 16:40:15 jusqu’à 17:00:54
Il y a 3 variables indispensable à savoir $smtpServer, $smtpfrom et $smtpto.
Il est aussi facile de modifier l’objet du message et son contenu