DRS Bulk Restore

Contents

Overview. 1

Using DRS Bulk Restore. 2

Page 1 – Login to Connection. 2

Page 2 – Choose DRF File. 2

Page 3 – Choose Users. 3

Page 4 – Choose Messages. 5

Page 5 – Import Messages. 5

Configuring Connection 7.0 and Later For Message Restore. 6

Task 1: Configure a User without a mailbox with the Remote Administrator and System Administrator roles  6

Task 2: For 9.x and Earlier, Set the Database Proxy Service Shutdown Time. 7

Task 3: Activate the Remote Database Proxy Service. 7

Task 4: Enable SMTP Connectivity For Importing Messages. 7

Troubleshooting Tips. 8

Troubleshooting Remote Connection Failures. 8

Disable CSA and all Virus Scanning Applications. 8

Message Import for Connection 7.x and later 8

Requirements/Special Notes. 9

Obtaining Updates. 9

Revision History. 9

 

Overview

The DRS Bulk Restore is a tool designed to allow administrators to pull specific voice messages, entire mailboxes or all mailboxes out of a Disaster Recovery System (DRS) backup archive either review WAV file(s) locally on a Windows client or to restore selected messages to a Connection 7.x or later server.

 

The DRS Bulk Restore is not designed to extract non voice messages such as faxes, receipts or emails.  It is designed to provide a way to review or restore individual voice messages from a selected backup or do a bulk restore of voice messages to a system for migration purposes.

NOTE: You can restore messages from a DRS Backup that is of a different version than the target connection server.  No database tables are touched, no user information is edited or restored, only messages are constructed and dropped into mailboxes found on the target Connection server by alias.  One migration path may be to do a COBRAS restore of a 10.x server onto a 12.x server and then use the DRS Message Restore tool using a DRS message backup of that 10.x server to move messages in bulk.  This will be much, much faster than using COBRAS to restore messages and will handle much larger mail stores easily.

NOTE: The DRS backup must be decrypted before DRS Message Fisher can access it.  For DRS Backups older than from Connection 9.0 this will require decrypting the backup first – See the DRS File Decryption tool on www.CiscoUnityTools.com for that.

NOTE: If the source server and the target server SMTP domains are different while the migration of messages is being done then before migration make sure to add the SMTP Proxy address of the users on the Target server to be same as the SMTP address of the user on the Source Server. This will avoid the problem of losing the original sender on the target server.

Using DRS Bulk Restore

The DRS Bulk Restore tool is a simple 5 page wizard that walks you through attaching to the target Connection server, selecting your un encrypted DRS message backup file, choosing users to restore and, optionally, individual messages for an individual user and then executing the restore itself.

Page 1 – Login to Connection

The first page of the wizard requires you provide the DNS/IP address of the target Unity Connection server and a login/password for an account that has the Remote Administrator role assigned to it.  You cannot proceed with the rest of the wizard until you attach successfully to a server. 

 

Once you’ve connected the server info including version number are displayed at the bottom and the “next” button becomes active.  You cannot attach to a different Connection server after you’ve logged into one – you will have to exit the tool and run it again if you wish to change target servers.

Page 2 – Choose DRF File

The second page of the wizard asks you to provide the path to an unencrypted DRF message backup from a Unity Connection server.  It will then parse that TAR file out into a local MDB database file. These resulting MDB files (one each for every TAR file you open) can be found in the \MessageMDBs\ folder where you installed DRS Bulk Restore.  When it’s complete the total number of users and messages found in the backup are displayed at the bottom and the “next” button will become active.  You cannot choose a different TAR file to work with unless you exit the application and run it again.

 

The tool will remember the last location of the TAR file you used and will load it automatically in future runs if the file still exists.  You can select the “Skip parsing TAR file into MDB if an MDB file already exists for it” and it will not have to full parse the TAR file into an MDB which can save some time.  For large backups the parsing can take a while.

Page 3 – Choose Users

The third page lets you choose one or more users to restore messages for.  These are the users found in the TAR file backup – they will be “linked” to users on the Connection server using their Alias first and if not then the full SMTP address – if neither of those results in a match errors will be logged and the count of “messages for users not found” will be added to and reported on.

 

You can select/unselect all users using the checkbox in the upper left of the grid.

If you select a single user you will advance to Page 4 to select specific messages.  If you select more than one user you will advance directly to Page 5 to restore all messages for those users.

You will not be allowed to advance in the wizard unless you select at least one user.

After restoring messages for one or more users you can return back to this page to select different user(s) without exiting the application first.

Page 4 – Choose Messages

If you selected a single user on Page 3 of the wizard you will then see all the messages for that user presented in a grid for selection on Page 4. 

 

If you select a single message you can use the “Export to EML” button to export that one message to a local EML file which you can open in most email readers such as Outlook or Thunderbird for review.  This option is only allowed when you have just one message selected.

If you select one or more messages (or all of them using the checkobx in the upper left of the grid) you can advance to the Page 5 and import those messages for that user.

You cannot advance unless you select at least one message.

You can return to this page for a different user later without having to exit the application first.

Page 5 – Import Messages

The fifth page is for importing messages into Connection.  There are a few options you can choose before starting the import.

·         Check for Duplicate Messages” – you can choose this to have it check if the message ID in the header of a message exists on Connection before sending the message across.  This will slow the import of messaged down a little and if you’re importing onto a clean install you’d definitely want to leave this off.

·         Disable Notification Devices Before Import” – this option will first run through and disable all notification devices for users before importing messages and then run through and re enable them when it’s done.  This, of course, takes some time and if you’re restoring messages for a small number of users it shouldn’t be necessary.

·         Message Delivery Threads”.  This defaults to 4 and indicates how many processes are spun up to actually deliver SMTP messages to the target Connection server.  Too many threads will actually run slower in many cases so be careful – it should never be necessary to have more than 10 in a typical case – to handle more than that you have to change settings on the target Connection server to allow it to process inbound messages faster for a very large restore and an engagement with TAC would be a good idea if that’s the case. 

·         Messages per SMTP Session”. By default Connection requires the SMTP pipe be reset every 10 minutes to prevent DOS style messaging attacks – that value can be changed on the Connection side to allow more messages before resetting a session which can speed the import up a bit (not a lot) – again, engagement with TAC would be a good idea if this is deemed necessary for a large import.

 

Once the import starts it will run through some preliminary setup items, spin up the restore threads and then you’ll start seeing counts for messages sent, messages in queue waiting to be sent, failures, errors, and a running update on roughly how many seconds it’s taking to send a message.  This can be helpful doing test restores when deciding how many threads are optimal for a large restore in your environment.

For best performance you’ll want to run on a Windows Server install (2012, 2008 were tested) – more virtual processors handle multiple threads more efficiently.  If you’re running on a Windows client with 2 processors you shouldn’t run more than 4 to 8 threads.  A decent 2012 install with 8 virtual processors can easily handle 16 threads.  Again, making sure you’re Connection server can handle that inbound message traffic for large imports is important and should be done working with TAC.

Configuring Connection 7.0 and Later For Message Restore

If you are restoring messages to a Connection 7.0 or later there are a couple of important things you need to configure on your server first.  You must create a remote database access account, start the Remote Database Proxy service and configure the system to allow SMTP messages to be inserted.

Task 1: Configure a User without a mailbox with the Remote Administrator and System Administrator roles

1.     Go to the Cisco Unity Connection Administration web interface for your installation.

2.     You can leverage a user with or without a mailbox for off box data access purposes, but it’s strongly suggested that you create a new user without a mailbox that is used solely for the purpose of remote administration tasks for security reasons. 

3.     Be sure the web administration password for this user is not configured to require a change at first login on the “Password Policy” page for that user.

4.     If necessary, change the web administration password on the “Change Password” page.  Note that only the web application password comes into play for remote data access.

5.     Finally, on the “Role” page for the user, add the “Remote Administrator” and the “System Administrator” roles to the “Assigned Roles” list and save.  You can assign any or all other roles as well but for the purposes of remote access to the database and making updates to users those two are necessary.

Task 2: For 9.x and Earlier, Set the Database Proxy Service Shutdown Time

Out of the box on versions of Connection older than 10 the database proxy service is not running and if you try to start the service it will shut down right away.  First you need to set the “Database Proxy: Service Shutdown Timer” value found in the System Settings -> Advanced -> Connection Administration section of the Cisco Unity Connection Administration page.  By default this is 0.  You can set it to as high as 999 days if you like.  After the number of days configured here the remote database proxy service will shut down.  This is useful if you want to do some migration work, for instance, and don’t want to forget to have the service disabled for security reasons.

NOTE: If you restart the server, the remote database proxy service will remain shut off.  After a system restart you have to go in and manually turn on the service again (see step 3)

Task 3: Activate the Remote Database Proxy Service

1.     Out of the box the service that listens to remote database requests is not active, you must turn it on.  To do this, go to the “Cisco Unity Connection Serviceability” web admin page.

2.     On the Tools menu, select the “Service Management” page.

3.     The “Connection Database Proxy” item under the “Optional Services” section will be marked as “Deactivated” and stopped.  Press the “Activate” button and it will be activated and started automatically.

Once you’ve started the proxy service you can connect with any tool that needs off box database access using the user name, web administration password and port “20532”.

NOTE: The service will automatically shut down after the number of days configured in step 2 above or if you restart the server.

Task 4: Enable SMTP Connectivity For Importing Messages

You must disable any authentication restrictions on the SMTP service to import messages with DRS Message Fisher. 

1.     Go to the “SMTP Configuration” section of the “System Settings” in the Cisco Unity Connection Administration web page.

2.     On the “Server” page check the “Allow Connections from Untrusted IP Addresses”

3.     Uncheck the “Require Authentication from Untrusted IP Addresses”

4.     Select “Disabled” for the “Transport Layer Security from Untrusted IP Addresses” and save your changes.

The Unity Connection SMTP Server configuration page should look like this at the bottom:

 

NOTE: Once you are done importing messages you should go uncheck the “allow Connections From Untrusted IP Addresses” option on this page.

Troubleshooting Tips

Troubleshooting Remote Connection Failures

  1. The most common issue with remote connection failures is the database proxy service has been stopped for one reason or another.  This service will not start automatically after a Connection server restart and is shut down automatically after a configured number of days.  There have also been several defects along the way that cause it to simply stop on its own.  If you cannot log into the remote system and you are certain you’ve configured the remote user correctly and are using the right login/PW then double check the status of the remote database proxy service.  It is often a good idea to stop and start it again – make sure it comes up in a running state (i.e. not “pending”).  There is no harm in stopping and starting this service, it’s only role is providing off box tools with direct database access.
  2. Make sure nothing is blocking access to the port being used to create the ODBC connection.  In Connection 7.x and later this should always be port 20532.
  3. Make sure the Informix ODBC driver is installed.  Note that if you’re on a 64 bit operating system this still must be the 32 bit ODBC driver since all Connection tools at this time are 32 bit applications.  The ODBC driver download page has two versions of the 32 bit driver that have been tested.  There is a link to download the full development kit containing the ODBC driver from IBM as well.

Disable CSA and all Virus Scanning Applications

CSA and various virus scanning packages often block access to ports necessary to attach to remote servers and file systems and/or create local files and the like.  Before escalating a failure be sure to make sure this basic issue is not tripping you up since TAC will usually first start here.

Message Import for Connection 7.x and later

Couple things to note here:

    1. Please check and double check that you do not have a virus scanning package installed on the Windows server you are running DRS Message Fisher on.  This is by far the most common problem.  By default they will block use of port 25 (SMTP) and message restores will fail if that’s the case. Virus scanning packages will often allow a connection to port 25 but will then block subsequent message transfers so the initial checks the tool makes up front before starting import may pass even though this is still a problem.
    2. Make sure there is no firewall either on the Windows server or between the Windows server and the Connection server blocking port 25 (for import) or port 7993 (for export).
    3. Make sure port 443 is open between the client machine and the server you’re backing up or restoring to.
    4. Be sure you are using Connection 7.0(2) or later.  Also make sure you are connecting to the server using a user _without_ a mailbox.
    5. Make sure you’ve set the SMTP connectivity for Connection correctly when importing messages.  See Step 4 under the “Configuring Connection 7.0 and Later for Message Restore” section above for details on this.
    6. If you have verified that the above do not apply, turn on all SMTP and MTA traces on the Connection server attempt to import a single messages (which will presumably fail) and gather the Connection logs and provide them to the TAC engineer you’re working with.

If you see IMAP errors during import coming back that contain text that looks like this:

Then you need to review the SMTP authentication settings in Connection – see Configuring Connection 7.0 and Later for Message Restore section above for details.

Message Import for Connection 14.x and later

Points to be noted here  :

  1. DRS Bulk restore with Google Workspace configuration is ONLY supported on connection 14 SU1 and later.
  2. You need to enable Google workspace UMS only after successful restore on target server. It will enable message syncing between Google Workspace and Target Unity Connection.
  3. You need to disable Google workspace UMS on source server after thorough testing is done on target server.
  4. Google Workspace messges will be in sync with web inbox of only one connection server at a time. It can be of either source connection server or target connection server.

Requirements/Special Notes

Requires tar files created by the DRS tool from a Connection 7.0(1) or later backup.

If the backup is from a version of Connection 9.0 or later, these TAR files need to be decrypted – you may need to contact TAC for help with that.

Requires that you install the Informix ODBC Driver on your Windows installation where you are running DRS Message Fisher.  The drivers can be found on The ODBC driver download page.

Multiple part messages are constructed as a single WAV file separated by beeps when restoring to a Connection mailbox.

Obtaining Updates

To check for updates to this tool, visit http://www.ciscounitytools.com

You can also check for an updated version using the “Check for updated version” option under the Help menu.

Revision History

Version 2.0.9 – 10/27/2022

·         Fixed issue which failed to restore messages when "Disable Notification Devices" enabled.

Version 2.0.8 – 9/20/2021

·         Fixed issue where user is allowed now to restore more than one and less than all users.

Version 2.0.7 – 6/2/2021

·         Added support for Google workspace UMS mapping data restore. It enables user to perform Google workspace <-> Cnx sync after successful restore.

Version 2.0.6 – 5/6/2020

·         Updated logging and changed behavior to automatically open log when import is complete.

·         Fixed an issue where user is allowed to advance without selecting a user to restore messages for.

Version 2.0.5 – 11/13/2019

·         First release of tool.

 

© 2020 Cisco Systems, Inc. -- Company Confidential