Exchange 2010 Fax Products

I had tough time recently finding a consolidated list of info links and products surrounding Exchange 2010  fax support.  We did the original research because a smaller client received a rather large price tag from a major vendor for fax support, and they don’t want to plunge ahead with and Exchange upgrade.  Attached is the content from our research OneNote after several hours of Bing searching and tracing product literature - I hope it helps save others some searching!

Generic Exchange 2010 Fax Information

 

MS EHLO Blog fax details on how the integration works:

http://msexchangeteam.com/archive/2009/08/19/452034.aspx

 

EX2010 Fax Advisor

Note: original list of cert’d gateways, not sure how often it is updated…

http://technet.microsoft.com/en-us/library/ee364747.aspx

 

 

Commercial products stating native fax support for Exchange 2010

 

GFI FaxMaker

http://www.gfi.com/products/gfi-faxmaker/pricing

 

emFast FacSys

http://www.emfast.com/facsys.aspx

 

OpenText RightFax

http://faxsolutions.opentext.com/microsoft.aspx

 

Commetrex BladeWare Fax-to-email for Exchange 2010

http://www.commetrex.com/products/CTMiddleware/BladeWareFax2EmailforExchange.html

 

Sagem-Interstar Xmedius Fax

http://www.sagem-interstar.com/fax-server-software/xmediusfax/microsoft_exchange_UM_2010_integration_e.htm

 

Ferrari Electronics

http://www.officemaster.de/en/products/officemaster-for/exchange.html

 

 

Other fax servers

Note: These vendors offer traditional “email item forwarding” integration over SMTP for Exchange support,  and to not create UM Fax messages, nor can the receive forwards from the UM role.  These vendors do NOT report EX2010 certified at this time.

 

MultiTech Fax Server

http://www.multitech.com/en_US/PRODUCTS/Families/FaxFinder/

 

OpenText Fax Appliance 2500

http://faxsolutions.opentext.com/2500-edition.aspx

 

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

Use a Single Listener for Forms-Based and Basic Authentication in ForeFront TMG/ISA

When deploying Microsoft Unified Communications solutions we often deploy ForeFront TMG or ISA Server 2006 to provide complete external services (Outlook Web App, Communicator Web Access, Address Book Download, and Group Expansion). We’re also asked integrate with existing IIS applications and provide a seamless end user experience using Forms Based Authentication (FBA) and the Single Sign On (SSO) feature in ForeFront TMG. Recently our Unified Communications developers requested the ability to use multiple front-end authentication methods on a single listener and we investigated our options.

To sum the existing environment:

ISA Server 2006 Enterprise Edition

Single SSL Listener with FBA enabled

Single name SSL Cerificate (sso.domain.com)

And what we wanted to accomplish:

1. Use a single listener

2. Provide Single Sign On for web clients

3. Provide Custom Unified Communications Application Authentication (Basic over SSL)

It turns out this is possible and fairly simple to accomplish – provided you have access to run a few scripts against the TMG/ISA server and know which “User-Agent headers” are used by your applications and clients. A big thanks to Nik Ramlow for finding this info in the ISA Server SDK and MSDN site (http://technet.microsoft.com/en-us/library/bb794715.aspx). On the site you’ll find 3 scripts.

ListUserAgentMappings.vbs

AddUserAgentMapping.vbs

EditUserAgentMapping.vbs

After saving and running the first script on the ISA Server we see our default User-Agent header/Authentication type mappings:

image

This tells us which authentication method ISA will attempt to use for each user agent header (which is typically associated with a browser or application). By default Internet Explorer will use the “*Mozilla*” User agent headers and the associated HTML 4.01 forms authentication method. Requirement #2… check! (Full disclosure: this is the default behavior after enabling a Forms Based Listener)

 

Now we need to get our application authentication going and the first thing we need to determine is our User-Agent header. After running the ISA monitoring tool we determined the application header to be “Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 2.0.50727.4927).” Now we use script #2 to tell ISA to listen for that header (we used “*MS Web Services Client Protocol*” to catch all versions). The full command is

AddUserAgentMapping.vbs “*MS Web Services Client Protocol*” basic

To see how that changed the authentication methods run the ListUserAgentMappings.vbs again (disregard the formatting of the DOS window, the long user agent string that was added was larger than the default column width of the script)

image

Now that the client header and authentication type is added, it’ll just work, right? Not quite, mapping No. 7 will receive the request (it matches “*Mozilla*”) so we need to adjust the order using script 3

EditUserAgentMapping.vbs up 11

EditUserAgentMapping.vbs up 10

EditUserAgentMapping.vbs up 9

EditUserAgentMapping.vbs up 8

Running ListUserAgentMappings.vbs now shows

image

Exactly what we need!

Finally, we need to test the application and verify with an ISA trace after authentication:

image

In summary, ForeFront TMG and ISA Server 2006 offer great flexibility in front end authentication within a simplified and consolidated management interface. Applications like Sharepoint, Outlook Web Access, Office Communicator 2007 R2, and even custom applications can leverage consolidated listeners without loss of functionality.

Luke

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

MoC integration with Outlook 2010 64 bit is working…

Well, for me at least. Not sure what the deal is, and I’ve not put a lot of time into figuring it out, but what i can tell you is that I haven’t had Missed Call Notifications or Conversation History since 9/17/2009.

Now, on 2/11/2010, things started working…

Also, on 2/11/2010, the following patches were installed on my system:

Now, to me, on the surface, none of those looks like it would have an effect on my world. I did receive a MoC patch on 1/28/2010 though…

http://support.microsoft.com/kb/976135

This rollup contains and leads to:

http://support.microsoft.com/kb/968625


“Description of a hotfix that applies the initial changes for the integration of Office Communicator 2007 R2 and the next version of Office after the Office 2007 release”

So, my question is:

Have you folks out in the aether applied this patch? Have you been running the 64 bit version of Office despite the pain of it not integrating with MoC so you can send frowns to Microsoft like I do about how it doesn’t integrate with MoC?

I did a brief search, and didn’t see anything out there about this patch fixing this issue, and I haven’t uninstalled the patch to see if it breaks the functionality that I’m currently enjoying. I’ll be testing more when I get back home, I’ve been traveling this week and am currently enjoying the benefits of a reasonably empty Delta flight with WiFi, which afforded me the time and opportunity to dig into this a bit!

FYI: Client version for Communicator is: 3.5.6907.83
Client version of Outlook 2010 64 bit is: 14.0.4536.1000 (64 bit)

Client Versions post patch 968625

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

Editing LiveMeeting Request

Have you ever been in that situation where someone tells you that the meeting invite for LiveMeeting 2007 is confusing.  If you are a cloud LM user then you get to edit that message.  But if you really like OCS 2007 R2 and just want to edit that darn thing, what can you do because you cannot edit the message out of the box.

Well, you can but it’s not supported.

Tools Needed:

Visual Studio Express or another DLL hacking tool like Resource Hacker (http://angusj.com/resourcehacker/)

Live Meeting Client DLL: c:\program files\common files\microsoft shared\livemeeting shared\en-us\confapisat.dll

Download Resource Hacker or Visual Studio and open the DLL.  Search for the string in the DLL you wish to change.  Edit the DLL text of the string.  Compile DLL.  Save DLL and distribute DLL to other workstations.

Shutdown Outlook.  Start it back up and you now how the ability to edit/modify the LiveMeeting Invite.  So like I said, it’s not a pretty solution but for those emergencies it allows you to edit it.  One last note.  You cannot delete any lines from the text so if you want to remove something completely you need to use a white-space ” ” instead.

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

Forcing Address Book Download

Nothing overly special about this command and it’s been out there in several places.  The problem is I can never find it when I need it.  Why would you need it?  Let’s say you made a change to the address normalization file and the next morning that one really important person wanted to make a phone call but the normalization file had not yet updated.  But why, you logged in and out as the user and it still didn’t update.  MOC by default picks a random time between 0 to 60 minutes for initial delay of downloading the address book.  I’m sure this is to prevent the server from being overrun with requests in the morning.  Bad thing is for a phone system, this can be problematic at times.  So the following forces an updated galcontacts.db file.

  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate and then click the following registry subkey:HKEY_CURRENT_USER\Software\Policies\Microsoft\Communicator
    (you may have to created the Communicator key if it’s not there)
  3. On the Edit menu, point to New, and then click DWORD Value.
  4. In the New Value #1 dialog box, type GalDownloadInitialDelay, and then press the ENTER key.
  5. Right-click the GalDownloadInitialDelay registry entry, and then click Modify.
  6. In the Value data box, type 0, and then click OK.
    • If you set the value as 0, the address book download will take effect immediately after sign-in.
    • If you do not set this registry value, the default value is random value between 0 and 60 minutes. Therefore, the delay is random a random value between 0 and 60 minutes.
    • Exit Registry Editor.

(This is a reprint of something I would once long ago and have sitting in my OneNote.  If I find the URL I will give credit to where I found it.  Might have even been TechNet.)

Now if you go and delete the galcontacts.db and .db.idx file from c:\users\<username>\appdata\microsoft\communicator\sip_<username>@domain.com\ and log out and in of communicator this will force the address book to download again.  Kinda handy in testing scenarios and when you simply don’t want to wait.  (If you are an XP user your path is c:\documents and settings\<username>\Application Data\Local Settings\Microsoft\Communicator\sip_<username>@domain.com\galcontacts.db)

<yep - found it here - http://support.microsoft.com/kb/972403 - the technet article is about how to prevent too much bandwidth from being used>

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

Snom phones and OCS 2007 R2, a lesson learned

As Convergent Solutions has embarked upon leveraging OCS as a fully-featured, enterprise telephony solution we’ve tailored our offerings to meet the needs of clients both large and small. With tighter company purse strings, we’ve looked at many vendors to enhance the Enterprise Voice experience on the desktop that would bring a solid feature set at an affordable price. We looked to Snom Technologies to partially fill that role for end user devices; and what started out as straight forward deployments, turned into many support calls, firmware revisions and a solution that is still not fully functioning. In the spirit of full disclosure, my experience is mainly limited to the 300 model phone, which may or may not reflect across the entire product line. However, we wanted to make sure that we posted our experiences to help others in similar situations.

The first major hurdle

At the time of order (May ’09) all Snom 300s shipped without the 8.2.5 “OCS Firmware” loaded, which meant every phone had to be touched. If you do end up with “old” firmware, keep in mind that you will likely have to dedicate a large block of time to process all the upgrades and verify they completed successfully. Out of the box the phones rely on the internet for software updates, which for one or two phones isn’t an issue, but if you have a large install base you will need to setup a provisioning server. Another alternative is to manually upgrade each and every phone manually via TFTP; a laborious path that we were forced to take. The easiest, incurring a nominal upfront charge, is to have a snom distributor load the most recent OCS compatible firmware before shipping. This may at first seem unnecessary because a firmware upgrade for any device should be easy, right? Not so. I suggest that you have the devices upgraded before being sent. As a side note, as with firmware, the internet is used for NTP updates. The phones default to midnight after a reboot and if they cannot reach the internet for time OCS will not authenticate; use an internal NTP server.

The second major hurdle

Once upgraded and deployed we noticed that presence was not working properly. The phone’s default settings configuration is more suited for a traditional SIP deployment than an OCS one. The phones do not cooperate with OCS at all for presence. They will command the user’s presence regardless of the MOC client’s current status: if the phone sits idle for 15 minutes, presence is Idle; if the handset is not picked up in an hour, your presence is reported as away. The only way to “reset” your presence automatically is to make a call, or at least pickup the handset. To resolve this: turn off Machine State reporting and set the idle/away timers to zero. Be sure to keep Report Phone State on, as that will report to OCS when a user is “On a Call”.

The last straw

The largest and to date unresolved issue happens once the phones were on the desks of users for a couple of days. I began to get reports of phones losing registration, displaying NR and calls could not be placed or received. Initially the problem seemed to be an issue with AD passwords expiring and users not reconfiguring their 300’s options (the errors in the logs were “401 Unauthorized”). That was the cause of some, but many phones would randomly “fall off the grid” for no reason. The issue was intermittent and very disruptive for the users; the only way to clear the problem was to disconnect/reconnect the phone’s network connection (reboot) and wait a few minutes for it to re-register. Snom support suggested disabling Challenge Response, which did not resolve the issue, and after lengthy troubleshooting admitted that their TLS implementation was the cause. Note: while troubleshooting and testing this issue I found that many registration options (SIP Session Timer, Proposed Expiry, Subscription Expiry) were not honored. At one point support introduced us to an untested firmware version that caused phones to misdial completely.

As soon as the firmware was loaded with the test firmware certain numbers, normally long distance calls, would normalize to internal numbers. These outbound calls would end up ringing their own fax line, while others would dial the Director of IT—which certainly provided high visibility of the problem. MOC client calls were not affected at all. Once the firmware was removed from the phones they dialed normally, though the firmware had to be rolled back manually via TFTP.

Support?

Pile these issues together and the user experience deteriorates very quickly, OCS loses its “cool” factor and becomes a hurdle for a business to overcome. Snom support did not understand that these issues were deal breakers for our clients. They were very quick to suggest that the OCS Edition of their firmware was Beta, when in fact it has been released as a “stable” load since June. I had issues with Snom’s support desk: their ticketing system did not like my email address and any emails sent through it were never delivered. Even worse, it’s been over two months that our client’s NR case has been open—with no resolution in sight. It has been frustrating sitting between a valued client and a vendor, so much so that I will not suggest Snom phones as an OCS end-point until it’s proven that both the technology and the company’s support work.

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

Custom Auto Attendant Greetings for UM 2007sp1

Quality can be an issue when you’re trying to record custom greetings to use with Exchange 2007sp1’s limitations of 8KHz, 16-bit, Mono sound files.  Sound Recorder is often used to handle the recordings, but it doesn’t do it well.  While researching a way to handle this better I stumbled upon a freeware application called Audacity that, after a few simple configuration changes had acceptable quality for our clients.

Audacity can be found here: http://audacity.sourceforge.net/

Once downloaded (currently a 2.1MB download) and installed set the following:

  • Open Preferences under the Edit menu
  • On the first page (Audio I/O) Mono should be set by default

audacity-mono

  • Click the Quality tab and set Default Sample Rate to 8000 and the Default Sample Format to 16-bit:

audacity-quality

  • Click the next tab, File Formats and set the Uncompressed Export Format to WAV (Microsoft 16bit PCM):

audacity-formats

  • Click OK and you can begin recording, you will see your settings on the Audio Track you’ve recorded:

audacity-recording

  • When you’re happy with the recording go to File\Export as WAV and save your work.  You can now upload the file to Unified Messaging and assign the greeting to your Auto Attendant.

More tweaking can be done to tune the audio track, though I had luck with just these changes.  Of course you’ll always want to record with a decent mic in a quiet room.

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

Static Routes on Tenor DX

I recently implemented static routing on a Quintum Tenor DX via called number in a downstream gateway deployment. It’s not difficult, but there are a couple checkboxes you have to tick to get it working right. It’s a quick little trick that may come in handy at some point. (Note: I used the OCS 2007 wizard on the Tenor for the default configuration and went on from there.)

· Log into the Tenor Config Manager and click on the Advanced Explore tab

· Under VOIP Configuration select SIP Signaling Group-1 under SIP Signaling Groups

o Clear the Primary SIP server if there is one.

o Check the Direct Gateway Routing box.

sip_signaling_group

· Next expand VOIP Routing and select Signaling

o Add a description if desired and fill in the IP of the SIP host

o Click Add and enter in the extension sent from the upstream provider

static_route_1

· Click the Advanced Tab and select Gatekeeper.

static_route_1_advanced

At this point you’ve made your “exception” list by pointing specified numbers at a specific IP. You can then create a “catch all” and forward all other numbers to a separate IP, or create other specific route lists.

· Select VOIP Routing then right click and Create New, name it however you’d like (it is suggested NOT to rename Static Route-1).

o Follow the above steps, but you can create wildcards with “*”.

static_route_catchall

· Be sure to select Gatekeeper on the Advanced Tab for this Route as well.

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

New Office Communications Server 2007 R2 Hotfix Update Application

For those of you that have had to apply the numerous hotfixes to OCS 2007 R2 servers I’m sure you’ve asked the following questions:

 

1. What version am I running now?

2. Does this hotfix apply to this server?

 

Thankfully Microsoft has (inconspicuously) released an application that will answer both of those questions for you. Using the latest OCS hotfix link http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=b3b02475-150c-41fa-844a-c10a517040f4 you’ll see a new download:

image

Download the 53MB executable, run it as Administrator, and you’ll get the answers you need. An example of the output (mediation server) is below:

med

 

Click on “Install Updates” and “voila!” - a happily patched server.

image

This is a welcome addition to the OCS family and will streamline the update process. Thank you Microsoft.

 

Happy patching!

- Luke

[Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon] 

OCS 2007 R2 October 2009 Hotfixes

Microsoft has released another round of OCS 2007 R2 hotfixes… many welcome bugfixes included!

 

Microsoft Ofiice Communicator 2007 R2 Client Update can be found here. Updates include:

  • 976045 (http://support.microsoft.com/kb/976045/ ) Error message when you try to add a contact to Outlook in Communicator 2007 R2: "Cannot connect to Microsoft Office Outlook to add a contact because Outlook is not responding"

  • 976046 (http://support.microsoft.com/kb/976046/ ) Hyperlinks are converted to lowercase if you send them in an instant message as text in Communicator 2007 R2

  • 976048 (http://support.microsoft.com/kb/976048/ ) Error message when you log off, restart, or shut down a computer that is running Communicator 2007 R2: "End Program - Communicator"

  • 976050 (http://support.microsoft.com/kb/976050/ ) When you answer an incoming call on a device that uses a simultaneous ring number, Office Communicator 2007 R2 generates a missed call notification

  • 976051 (http://support.microsoft.com/kb/976051/ ) The Communicator 2007 R2 screen freezes intermittently for several seconds when you are in an audio or a video conferencing session

  • 976052 (http://support.microsoft.com/kb/976052/ ) The display name of a contact is unresolved when you send a meeting request in Communicator 2007 R2

  • 976054 (http://support.microsoft.com/kb/976054/ ) Audio skips in Communicator 2007 R2 during Communicator calls or during Public Switched Telephone Network calls on a computer that is running Windows Vista

  •  

    Microsoft Office Communications Server 2007 R2 latest patch release here. Updates include:

     

    975892 (http://support.microsoft.com/kb/975892/ ) Error message when you send a meeting request for a conference call that is hosted in Office Communications Server 2007 R2, Enterprise Edition

    975894 (http://support.microsoft.com/kb/975894/ ) Event ID 44031 for trusted domains is logged frequently in Office Communications Server 2007 R2

    This cumulative update also includes the following previously released updates:

    968955 (http://support.microsoft.com/kb/968955/ ) A computer that is running Office Communications Server 2007 R2, Audio/Video Conferencing Edge Server crashes when it tries to process a Relay NAT message

    972714 (http://support.microsoft.com/kb/972714/ ) Two users unexpectedly join the same conference when they try to join separate conferences in Office Communications Server 2007 R2

    972709 (http://support.microsoft.com/kb/972709/ ) Error message when a SIP message request is sent from a federated partner in Communications Server 2007 R2: "500: Server Internal Error"

    972700 (http://support.microsoft.com/kb/972700/ ) When Office Communications Server 2007 R2 routes a voice mail call to an Exchange Server 2007 Unified Messaging server, the corresponding invitation message does not indicate that the request originates from Office Communications Server

    971844 (http://support.microsoft.com/kb/971844/ ) No calling party name appears in Communicator 2007 R2 when a Private Branch Exchange telephone user calls a Communications Server 2007 R2 user

    971845 (http://support.microsoft.com/kb/971845/ ) The delegate permissions feature in Office Communicator 2007 R2 is unavailable to non-unified communications users

    968879 (http://support.microsoft.com/kb/968879/ ) You cannot forward a call between federated users in Communications Server 2007 R2

    968938 (http://support.microsoft.com/kb/968938/ ) The Communications Server 2007 R2 - A/V Edge Authentication Server does not recognize a token request if the locale for RTCProxyService is not en-US/409

    969010 (http://support.microsoft.com/kb/969010/ ) Communications Server 2007 R2 performance counters are missing in Performance Monitor

    968910 (http://support.microsoft.com/kb/968910/ ) Communications Server 2007 does not detect the changes when Unified Messaging dial plans or UM servers are added

    This update package fixes the following issues that were not previously documented in a Microsoft Knowledge Base article:

    • The license expiration date for Office Communications Server (OCS) 2007 R2 Evaluation Edition was calculated incorrectly. This causes OCS 2007 R2 Evaluation Edition to expire on July 13, 2009. This update fixes the license expiration date calculation for the OCS 2007 R2 Evaluation Edition. By downloading this update, the expiration date will be calculated correctly, based on the installation date of the server.
    • Earlier updates of OCS 2007 R2 required Microsoft Message Queuing to be installed on OCS 2007 R2 Enterprise Edition Distributed – Front End or the OCS 2007 R2 Standard Edition. This update removes that requirement.
    • The RTC Media Relay driver in OCS Edge Server has also been updated this update.

    UPDATE:

    Communicator Phone Edition hotfixes can be downloaded here. Hotfix includes fixes for:

     

    When you connect your IP phone through the Internet, the telephone call logs are not populated with received or dialed calls.

  • When you block a contact, you cannot call that contact from the Contact List.
  • After you apply the update package in KB 972398 to your IP phone, the telephone performance becomes slow. The response time of the dial pad also becomes slow.
  • Happy patching!

    -Luke

    [Post to Twitter]  [Post to Digg]  [Post to Reddit]  [Post to StumbleUpon]