Jump to content

minimoo

Members
  • Posts

    373
  • Joined

Everything posted by minimoo

  1. IIRC, they did like 4 releases of the summer 2012 release, and I don't think they re-released spring 2014? I'll grant you in autumn and last summer they did re-release - I think it's a case of myself not noticing as we probably weren't affected by the issues. Equally, we moved to Solus 3 quite early on after it's initial release - for the first 3-4 quarterly updates, we hit some timing/bug/other issue in solus 3 with each update, whereas, now it does actually run semi-smoothly - so It does feel *better* There's still a few issues that I think capita could improve on to make life easier for end users - as an obvious example, how they handle what happens if sims is open and the end user doesn't see the "please close sims in the next 2 minutes message". Lets do this morning's workflow (that ~5 different staff hit each update): 1) Office Cover Manager arrives at work at 7:30 AM 2) Logs on to sims and hits "sims.net icon". 3) Whilst waiting for it to load (and before logging in) goes off to make cap of tea 4) Solus gives her a 2 minute warning to close sims.net for the update 5) Office Lady returns with cup of tea, enters username and password 6) SIMs displays a dotnet fault trace saying "assembly versions don't match" 7) Office Staff send an email to all staff stating that cover information will be delayed as Sims is broken 8) 8:00AM - IT staff arrive, reboot pc for pending file change happens 9) 8:15AM Staff get cover information for the day as the SIMs problem has been fixed. I guess I can expect to add a step 10 of "Email: we are redeploying the summer update as Sims is broken" in a few days. Paul
  2. We had a half day yesterday for prospective year 7 open day - so it was convenient time. Capita *had* been getting better recently with not doing re-releases I thought without 5 minutes of a release I thought - although that might just be a case of me not noticing them and waiting a week normally. Issue Jonathan's talking about seems to be a different issue then I've got, but same sort of area, so i'm guessing probably related Unfortunately for me, the custom report that runs was creating AD users, so it's created ~2000 AD users that having fixed my script to work around the sims area, is now dumping those back out the AD. Paul
  3. We upgraded last night - Upgrade seems to have gone fine. No complaints from teachers so far. I've just logged an issue this morning that a custom report we run on a daily basis via command exporter is now showing users that according to the report definition I'd expect to be excluded, and were excluded in the spring release. Don't suppose anyone that has upgraded has spotted anything similar on any reports? Paul
  4. I guess ;/ It's rather 'hacky' as it was knocked together to identify 'leaving staff' I'd missed removing from AD, as opposed to something for a public release step 1: get list of AD staff users step 2: get list of current staff in sims step 3: get list of future staff In our case, we store work email address as their @sch.uk email address always (this ensures we've always got a work/primary email address for staff for things like intouch that stays within school) step 4: if username part of email exists in AD array we built in step 1, remove the person from array step 5: if array is not empty, it means there's someone that might no longer exist. # Get List of All Staff $Searcher = New-Object DirectoryServices.DirectorySearcher $Searcher.Filter = '(&(objectCategory=User))' $Searcher.SearchRoot = 'LDAP://ou=staff,ou=accounts,DC=domain' $searcher.PageSize = 10 $searcher.SizeLimit = 10000 $results = $Searcher.FindAll() $ADUsers = New-Object System.Collections.ArrayList foreach ($result in $results){ if( [string]$result.Properties["mailNickname"] ) { $a = $ADUsers.Add( [string]$result.Properties["mailNickname"].Trim().ToLower() ) } else { $a = $ADUsers.Add( [string]$result.Properties["samaccountname"].Trim().ToLower() ) } } # Compare to Email Address on staff file in SIMS $pinfo = New-Object System.Diagnostics.ProcessStartInfo $pinfo.FileName = "c:\program files (x86)\sims\sims .net\CommandReporter.exe" $pinfo.RedirectStandardError = $true $pinfo.RedirectStandardOutput = $true $pinfo.UseShellExecute = $false $pinfo.Arguments = "/USER:user /PASSWORD:pass /REPORT:""DataCheck-StaffEmail"" /QUIET" $p = New-Object System.Diagnostics.Process $p.StartInfo = $pinfo $p.Start() | Out-Null $stdout = $p.StandardOutput.ReadToEnd() $stderr = $p.StandardError.ReadToEnd() $p.WaitForExit() $xml = [xml]$stdout $address1 = ""; $DuplicateRecords = @() foreach( $record in $xml.SuperStarReport.Record ) { $email = ($record["Work_x0020_Email"].InnerText) -replace "@domain", "" $ADUsers.Remove($email.Trim().ToLower()) } $pinfo = New-Object System.Diagnostics.ProcessStartInfo $pinfo.FileName = "c:\program files (x86)\sims\sims .net\CommandReporter.exe" $pinfo.RedirectStandardError = $true $pinfo.RedirectStandardOutput = $true $pinfo.UseShellExecute = $false $pinfo.Arguments = "/USER:user /PASSWORD:pass /REPORT:""DataCheck-StaffFutureEmail"" /QUIET" $p = New-Object System.Diagnostics.Process $p.StartInfo = $pinfo $p.Start() | Out-Null $stdout = $p.StandardOutput.ReadToEnd() $stderr = $p.StandardError.ReadToEnd() $p.WaitForExit() $xml = [xml]$stdout $address1 = ""; $DuplicateRecords = @() foreach( $record in $xml.SuperStarReport.Record ) { $email = ($record["Work_x0020_Email"].InnerText) -replace "@domain.co.uk", "" $ADUsers.Remove($email.Trim().ToLower()) } if( $ADUsers ) { Write-Host "This Script Compares Staff Users Accounts in the Active Directory Against SIMS " Write-Host "Action Required:" Write-Host " " Write-Host "Active Directory <> SIMS Differences:" if( $ADUsers.Count -gt 0 ) { Write-Host " SIMS Staff" $xml.SuperStarReport.Record.Count Write-Host " AD Staff" $ADUsers.Count Write-Host " Leavers Still in AD" $ADUsers.Count } foreach($_ in $ADUsers){ Write-Host " " Write-Host $_ } } In terms of creating users, I knocked up the following script on friday to quickly create a batch of logons for a controlled assignment today (which given the class went into the computer room and i've heard no complaints, I assume worked ok): Write-Host "Enter subject code e.g. bs14?" $subject = [Console]::ReadLine() Write-Host "Enter Number of students? e.g. 30" $count = [Console]::ReadLine() Write-Host "------" $adgroup = "control_" + $subject $Group = Get-ADGroup -Filter {sAMAccountName -eq $adgroup} $OU = Get-ADOrganizationalUnit -filter { name -eq $adgroup} If ($Group -ne $Null) { Write-Host "AD Group $adgroup already exists" return } If ($OU -ne $Null) { Write-Host "OU Group $adgroup already exists" return } $oupath = "OU=" + $adgroup + ",OU=Controlled,OU=Accounts,DC=X,DC=SCH,DC=UK" New-ADOrganizationalUnit -Name $adgroup -path "OU=Controlled,OU=Accounts,DC=X,DC=SCH,DC=UK" New-ADGroup -Name $adgroup -Path $oupath -GroupScope Universal -GroupCategory Security Add-ADGroupMember control $adgroup for ($i = 1; $i -le $count; $i++) { $username = $subject + $i $upn = $username + "@X.sch.uk" $password = (([char[]](Get-Random -Input $(65..72) -Count 3)) -join "") + (([char[]](Get-Random -Input $(50..57) -Count 3)) -join "") + (([char[]](Get-Random -Input $(97..104) -Count 3)) -join "") $homedir = "\\X\public\users\controlled\" + $username Write-Host "Creating user: $username with password: $password" Write-Host " samAccountName: " $username Write-Host " givenName: " $forename Write-Host " Description: " $id # SIMS ID Write-Host " home: " $homedir Write-Host " displayName: " $display Write-Host " userPrincipalName: " $upn Write-Host " Password: " $password Write-Host $adgroup New-ADUser -Name $username -SamAccountName $username -GivenName $subject -Surname $i -DisplayName $username -Path $oupath -AccountPassword (ConvertTo-SecureString $password -AsPlainText -force) -PasswordNeverExpires $True -CannotChangePassword $True -Enabled $true -UserPrincipalName $upn -HomeDirectory $homedir -HomeDrive "N:" Add-ADGroupMember $adgroup $username "$username,$password" | out-file -filepath C:\Scripts\output\ca.txt -append -encoding ASCII -width 200
  5. Hi guys, given that command exporter runs on windows only, I've been making use of powershell recently to run a whole bunch of reports (on a daily basis) and email me if they aren't blank - covering little things like... comparing if list of students matches AD to whether all staff/students have photos to whether contacts have the correct gender for their salutation. I've been adding little scripts to a daily processing run as and when they come up - from sims to checking for old sophos PC's in sophos/wsus etc As a simple example, some basic code to run a report from sims is below - there's a distinct lack of error checking here - but for a 'read only' reporting basis of things we manually fix, it does the job. Where you are looking to get CSV output, instead of using Convert-To-Html, you could probably try making use of something similar to out-file -filepath C:\Scripts\output\parents.txt -append -encoding ASCII -width 200 . Hopefully there might be some useful ideas here for people $pinfo = New-Object System.Diagnostics.ProcessStartInfo $pinfo.FileName = "c:\program files (x86)\sims\sims .net\CommandReporter.exe" $pinfo.RedirectStandardError = $true $pinfo.RedirectStandardOutput = $true $pinfo.UseShellExecute = $false $pinfo.Arguments = "/USER:*username* /PASSWORD:*password* /REPORT:""DataCheck-ContactGender"" /QUIET" $p = New-Object System.Diagnostics.Process $p.StartInfo = $pinfo $p.Start() | Out-Null $stdout = $p.StandardOutput.ReadToEnd() $stderr = $p.StandardError.ReadToEnd() $p.WaitForExit() $xml = [xml]$stdout if( $xml.SuperStarReport.Record ) { Write-Host "This Script checks Genders of Contacts in Sims is set correctly " Write-Host "Action Required:" Write-Host "Check Salutation/Gender record in sims " Write-Host "Contact Records to Check:" $xml.SuperStarReport.Record | Select-Object primary_id,Full_x0020_name,ID,Gender | ConvertTo-Html -Fragment } P.S. I think I had to add: $pinfo.StandardOutputEncoding = [text.encoding]::utf8 to handle utf8 correctly for the one student with a accent in their name.
  6. realised that after my initial post... in any case, sims just pushed out the bug fix realease to 3.7 that simscfc was expecting
  7. Well, We updated it the other day. Logged first support case today, and I'm wondering whether to log a second case about fact Sims discover hasn't deployed to workstation after adding target 3 hours ago. The UI is kinda different - whilst there's some improvements, some parts look to be more confusing so far (Given being used to the old system) Has anyone else upgraded so far?
  8. In short, I think the answer would be a 'yes'. I need to look through what I did and make sure it's fairly sensible. Equally, I'd like to have a think about whether it's feasible to implement in a better way. However, against my test box, I do seem have it requiring an SMS or equivalent to login. What I need to make sure is that it *requires* it, as opposed to "accepts windows authentication, asks for duo's then lets you in anyway via method X" type of thing - which would defeat the object. Paul
  9. It actually seems fairly trivial to implement this (my hacky method seems to function for my test user). I'm just wondering whether anyone would want to allow people the option of using one use codes from hap within this scenario.
  10. I'm going to be awkward here From a project point of view, given that there's probably N different systems (2 have been mentioned in this thread), there's a possible request of "Can you make it so it's easy to plug-in external/additional validation methods to the logon process" [For example, if you wanted someone to complete a captcha whenver they log in, user google auth, use duo security etc]. Part of my initial thoughts to that would be that the options are so varied of what someone might want to do, it would probably be hard/impossible to add an useful API for people to use that would be less work then just "editing the logon page". Equally, unless there's lots of schools making use of system N for dual authentication, it's probably not feasible to implement functionality for the main system(s) in the core product Therefore, it would seem the actual requirement is whether someone take the time to write some custom code for HAP that you'd need to apply manually to your own build of HAP. Given there's a free version of the software (for <10 users), someone (maybe even me if i got really bored) could probably work out how to get the API working - my question then would be, whether you have the skills/software to compile a custom version of HAP, and maintain/update the code in the future?
  11. /me hides as an additional point, the new functionality allows multiple masks to be set for the internal IP range i.e. This should make the functionality easier to use if the internal clients come from multiple IP ranges e.g. different VLAN's
  12. showto="MOHStaff" Taking a stab here, but are you missing a space on your showto lines?
  13. Yes - Pretty sure I've added some code to try and handle the case you describe. The case I've not yet fixed (and I just know Nick is going to love watching me attempt to handle this is the following: [this is broken in 9.7, less broken in '10', but still broken]: Laptop charging booking Consider following - 10 period day: You book P2 then P4 for laptops - this means P1=Unavailable, P2=Lesson, P3=Charge, P4=Lesson, P5=Charge. You then Delete either the P2 booking. At this point, P3 charging goes, and it becomes a free period [as the unavailable period didn't go in as it wasn't needed]. My rough plan here is to double book the P3 with unavailable+charging so that when you delete P2 or P4... P3 still remains busy. Congrats if the above logic made any sense - but in any case, I've probably just scared Nick Paul
  14. hmm, I know i'm not Nick, but /me will look As an aside, I've taken a stab at fixing the booking rules functionality - as you seem to have a fair idea of what's feasible, and I think it was you that led to Nick initially looking at booking rules, you might want to have a play. For instance, you can do something like ( last 2 are default rules, first one is my rule to disallow bookings on a period called 'lunch' in all rooms busy(Lunch) busy(GoneHome) bookcharging(booking.NextLesson(),Resource.ChargingPeriods) bookcharging(booking.NextLesson(),Resource.ChargingPeriods) bookunavailable(booking.PreviousLesson(),-1))
  15. And that's what I get for editing javascript to diagnose an issue on my live code then trying to make the changes on my dev box without testing... In any case, I was finding that the multi-lesson stuff was only working correctly for *admins* and not users, which is what I started trying to fix... Paul
  16. fairm010, Whilst nick will probably have an idea what's causing this, if you want, email me a copy of your tickets.xml and i'll try and look and see if I can tell what's causing this. Paul
  17. Ok - I think this is already fixed, and problem is due to a missing ; on a line before we do some basic compression of the javascript in hap. I think Home Access Plus+ - Source Code is the change that will get rid of those 2 errors.
  18. J_worth - in terms of the first bit - I've fixed that the other day (whilst trying to overhaul some bits of the booking system), so that fix should be in the next release.
  19. Paul-K: OK, I'm seeing exactly the same on my development box on the latest development code, I'll try and either work out / remind myself what changed and see what insight Nick has.
  20. @3s-gtech - interesting - how well do you find that works for the non-MS updates? [i use a powershell startup script to deploy flash, which also 'fixes' some flash corruption things we had in the past, and msi gpo's for java/reader - both methods seem to be low maintenance for me now at least (partly because you have to update the things once a month ), and push out the options microsoft updates e.g. IE11 via WSUS] @TBlax: what I've done for the last few years is set up a few targetting groups via group policy (so that servers end up in a separate group to workstations for example) - Historically I made lots of groups - now I've basically collapsed to 'servers', 'workstations' , 'wireless'. I have WSUS sync automatically, however tell it not to automatically deploy most updates. This way, you can choose to wait a day or two before deploying a Microsoft update in case they pull it back, but you get a global picture of what updates are missing. And at the end of the day, the updates are the same ones that come out to home PC's via windows updates, so you shouldn't really hit any problems - if anything you have more control. In our case, we are pretty much standardized on windows 7 64bit, so it's not that much of a task to manually approve the 20 security/updates microsoft release once a month. I suspect people that have different operating systems on their school site would find it a pain doing it that way.
  21. @TheScarfedOne: Done some fixes on this functionality (bookingrules) today - so I can get some ideas on how other people do things - can you eloborate on what you actually needed?
  22. I know I use HAP in that way for onsite+offsite use, however I *think* that might be because I bounced to asp.net 4.5. However - It's definitely a scenario, I'd like to ensure we support out the box in some way - so it may be a case of it doesn't do it just yet in the official builds (@nick - is this scenario supported with asp.net 4 - IIRC i ended up needing to support multiple authentication via wcf which was a new feature in 4.5, hence my bounce)
  23. In our case, students have lunch cards - knocked up a little application that looks the students up on our lunch card database, then resets their password. Kids come up to window, and just swipe their card if they have it 'little application' is a dotnet application, that does a AD call to reset password with some admin rights, and it sits on a spare touch screen PC in our case - with the dotnet app being set as the shell via group policy
  24. Capita can provide a .js file that can install an agent - and generate a guid. In our case, I just use that in a MDT task sequence. We made that decision over a year ago - I found that using S3 server to deploy the agent caused more issues: a) Sometimes the S3 server would generate a dotnet internal error when trying to execute the WMI queries b) I *think* it might have been the case that it wouldn't install one of solus or dotnet onto a laptop if that laptop was running on batteries c) if you deploy an agent it used to use . - if you manually installed an agent, it could use just - in the world of solus3 these were 2 different pc's Whilst I suspect that some of the above i've either mis-remembered or have been fixed/improved - I've found having MDT add the agent, and then sending an email out to the IT support team to go into solus3 and add the new target to be a fairly reliable approach to getting SIM's initially installed on a PC
  25. In terms of ETA (and i'm normally fairly useless at sticking to anything), I'd personally like to see us get a HAP release out for some point in february as it's half term for schools at the end. I'm sure some schools would find that a good time to do an upgrade. However, Nick sounds like he's fairly busy atm and i'm fairly busy until 30th Jan.
×
×
  • Create New...