Progress
Monday, August 1, 2011 at 12:20AM I’m finaly making progress with OTK v3(Operations Toolkit V3). It took me a little while today but I finally got a feature working that I had in my head but could never do with the current architecture of OTK V2. This is domain substitution. What is that you ask?
As my company we use Xmedius for our e-fax solution. Unfortunately - and this is a big sad pile of fail - the interface to said application is a horrible MMC snapin with the ability to sort an already alphabetized list of email accounts - but no ability to sort or filter the list of actual data of accounts tied to fax numbers. Due to this (and other issues) whenever a company changes their domain - for example from @examplethisislong.com to @example.com - there is all of a sudden a disconnect. The data in active directory does not match that of our exchange environment which does not match our xmedius environment but matches our ad environment.
Big pain.
The exchange <-> ad environment sync is easy to accomplish(if not a little time consuming to let everything run) but it can be done easily.
The other portions - syncing ad(or exchange) with xmedius is highly impossible - especially without backend database access.
So that leaves us at a quandary - with data that is not easily updatable in an autonomous fashion - what to do?
When I first looked at the issue it was a daunting task - something which could and should not be taken lightly. But I had an idea (along with my idea for virtual role groups - another time perhaps?) to use domain substitution when checking email accounts against the read only version of the xmedius database. Obviously the substitutions would need to be stored in a database - and not just use the list of domains available (since jsmith@longexample1.org may be(and probably is) different than jsmith@longexample.org) in active directory.
this required some creative thinking and debugging - especially after running into a particularly nasty bug in powershell’s database methods used to populate an array with the results of a database query. For whatever the reason - the database query upon being fed into an array would always return the number 3262 - no matter what query I in fact was performing. Im not sure why this happened - but it took me a good while to finally find the exact line doing this. It didn’t help that the code I had written was running as a background task for powershell either I suppose. A simple |out-null was able to resolve the issue but it brought to light another fun issue.
Sometimes you can not plan for what the end user is going to present to you datawise. I know - I should know that already. I do- just that sometimes you need a good reminder - iin this case a good swift kick to the pants when debugging whould be enough to keep me in line.
I think this week - the ability to disable accounts will finally come to OTK V3 - the one major fun part of the whole process is going to be the disable triggers virtual machines I will need to create - have not created those in a while and I am looking forward to the challange.
Maybe one of these days I’ll post some screenshots to show how things are going.
Paul |
2 Comments |
otk in
Technology,
Thoughts,
VCPI 



