Background
The room display was a bit of a gimmick as I no longer had any use for an old tablet. I had an old HP Stream 7 tablet lying around, which I had bought for a bargain price at some point. After a few little gimmicks, it was just a dust collector. It was quite suitable as a dust collector, but not for anything else, as you can see from the hardware data:
1 GB RAM and the small Atom CPU were simply no fun. Originally, the Stream 7 ran "Windows 8 with Bing", but that could be updated to Windows 10 Home at some point and then upgraded to Windows 10 Pro. However, Windows 8 already ran like a bag of screws on the thing and with the touchscreen it was more a matter of luck to get what you wanted.
Somewhere on a training course I saw these "room displays" on the meeting rooms and thought that could give the tablet a second life. Just hang it up next to the bathroom door. Create the bathroom as a "meeting room" on the Exchange server and make it "bookable" for the ladies of the house. I don't know why, 3 ladies and 2 bathrooms (of which one lady can't yet see over the edge of the sink) seem to represent an undersupply of wet rooms for reasons I don't understand. Joking aside, it was purely a DIY project.
The implementation
The tablet should therefore display whether a room is booked and use the EWS interface of the Exchange server. Whether the room is free or booked can then be displayed via the website. The tablet's browser in full screen mode is sufficient to display the website.
This resulted in the following small PowerShell script:
The script requires the EWS API 2.2 (Download). I installed the EWS API directly on the tablet, or rather I copied the directory from my PC to the tablet, because the EWS installer is only available as a 64-bit installer, while only 32-bit Windows is running on the tablet. I then started the PowerShell script every 5 minutes with the Windows Task Scheduler.
The script retrieves the relevant data via EWS and creates a small HTML file, which I then simply display in full screen mode using Internet Explorer. Special feature: The HTML file contains a meta tag in the header that instructs the browser to update the HTML file every 60 seconds. This was necessary so that a status change is also displayed.
The status pages for the room should then look something like this (free and occupied):
The result
It didn't actually work that badly, but would have needed some fine-tuning:
You can still see the scrollbars at the bottom and right of the display in the picture. However, this could have been done quickly by adjusting the script accordingly. However, I didn't finish developing the room display for a relatively banal reason: There is no socket next to the bathroom door...
By the way, the display has 7 inches, so that would have been enough for a nice display, and I would have had to adjust the colors. I think a black background would have looked better. However, the tablet would have had to be charged at some point (several times a day) and repeatedly taking it off the wall, charging it and hanging it up again was not an option.
By the way: The tablet is back in the cupboard and serves as a dust catcher, but it still works. I reloaded it for this page and tried out the script. Maybe I'll find another use for it...
Hallo zusammen,
bin auf dieses Script gestoßen und würde es gerne mit unserem Exchange 2019 zum laufen bekommen.
Aber leider keine AHnung wie.
Wo finde ich die EWS API 2.2 oder benötige ich diese nicht mehr beim 2019? Im Internet finde ich sie leider nicht…
Wäre klasse wenn mir jemand helfen könnte.
Hallöchen,
hat noch jemand das aufgebohrte Script, welches mit mehreren Raumpostfächern funktioniert und kann es hier posten?
Grüße
Hallo Leute,
tolles Projekt. Bekomme auch die Fehlermeldung:
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren
Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
Wie habt ihr das gelöst?
Danke,
Benjamin
Hallo,
erstmal Danke an Frank für das Skript. Ich habe dies für mein Unternehmen etwas abgeändert und möchte das natürlich keinem vorenthalten.
Anpassungen sind:
– Anzeige von maximal 2 Terminen (aktueller oder nächster Termin und ggf. darauffolgender Termin).
– lauffähig unter Exchange 2016 (mit kleiner Änderung auch mit 2019: $version muss angepasst werden)
– Ausgabe von Termininformationen (Organisatorname, Terminbetreff (Titel), Datum, Uhrzeit (von-bis))
Hier mal das Coding:
[CODE]
$uisplayname = „BESPRECHUNG“
$mailboxname = „email@domain.tld“
$username = „BESPRECHUNG“
$password = „12345678“
$domain = „domain.local“
$RoomHTMLPath = „\\server-ip\ordner\BESPRECHUNGSRAUM.html“
$EWSPath = „C:\Program Files\Microsoft\Exchange\Web Services\2.2\Microsoft.Exchange.WebServices.dll“
# Termine per EWS abfragen (heute bis +30 Tage, maximal 10 Termine (es werden nur 2 Termine ausgegeben!))
$creds = New-Object System.Net.NetworkCredential(„$username“, „$password“)
Add-Type -Path $EWSPath
$version = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2016
$service = new-object Microsoft.Exchange.WebServices.Data.ExchangeService($version)
$service.Credentials = $creds
$service.AutodiscoverUrl($MailboxName)
$calendar = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($service,[Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::Calendar)
$calendarView = new-object Microsoft.Exchange.WebServices.Data.CalendarView([System.DateTime]::Now.AddDays(0), [System.DateTime]::Now.AddDays(30))
$calendarView.MaxItemsReturned = 10;
$calendarView.PropertySet = new-object Microsoft.Exchange.WebServices.Data.PropertySet([Microsoft.Exchange.WebServices.Data.BasePropertySet]::FirstClassProperties)
$results = $calendar.FindAppointments($calendarView)
#(Debug) Ergebnisse der EWS Abfrage anzeigen:
#$results | ft subject,start,end
#Termine verarbeiten
$timenow = get-date
$currentapp = $results | where {$timenow -ge $_.start -and $timenow -le $_.end}
if ($currentapp)
{
#Wenn $currentapp existiert gibt es jetzt einen Termin und der Raum ist belegt
$roomfree = $False
#(Debug) Status des Raums ausgeben:
#$roomfree
#Details des Termins holen
$MeetingStart = $currentapp.Start | get-date -format „HH:mm“
$MeetingEnd = $currentapp.End | get-date -format „HH:mm“
$MeetingDate = $currentapp.Start | get-date -format „dd.MM.yyyy“
$MeetingSubject = $currentapp.Subject
#zweiter Termin?
$Nextmeeting2 = $results | where {$_.start -ge $timenow} | select -first 1
#(Debug) Übernächstes Meeting ausgeben:
#$Nextmeeting2 | ft
$Nextmeeting2Start = $Nextmeeting2.start | get-date -format „HH:mm“
$Nextmeeting2End = $Nextmeeting2.End | get-date -format „HH:mm“
$Nextmeeting2Date = $Nextmeeting2.start | get-date -format „dd.MM.yyyy“
$Nextmeeting2Subject = $Nextmeeting2.Subject
}
else
{
#Wenn $currentapp nicht existiert ist der Raum frei
$roomfree = $True
#Status des Raums ausgeben:
#$roomfree
$Nextmeeting = $results | where {$_.start -ge $timenow} | select -first 1
#(Debug) Nächstes Meeting ausgeben:
#$Nextmeeting | ft
$NextmeetingStart = $Nextmeeting.start | get-date -format „HH:mm“
$NextmeetingEnd = $Nextmeeting.End | get-date -format „HH:mm“
$NextmeetingDate = $Nextmeeting.start | get-date -format „dd.MM.yyyy“
$NextmeetingSubject = $Nextmeeting.Subject
#übernächster Termin vorhanden?
$Nextmeeting2 = $results | where {$_.start -gt $Nextmeeting.start} | select -first 1
#(Debug) Übernächstes Meeting ausgeben:
#$Nextmeeting2 | ft
$Nextmeeting2Start = $Nextmeeting2.start | get-date -format „HH:mm“
$Nextmeeting2End = $Nextmeeting2.End | get-date -format „HH:mm“
$Nextmeeting2Date = $Nextmeeting2.start | get-date -format „dd.MM.yyyy“
$Nextmeeting2Subject = $Nextmeeting2.Subject
}
#HTML Seite erstellen
if ($roomfree -eq $true)
{
$html = “
K2 Besprechungsraum
AKTUELL FREI
Nächste Buchung(en):
(max. Anzeige von 2 Terminen in den nächsten 30 Tagen)
$NextmeetingDate $NextmeetingStart $NextmeetingEnd
$NextmeetingSubject
$Nextmeeting2Date $Nextmeeting2Start $Nextmeeting2End
$Nextmeeting2Subject
“
}
else
{
$html = “
K2 Besprechung
AKTUELL BELEGT
Gebucht:
$MeetingDate $MeetingStart $MeetingEnd
$MeetingSubject
Nächste Folgebuchung:
$Nextmeeting2Date $Nextmeeting2Start $Nextmeeting2End
$Nextmeeting2Subject
“
}
# Datei BESPRECHUNGSRAUM.html erstmal löschen
Remove-Item $RoomHTMLPath -recurse
#HTML Seite speichern
$html | set-content „$RoomHTMLPath“
#Debug – Pause setzen
#Read-Host ‚Press Enter to continue…‘ | Out-Null
[/CODE]
Man kann das natürlich auch noch etwas „schöner“ gestalten, aber für’s Erste sollte das reichen.
Viel Spaß damit,
Mathias
Hallo, kann man das Script so anpassen, dass der nächste Termintitel angezeigt wird? Also Beispiel „Termin mit Herr Meier“.
Welche Variable müsste man hier auslesen aus dem Kalender?
Und könnte man auch mehrere nächste Termine anzeigen lassen?
Also:
10.00-10.30 Uhr Termin Meier
11.00 – 12.30 Termin Müller
Vielen Dank für eine Info.
Hallo Bernd,
habe gerade das Coding gepostet, welches Dir bei Deinem Problem weiterhelfen sollte.
Viele Grüße
Mathias
Hallo Alexander,
wäre auch sehr an dem Script interessiert.
Danke im Voraus!
Hallo zusammen,
ich Reihe mich hier auch einmal ein, dass ich Interesse hätte =) falls es mit Exchange 2019 auch funktioniert…
Gruß und danke!
Hallo Alexander,
wäre auch an deinem Script interessiert … würde mich freuen!!
Danke schonmal
Hallo Alexander,
ich wäre ebenfalls an dem angepassten Skript interessiert.
Viele Grüße
Fabian
Moin,
ich hätte ebenfalls Interesse an dem Skript für Exchange 2016.
Hallo Alexander,
ich wäre auch sehr an dem Skript für Exchange 2016 interessiert. Kannst du mir es bitte mailen.
Vielen Dank
Daniel
Hi@all,
ich wäre, falls möglich, auch an dem Skript interessiert, wäre super nett. Danke schon mal.
Hallo Alexander,
auch mich würde das Skript brennend interessieren.
Es wär net, wenn Du es mir zukommen lassen würdest.
Herzlichen Dank
Andreas
Hallo, auch mich würde das funktionierende Skript für Exchange 2016 interessieren.
Ich wäre auch an dem Script interessiert.
Hat jemand das funktionierende Script für Exchange 2016?
Ich hätte dieses Script gerne.
Hallo,
super Skript, bin begeistert. Würde es gerne auf unserem Exchange 2016 nutzen. Bekomme aber folgende Fehler:
In D:\Raumanzeige\Raumanzeige.ps1:15 Zeichen:65
+ … = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]:Exchange2016
+ ~~~~~~~~~~~~~
Unerwartetes Token „:Exchange2016“ in Ausdruck oder Anweisung.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnexpectedToken
PS D:\Raumanzeige> D:\Raumanzeige\Raumanzeige.ps1
Ausnahme beim Aufrufen von „AutodiscoverUrl“ mit 1 Argument(en): „The Autodiscover service couldn’t be located.“
In D:\Raumanzeige\Raumanzeige.ps1:19 Zeichen:1
+ $service.AutodiscoverUrl($mailboxName)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : AutodiscoverLocalException
Ausnahme beim Aufrufen von „Bind“ mit 2 Argument(en): „The Url property on the ExchangeService object must be set.“
In D:\Raumanzeige\Raumanzeige.ps1:21 Zeichen:1
+ $calendar = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($servi …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ServiceLocalException
Es ist nicht möglich, eine Methode für einen Ausdruck aufzurufen, der den NULL hat.
In D:\Raumanzeige\Raumanzeige.ps1:26 Zeichen:1
+ $results = $calendar.FindAppointments($calendarView)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren
Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
In D:\Raumanzeige\Raumanzeige.ps1:61 Zeichen:44
+ … $NextmeetingStart = $Nextmeeting.start | get-date -format „HH:mm“
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren
Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
In D:\Raumanzeige\Raumanzeige.ps1:62 Zeichen:40
+ $NextmeetingEnd = $Nextmeeting.End | get-date -format „HH:mm“
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren
Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
In D:\Raumanzeige\Raumanzeige.ps1:63 Zeichen:43
+ … $NextmeetingDate = $Nextmeeting.start | get-date -format „dd.MM.yyyy“
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
Hat denn keiner das funktionierende Script? Bei mir will es einfach nicht klappen…
Hallo Alexander!
Kannst Du uns dein Script zur Verfügung stellen??
LG
Hallo,
auch ich erhalte folgende Fehlermeldung:
Get-Date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akz
eptiert oder die Eingabe und deren Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren
Kann hier mal jemand das überarbeitete Skript posten? Ich bekomme es leider nicht zum Laufen. :-(
Schöne Grüße Herbertus
Guten Morgen,
ich weiß ich bin etwas spät aber vielleicht hilfts dem einen oder anderen noch. Vorweg ich bin kein Programmierer und Frank hat hier sehr gut gearbeitet und im Script entsprechend sauber kommentiert. Ich habe mir das Script angesehen und auch bei mir kam zunächst der Fehler mit der ParameterBindingsException. Beim genaueren testen, stellte ich fest dass der Fehler nur auftaucht wenn kein zukünftiger Termin gefunden wird. Damit ist es logisch dass ein Fehler auftaucht. Wenn kein Termin in dem Raum zu finden ist, bleibt die Variable „nextmeeting“ leer und somit kann er auch nichts formatieren.
Ich habe das so gelöst, dass ich die Variable „nextmeeting“ prüfen ob leer oder nicht und die folgenden variablen erst setze und formatiere, wenn „nextmeeting“ = „NICHT LEER“ ist.
Die Abfrage geht mit $nextmeeting(nicht leer) bzw. !$nextmeeting (leer)
Das sieht dann bei mir so aus:
.
.
.
$Nextmeeting = $results | where {$_.start -ge $timenow} | select -first 1
#Prüfung ob nextmeeting einen wert enthält
if ($nextmeeting){
$NextmeetingStart = $Nextmeeting.start | get-date -format „HH.mm“
$NextmeetingEnd = $Nextmeeting.End | get-date -format „HH.mm“
$NextmeetingDate = $Nextmeeting.start | get-date -format „dddd dd.MM.yyyy“
$NextmeetingTitel = $Nextmeeting.Subject
$NextmeetingOrg = $Nextmeeting.Organizer}
#wenn nextmeeting leer, wird Variable $KeinTermin gesetzt.
else {$KeinTermin = „Nix geplant“}
.
.
.
In dem HTML Teil habe ich dann mit
elseif
gearbeitet um bei 0 Zukunftsterminen, keine Leerfelder auf der HTML Seite auszugeben.
OK, vielleicht ist dass auch nicht sauber programmiert, aber für mich als Code-Laie reichts, und es funktioniert.
Beste Grüße
Moin,
hat das mal einer in einer reinen Exch. Online Umgebung probiert oder geht das da nicht?
Danke
Hallo Alexander
Ich hätte das Script auch gerne.
Danke
Moin, auch ich hätte gerne das aufgebohrte Script….
Danke vorab
VG
Hallo Alexander!
Ich hätte dein Script auch.
Vielen Dank im Voraus.
VG
Hallo Alexander!
Ich hätte dein Script auch gerne.
Grüße
Hallo Alexander!
Kannst du uns dein Script zur Verfügung stellen??
LG
Da sich hier einige über den Selben Fehler beklagen, habe ich mir das Script genauer angesehen, und adaptiert. Bei mir Funktioniert es nun. Da wir mehrere Räume haben, habe ich das Script auch gleich aufgebohrt, um alle Räume auf einmal zu erstellen. Falls wer bedarf hat bitte einfach kurz einen Kommentar hinterlassen :)
LG
Hallo Alexander, könnte ich das aufgebohrte Script bekommen?
Das wäre super nett. Vielen Dank und einen schönen Tag noch
Gruß
Jürgen Laubrock
Hallo Alexander,
gibt es das Skript noch?
Wäre sehr schön, wenn ich es bekommen könnte.
Vielen Dank
Michael
Hallo Alexander,
wäre auch an deinem Script interessiert … würde mich freuen!!
Danke schonmal
Hallo Alexander,
gibt es das aufgebohrte Skript noch? Wenn ja, stellst du mir dieses bitte per Mail zur Verfügung?
Im Voraus vielen lieben Dank.
Hallo Alexander,
ich interessiere mich sehr fuer das Skript.
koennen Sie mir bitte Schicken ?
VG
maro
Hallo Alexander,
gibt es das Script noch? Dann wäre ich auch daran interessiert.
LG Oli
Hallo Alex,
könnte ich das Script noch bekommen?
Vielen Dank und viele Grüße
Nils
Eine ganz andere Frage?! Wozu benötige ich für den Raum ein Passwort in dem Script?? Oder kann ich ein vorhandenes Konto samt Passwort verwenden? Wenn ich den Raum anlege werde ich nicht nach einem Passwort gefragt. Das Raumkonto schein auch gesperrt zu sein (Pfeil nach unten).
Grüße Herta
Hallo,
habe ebenfalls das Problem mit dem fehlerhaften Aufruf:
—————————————————————–
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben
akzeptiert oder die Eingabe und deren Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben
akzeptieren.
In C:\neu\Raumanzeige.ps1:61 Zeichen:44
+ $NextmeetingStart = $Nextmeeting.start | get-date -format „HH:mm“
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben
akzeptiert oder die Eingabe und deren Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben
akzeptieren.
In C:\neu\Raumanzeige.ps1:62 Zeichen:40
+ $NextmeetingEnd = $Nextmeeting.End | get-date -format „HH:mm“
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben
akzeptiert oder die Eingabe und deren Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben
akzeptieren.
In C:\neu\Raumanzeige.ps1:63 Zeichen:43
+ $NextmeetingDate = $Nextmeeting.start | get-date -format „dd.MM.yyyy“
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
—————————————————————–
es scheint so, als ob er keine Einträge findet.
Hi Frank,
unser Azubi würde in dem Fall leider eher die ganze Exchange Farm zerstören :)
Ich muss auch ehrlich gestehen, dass ich aktuell ziemlich auf dem Schlauch stehe…
Dein Skript schmeißt mich in Zeile 19 immer raus mit dem Error:
„The Autodiscover service couldn’t be located.“
Hast du einen Lösungsansatz für mich?
Hallo zusammen,
hat inzwischen jemand zu diesem Fehler eine Lösung?
Gruß
Ist der Autodiscover-Eintrag im DNS gesetzt und korrekt?
Hi Franky,
wir sind ein mittelständischer Konzern mit mehreren Standorten weltweit – wobei ich in der zentralen IT sitze, mitverantwortlich für AD & Exchange.
Unser IT Kollege am Standort Österreich hat für diesen Fall ein sehr teures System gekauft und implementiert.
Ein Monitor der neben jedem Meetingraum hängt und anzeigt, OB dieser Raum gebucht ist, WANN und durch WEN.
Wenn dieser Raum frei ist, kann man darüber auch direkt „spontan“ buchen.
Wie schwer wäre es, denn dein Skript in diese Weise zu erweitern?
Evtl. ein Butten „jetzt buchen“ und die notwendige Zeit angeben, damit dieser Raum dann sofort gebucht wird.
Wie schwer wäre das umzusetzen?
Liebe Grüße
Mille
Hi,
ich würde nicht dieses Script erweitern, dies war nur ein kleines Spielprojekt. Grundsätzlich ist es aber nicht weiter kompliziert deine Anforderung umzusetzen. Man könnte daraus ein kleines Azubi Projekt machen.
Gruß,
Frank
Hi Franky,
vielen Dank für das tolle Projekt. Ich komme allerdings genau wie mein Vorredner nicht weiter…
LG Micha
—————–
PS D:\Userprofil\jelinski.KS\Desktop\Raumanzeige> D:\Userprofil\jelinski.KS\Desktop\Raumanzeige\Raumanzeige.ps1
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren
Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
In D:\Userprofil\jelinski.KS\Desktop\Raumanzeige\Raumanzeige.ps1:61 Zeichen:44
+ … $NextmeetingStart = $Nextmeeting.start | get-date -format „HH:mm“
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren
Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
In D:\Userprofil\jelinski.KS\Desktop\Raumanzeige\Raumanzeige.ps1:62 Zeichen:40
+ $NextmeetingEnd = $Nextmeeting.End | get-date -format „HH:mm“
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren
Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
In D:\Userprofil\jelinski.KS\Desktop\Raumanzeige\Raumanzeige.ps1:63 Zeichen:43
+ … $NextmeetingDate = $Nextmeeting.start | get-date -format „dd.MM.yyyy“
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : InputObjectNotBound,Microsoft.PowerShell.Commands.GetDateCommand
Hi,
bin gerade zufällig auf dieses Super Script gestoßen.
Wir nutzen Exchange 2013. Leider erhalte ich einen Fehler bei get-date:
get-date : Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren Eigenschaften mit keinem der
Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
In Z:\Installationen\Software\Scripts\Raumanzeige\Raumanzeige\Raumanzeige.ps1:61 Zeichen:44
+ … $NextmeetingStart = $Nextmeeting.start | get-date -format „HH:mm“
Kann ich da irgendwas tun?
Moin,
Nettes Tool!
Wäre es auch möglich die Aufbereitung und die Seite direkt auf dem Server laufen zu lasen und die Seite dann von einem anderen Device aus aufzurufen?
Habe hier noch einige ale Androiden rumliegen die ich gerne für solch zwecke nutzen würde.
Ein Webserver läuft ja auf dem Server sowieso.
Gruss Ralf
Hi Ralf,
ja, das geht natürlich auch.
Gruß, Frank