File transfer problems in OCS 2007 R2 Group Chat

After installing the Group Chat component from Office Communications Server 2007 R2, you may encounter the following error while attempting to upload or download files while joined to a chat room (see screenshot):

A file transfer error occurred. Server was unable to process request. ---> Object reference not set to an instance of an object.

clip_image002

If you enable logging in IISAdmin and check the IIS logs, you will likely see the following HTTP 500 error:

#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2009-03-13 11:01:06

#Fields: date time s-sitename s-computername s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs-version cs(User-Agent) cs(Cookie) cs(Referer) cs-host sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken

2009-03-13 11:01:06 W3SVC1 GROUPCHAT-R2 192.168.1.13 GET /MGCWebService/MGCWebService.asmx disco 443 - 192.168.1.13 HTTP/1.1 - - - groupchat-r2.contoso.com 200 0 0 1054 118 2348

2009-03-13 11:01:27 W3SVC1 GROUPCHAT-R2 192.168.1.13 POST /MGCWebService/MGCWebService.asmx - 443 - 192.168.1.65 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+6.0;+MS+Web+Services+Client+Protocol+2.0.50727.3521) - - groupchat-r2.contoso.com 500 0 0 675 651 917

By default, the MGCWebService virtual directory in IIS is configured to automatically use Anonymous Access using the IUSR_<ComputerName> account, which is a member of the Guests group of the local machine.  However, in looking at the NTFS permissions of the File Repository folder used by Group Chat, you will find that the Guests group is not found in its Access Control List (ACL):

groupchatfolder 

To resolve this issue, change the account used for Anonymous Access in the properties of the MGCWebService to either the Group Chat Admin service account or the Group Chat Channel service account, as per the following TechNet article:

https://technet.microsoft.com/en-us/library/dd425247(office.13).aspx 

To configure the Web site settings in IIS

1. Open Internet Information Services (IIS) Manager by clicking Start, pointing to All Programs, pointing to Administrative Tools, and then clicking Internet Information Services (IIS) Manager.

2. In the console tree, expand the local computer, expand the Web Sites folder, right-click the application for the Web site (MGCWebService), and then click Properties.

3. On the Directory Security tab, under Authentication and Access Control, click Edit.

4. In the Authentication Methods dialog box, verify that the Enable Anonymous Access check box is selected.

5. In the User Name and Password boxes, specify the credentials for an account that has read/write permissions on the file repository folder. (This must be an account with RTCComponentUniversalServices permissions because the account needs to access the file repository and Message Queueing. You can use the Channel service account for this purpose.)

 

Happy Uploading! :-)

-- Dave