blob 10 Geschrieben 27. Juni 2011 Melden Teilen Geschrieben 27. Juni 2011 Hallo Freunde der Sonne :-) Vielleicht hat jemand einen entscheidenden Tipp. Ich habe hier mehrere Raumpostfächer in Exchange 2007 SP3, welche für Besprechungsräume genutzt werden. Autoaccept ist eingeschaltet, jeder kann den Raum buchen. Der Raum ist mit Kosten verbunden und bis jetzt wurde es immer per Hand und pauschal vom Sekräteriat den Kunden in Rechnung gestellt. Es soll nun eine Stundenabrechnung, möglichst automatisiert, erfolgen. D.h. ich benötige eine Möglichkeit, die Termine im Raumpostfach mittels Script (PS, VBS?) in eine Art Log File auslesen lassen zu können. Benötigt werden der Owner, Startzeit, Endzeit, Subject, Teilnehmer. Ich kann mir dann ein VB Scirpt schreiben, welches diese Logdatei analysiert und entsprechend z.B. eine Excel Liste erstellt. Anhand der Teilnehmer (möglichst AD Loginname oder Mailadresse, hauptsache eindeutig zuordbar im AD) und der gebuchten Zeit kann ich dann dem User die Raum pro angefangene Stunde in Rechnung stellen. Die Kostenstellen stehen nämlich bei jedem User im AD. Mein Lösungsansätz: Ein Script, welches einmal am Tag läuft und alle aktuellen Buchungen in eine TXT/CSV schreibt. Am Monatsende lasse ich dann mein zweites Script laufen, welches das Log ausliest. Probleme: Wie handele ich Absagen und Terminverschiebungen? Der Owner könnte den Termin ja einfach am Ende der Besprechung löschen und somit würde es nicht in der Abrechnung auftauchen... Aber das sind spätere Themen, erst einmal muss ich es schaffen den Kalender überhaupt auszulesen. Kennt jemand ähnliche Szenarien und hat Tipps für mich? Wie gesagt, mein Problem ist das Script Nummero 1. In VBS bin ich schon etwas geübt, AD Connect und Files einlesen sind kein Thema. Nur mittels Mapi-Schnittstelle VBS connecten... entweder suche ich in Google falsch, oder finde wirklich nichts brauchbares (nur VBA für Excel etc.). Outlook sollte möglichst nicht mit einbezogen werden, und dass ich keine 10 Profile auf dem Client erstellen muss. Useru nd Kennwort für die Raumpostfächer liegen vor (User sind aktiviert da ein Raumbuchungssystem sich die Daten ebenfalls ausliest). Ich erwarte auch kein fertiges Script. Module, Codebeispiele, Links etc. reichen mir vollkommen. Danke im Voraus! Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 27. Juni 2011 Melden Teilen Geschrieben 27. Juni 2011 Vielleicht als Ansatz ganz praktisch: Glen's Exchange Dev Blog: FreeBusy In/Out Board for Exchange 2007 using EWS and Powershell Bye Norbert Zitieren Link zu diesem Kommentar
blob 10 Geschrieben 27. Juni 2011 Autor Melden Teilen Geschrieben 27. Juni 2011 Jau, Merci! Das hilft schonmal weiter. Konnte es zwar jetztnur kurz überfliegen, aber die alte VBS Variante werden ich mal zuerst versuchen. Wobei hier von Ex2000 die Rede ist, ob das noch mit den CDO Install dann klappt? Es ist ja auch von free/busy die Rede, es würden evtl. die Info "Owner" fehlen (?), welche ja sehr wichtig ist. Vermutlich wird dort nur der Anzeigename dann stehen, aber soweit ich weiß noch die Mailadresse, und anhand der Mailadresse kann ich im AD eindeutig suchen. Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 27. Juni 2011 Melden Teilen Geschrieben 27. Juni 2011 Wobei hier von Ex2000 die Rede ist, ob das noch mit den CDO Install dann klappt? Wo ist von Exchange 2000 die rede? Es ist ja auch von free/busy die Rede, es würden evtl. die Info "Owner" fehlen (?), welche ja sehr wichtig ist. Vermutlich wird dort nur der Anzeigename dann stehen, aber soweit ich weiß noch die Mailadresse, und anhand der Mailadresse kann ich im AD eindeutig suchen. Bei Exchange 2007 läßt man den Organisator einfach in den Betreff schreiben. Geht alles automagisch. ;) Bye Norbert Zitieren Link zu diesem Kommentar
blob 10 Geschrieben 28. Juni 2011 Autor Melden Teilen Geschrieben 28. Juni 2011 (bearbeitet) Jau, wie gesagt, hatte es nur kurz überflogen. :-) Habe mit dem Stichwort "CDO" nun ein paar mehr Infos beim "bingen" gefunden, wie immer eine gute Quelle: MSXFAQ.DE - MAPI/CDO Die Voraussetzungen habe ich nun geschaffen, mittels VBS und CDO auf Postfächer zuzugreifen und die Testscripte funktionieren auch wunderbar. Ich finde jetzt aber keine gute Seite bzw. habe keine Idee, wie ich die die Befehle für die Child-Attribute lauten, hier ein Beispiel: const strHomeServer = "srv01" const strMailbox = "Admin@msxfaq.local" Const CdoDefaultFolderCalendar = 0 Set oMapiSession = CreateObject("MAPI.Session") oMapiSession.Logon "", "", False, True, 0, true, strHomeServer & vbLf & strMailbox Set mailboxfolder = oMapiSession.GetDefaultFolder(CdoDefaultFolderInbox) for each child in mailboxfolder.messages wscript.echo " Subject:" & child.subject , 5 next Wie bekomme ich nun für "child.???" die Eigenschaften raus? bearbeitet 28. Juni 2011 von blob Zitieren Link zu diesem Kommentar
blob 10 Geschrieben 28. Juni 2011 Autor Melden Teilen Geschrieben 28. Juni 2011 Okay, habe nun was gefunden: Message Object Muss nun ein wenig rumspielen und schauen, ob es weiter hilft :-) Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 28. Juni 2011 Melden Teilen Geschrieben 28. Juni 2011 Du hast doch bei Frank auf der Seite dann auch die Hinweise bzgl. CDO gelesen, oder? ;) Bye Norbert Zitieren Link zu diesem Kommentar
blob 10 Geschrieben 28. Juni 2011 Autor Melden Teilen Geschrieben 28. Juni 2011 Ich schau gerade nochmal drauf, aber welche Hinweise meinst Du? Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 28. Juni 2011 Melden Teilen Geschrieben 28. Juni 2011 CDO ist veraltet und man sollte besser auf die Webservices umsteigen. ;) Im Endeffekt genau das, was ich dir im geposteten Link schon zukommen ließ. Trotzdem viel Erfolg. Norbert Zitieren Link zu diesem Kommentar
blob 10 Geschrieben 28. Juni 2011 Autor Melden Teilen Geschrieben 28. Juni 2011 Ja richtig, ich habe es halt mal mit der alten Methode probiert (wir haben NOCH eine Exch 2003/2007 Umgebung), klappt ja auch soweit. Will im Endeffekt nur ein kleines Log aus meinem Kalender bzw. des Raumpostfaches, alla: ... wscript.echo " Subject:" & child.subject wscript.echo " Sender:" & child.sender wscript.echo " Start:" & child.starttime wscript.echo " Ende:" & child.endtime wscript.echo " Duration:" & child.duration wscript.echo " Status Meeting:" & child.meetingstatus wscript.echo " Organisator:" & child.organizer wscript.echo " Location:" & child.location wscript.echo "########################################" Mir fehlen jetzt eben nur kleine Dinge wie z.B. das unter "Sender" nicht der Anzeigename, sondern z.B. die Mailadresse oder der Logonname angezeigt wird. Einen "Müller, Peter" kann es ja mehrmals geben. Ich schau mir mal den Weg über die Webservices an, evtl. finde ich mehr zu dem Thema. Trotzdem Danke. Grüße Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 28. Juni 2011 Melden Teilen Geschrieben 28. Juni 2011 Ja richtig, ich habe es halt mal mit der alten Methode probiert (wir haben NOCH eine Exch 2003/2007 Umgebung), Und genau deswegen würd ich mir die Mehrarbeit jetzt lieber ans Bein binden als später bei 2010 oder später nochmal von vorn anzufangen. ;) Bye Norbert Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.