Thanks!

Sharepoint Server 2010 Language Pack Norwegian

Language pack for Sharepoint Server 2010 in Norwegian (and some other new languages) is now available.

Download here: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=046f16a9-4bce-4149-8679-223755560d54

Populate contacts list in Communicator with LCSAddContacts.WSF

Often, it can be a good idea to pre-populate Communicator (MOC) in an Office Communications Server 2007 R2 before end users start to use MOC. That way they’ll not be met with an “empty” contact list when they log on to MOC. For example, you might want to populate a user’s contact list with a group containing the members of the department the user belongs to. It’s rather easy to use LCSAddContacts.WSF to accomplish this, but I wanted to automate the process based on AD security groups, not only which OU the users/contacts belong to. I am doing all these commands from C:\Program Files\Microsoft Office Communications Server 2007 R2\ResKit\WMI Samples for simplicity.

  1. First, I need to list all the users in the AD Group containing the contacts, using the DN (Distinguished Name) of the group:
    dsget group “CN=SomeGroup,OU=SomeOuAlso,OU=SomeOU,DC=domain,DC=com” -members -expand > members.txt
  2. Then, I need to get the msRTCSIP-PrimaryUserAddress for these contacts:
    for /F “delims=” %x in (‘type members.txt’) do (dsquery * %x –l -attr msRTCSIP -PrimaryUserAddress >> contacts.txt)
    Now I have a list over the contacts that should be populated into the contact list in MOC. The delims= is necessary to read the full lines also if there are spaces. The -l attribute is needed to get only the attribute, not also the name of the attribute for each line. If contacts.txt exists, make sure it’s empty at the script does not overwrite the file, but only appends new lines.
  3. Now I need to get the users that should get these contacts:
    dsget group “CN=SomeOtherGroup,OU=SomeOtherOU,OU=SomeOU,DC=domain,DC=com” -members -expand > userlist.txt
  4. Then, I need to get the msRTCSIP-PrimaryUserAddress for these users:
    for /F “delims=” %x in (‘type userlist.txt’) do (dsquery * %x -l -attr msRTCSIP-PrimaryUserAddress >> users.txt)
  5. Let the magic happen:
    cscript LCSAddContacts.WSF /usersfile:users.txt /contactsfile:contacts.txt /contactsgroup:”My group”

This would be a lot easier if the users and/or the contacts could be picked from a OU (or even manually enter the sip adresseses to users.txt or contacts.txt), but in a real-world scenario you might want to create MOC Contact groups based on AD groups.

Result:

P.S. Existing groups with the same same will not be overwritten, nor will existing contacts in that group. Only new contacts will be added.

Restarting http.sys on Reporting Services server

I recently had to restart the http service on a server to get some configuation changes active without having to restart the server. This was a Windows Server 2008 R2 server with SQL 2008 and Reporting Services installed. This server has not IIS installed, but is using http.sys to deliver the web pages in Reporting Services.

Anyway, when restarting the http service with

net stop http

I got error message “The http service could not be stopped.”  Trying net stop http or net start http only gave error message “The service is starting or stopping. Please try again later.”

I couldn’t find any related process to kill, and was thinking I had to restart the server.

Solution

Just to try it, I stopped the SQL Server Reporting Services Service, and voilá! I could stop the http service.

Samsung S5620 Monte Review

I have written a review of Samsung S5620 Monte. This is a relatively cheap touch-screen phone reasonable equipped with features. A drawback is the proprietary Touch Wiz meny system though.

Read the full review (in Norwegian) at amobil.no here.