Michael Posted March 25, 2012 Posted March 25, 2012 Hello all, I'm finally getting to grips with Live@Edu. I've set up all users by importing a CSV which was fairly straight forward. There are two problems I have come across however - Users are prompted to specify their Time Zone and by default, the US Dictionary is used. Both of these can be resolved by using PowerShell. Unfortunately however Microsoft (it appears) seem to presume that us Live@Edu admins have an Exchange 2010 disc lying around for me to install the Exchange Snap-in. Is there no where at all I can download this? It seems crazy that I'd need to buy an Exchange 2010 license just to use the advanced PowerShell tools. Alternatively, if there is another method to resolving my two issues, please let me know
PiqueABoo Posted March 25, 2012 Posted March 25, 2012 (edited) You don't need Exchange. If you're running XP there's a KB to install WinRM which includes powershell. If you're running Win7 you have powershell. You start powershell and use connection commands that are in this MS guide That automagically imports the Exchange cmdlets module when you connect. Edited March 25, 2012 by PiqueABoo 1
Arthur Posted March 25, 2012 Posted March 25, 2012 (edited) Not sure what you have been reading, but you definitely don't need an existing Exchange server to administer Live@edu. That's what PowerShell Remoting is for e.g. $LiveCred = Get-Credential $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection Import-PSSession $Session # Set all users in the tenant to British English and GMT Standard Time Get-Mailbox –Resultsize unlimited | Set-MailboxRegionalConfiguration –Language en-GB –TimeZone "GMT Standard Time" Remove-PSSession $Session Also, don't forget to set your execution policy if you haven't already done so. Set-ExecutionPolicy RemoteSigned Edited March 25, 2012 by Arthur 1
Davit2005 Posted March 26, 2012 Posted March 26, 2012 I know that on Windows XP you had to use 'Powershell 2 with WinRM'. Haven't tried with Win7 as left old employment before we fully Implememted Win7. I couldn't use powershell behind the Countys poxy (or shouldn't that be Proxy) filtering system, so I had to either do all the Powershell work from home or use a USB dongle :-( .
PiqueABoo Posted March 26, 2012 Posted March 26, 2012 You have to set the WinHTTP proxy to use powershell through a proxy (xp:proxycfg -p proxy.example.net, win7:netsh winhttp set proxy proxy.example.net)
Michael Posted March 26, 2012 Author Posted March 26, 2012 Thanks for the replies guys and maybe I wasn't 100% clear. I'm running Windows 7, and this does include PowerShell 2.0 and WinRM as standard. I open up PowerShell, I can authenticate OK, but then I get lots of errors (red text). I'll try again this evening what Arthur's kindly quoted as firewall rules (by the BGFL) are preventing me connecting successfully.
jamesbmarshall Posted March 26, 2012 Posted March 26, 2012 The script to set dictionary language is: set-mailboxspellingconfiguration -Identity -dictionaryLanguage EnglishUnitedKingdom
Michael Posted March 26, 2012 Author Posted March 26, 2012 What's the command to do this for all users please?
jamesbmarshall Posted March 26, 2012 Posted March 26, 2012 What's the command to do this for all users please? The great thing about PowerShell is that it is quite easy to pick up, and for the most part is quite logical; common sense! You can modify the code from earlier in the thread: # Set all users in the tenant to British English and GMT Standard Time Get-Mailbox –Resultsize unlimited | Set-MailboxRegionalConfiguration –Language en-GB –TimeZone "GMT Standard Time" To be: Get-Mailbox –Resultsize unlimited | Set-MailboxRegionalConfiguration –Language en-GB –TimeZone "GMT Standard Time" | set-mailboxspellingconfiguration -dictionaryLanguage EnglishUnitedKingdom This would set all mailboxes to be in the English UK localisation, with GMT as the standard time zone and English UK as the dictionary language (for spelling, etc.). I would run this command only once the first time you create the bulk of your users. For subsequent runs I would write a script that only runs this against mailboxes that haven't already been configured this way - it's a more efficient way of doing it. 1
Michael Posted March 26, 2012 Author Posted March 26, 2012 Right here goes: I ran the following: $LiveCred = Get-Credential $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection Import-PSSession $Session Get-Mailbox –Resultsize unlimited | Set-MailboxRegionalConfiguration –Language en-GB –TimeZone "GMT Standard Time" | set-mailboxspellingconfiguration -dictionaryLanguage EnglishUnitedKingdom I'm now receiving the following message: WARNING: The operation that's currently running has exceeded your Throttling Policy budget. The operation will be delayed until your budget allows it to proceed. Approximate delay time: "29" seconds. This has appeared numerous times. Is this normal and is there anything else I must do?
Michael Posted March 26, 2012 Author Posted March 26, 2012 After the throttling message appeared about 10 times, the process then stopped automatically. I can confirm both the Time Zone and Dictionary Language changed successfully. The strange thing however is if I navigate to Options > See All Options > Settings > Spelling, it still states English (United States) If I create a new message, and click the down arrow next to ABC, it does say - Check spelling in this language: English (United Kingdom) I presume all this is normal and my work is done?
jamesbmarshall Posted March 26, 2012 Posted March 26, 2012 Throttling is normal - hence why you shouldn't run big cmds like that; try and break them down. Not sure why OWA shows US English, might take some time to update / be a bug. But if creating a new mail shows English UK then you're good to go!
PiqueABoo Posted March 26, 2012 Posted March 26, 2012 (edited) Thing is.. writing a script can take a while especially if something you're interested in doing doesn't have perfect documentation, whereas kicking off a simple brute force one-liner and checking it finished when you've returned with a fresh coffee might use some MS CPU cycles, but it doesn't take much of MY time. That said I do like doing this kind of thing because it works for most stuff, fits on one line and spits out less console noise: get-mailbox -resultsize unlimited | ?{$_.languages -ne 'en-gb'} | set-mailbox ... For a while I used to want to use -filter whenever I could because I suspect that is more efficient, but this reaches more parts and figuring out what is filterable (besides 'name' or a customattribute) can be a pain e.g. can anyone find a working filter for the above? Edited March 26, 2012 by PiqueABoo missing space in command
Arthur Posted March 26, 2012 Posted March 26, 2012 For a while I used to want to use -filter whenever I could because I suspect that is more efficient You're right actually. It is more efficient. As they say "Filter Left, Format Right". The following command will be much faster since you are only retrieving the mailboxes that haven't had their language set to British English... Get-Mailbox –ResultSize Unlimited -Filter {(RecipientType -eq 'UserMailbox') -and (LanguagesRaw -ne 'en-GB')} | Set-MailboxRegionalConfiguration –Language en-GB –TimeZone 'GMT Standard Time'
PiqueABoo Posted March 26, 2012 Posted March 26, 2012 ::drat:: it's been a while and I'm sure I tried LangaugesRaw but got lots of redness. Just checked that it really did work and your filter gets more results than my where-object. The former matches $null, the latter doesn't.
Arthur Posted March 26, 2012 Posted March 26, 2012 it's been a while and I'm sure I tried LangaugesRaw but got lots of redness. That's strange. I didn't get any errors relating to 'LanguagesRaw' on either Live@edu or our own Exchange 2010 server when I tried it. I did have several 1-4 second throttling policy warnings, but that was all I got. The former matches $null, the latter doesn't. Good point. There is definitely room for improvement with that command.
PiqueABoo Posted March 26, 2012 Posted March 26, 2012 That's strange. I didn't get any errors relating to 'LanguagesRaw' Not that strange, I probably typed "RawLanguages" or something.
Michael Posted July 18, 2012 Author Posted July 18, 2012 I'm now trying to disable instant messaging in Live@Edu. I enter the following commands: $LiveCred = Get-Credential $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection Import-PSSession $Session Set-OwaMailboxPolicy OwaMailboxPolicy-DefaultMailboxPlan -InstantMessagingEnabled $false I then receive this message: WARNING: The command completed successfully but no settings of 'OwaMailboxPolicy-DefaultMailboxPlan' have been modified. Any ideas? Many thanks!
PiqueABoo Posted July 18, 2012 Posted July 18, 2012 Any ideas? Many thanks! You did it last month, but forgot. They've changed the default to $false but didn't tell us? I do that line (with slightly different irrelevant capitalisation) and another for the galdisabledmailboxplan. In theory it is telling you that IM is already set to $false. If you don't trust it you could umm.. try turning it on and off again.. run your set-owamailbopolicy line again but with $true on the end, then a third time with it back to $false. 1
Michael Posted July 18, 2012 Author Posted July 18, 2012 Spot on, why didn't I think of that! By entering the the following code: $LiveCred = Get-Credential $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection Import-PSSession $Session Get-OwaMailboxPolicy OwaMailboxPolicy-DefaultMailboxPlan | Format-List *instant* It then displayed: InstantMessagingEnabled : False InstantMessagingType : Msn So I presume there's nothing additional I need to do?
PiqueABoo Posted July 18, 2012 Posted July 18, 2012 Go to the branding portal thingy and remove some of the associated hyperlinks that otherwise show in the user's OWA banner? 1
Michael Posted July 19, 2012 Author Posted July 19, 2012 Thanks but I had already done that. Interestingly it was disabled at one site, but enabled at two others. I've disabled throughout now. Got to love Powershell when it works! It took about 10 mins or so until the change was noticeable when I logged in.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now