GroupWise Mobility Service 2.0.1 Readme

March 2014

1.0 Overview

The GroupWise Mobility Service provides data synchronization between GroupWise mailboxes and mobile devices for synchronizing email, appointments, contacts, tasks, notes, and phone messages. The GroupWise Mobility Service is fast, reliable and scalable, and supports the latest device operating systems.

For a list of the bugs that have been fixed in GroupWise Mobility Service 2.0.1, see the GroupWise Mobility Service 2.0.1 Bug Fix List.

For a list of the enhancements that the GroupWise Mobility Service offers compared to Novell Data Synchronizer Mobility Pack 1.2.5, see What’s New in GroupWise Mobility Service 2.0 in the GroupWise Mobility Service 2.0 Installation Guide.

2.0 Mobility Service System Requirements

See GroupWise Mobility Service System Requirements in the GroupWise Mobility Service 2.0 Installation Guide.

If you are still running GroupWise 8, Support Pack 2 is no longer supported. Support Pack 3 is required for use with GroupWise Mobility Service 2.0.x.

3.0 Installation Instructions

Follow the instructions in this section if you are installing GroupWise Mobility Service 2.0.x in order to create a new Mobility system.

The GroupWise Mobility Service 2.0.x ISO is available from the Novell Downloads website. You use YaST to install the Mobility Service from the downloaded ISO.

NOTE:If you need to uninstall and reinstall the GroupWise Mobility Service, follow the instructions in Uninstalling the Mobility Service in the GroupWise Mobility Service 2.0 Installation Guide.

3.1 Obtaining the GroupWise Mobility Service 2.0.x ISO from the Novell Downloads Website

  1. On Novell Downloads, under Patches, click Search Patches to display Patch Finder.

  2. In the Select a Product drop-down list, select GroupWise.

  3. At the bottom of the GroupWise product list, click GroupWise Mobility Service 2.0 to list the available patches.

  4. Click GroupWise Mobility Service 2.0.x, review the product description, then click Proceed to Download.

  5. Follow the online instructions to download the GroupWise Mobility Service ISO to a convenient temporary directory on the Mobility server.

    novell-groupwise-mobility-service-version-x86_64-build_number.iso
    
  6. Continue with Installing GroupWise Mobility Service 2.0.x to Create Your New Mobility System.

3.2 Installing GroupWise Mobility Service 2.0.x to Create Your New Mobility System

  1. Ensure that the Linux server where you plan to install the Mobility Service meets the system requirements listed in GroupWise Mobility Service System Requirements in the GroupWise Mobility Service 2.0 Installation Guide.

  2. Use YaST to install the GroupWise Mobility Service ISO:

    1. Under Groups, click Software, then click Add-On Products.

    2. Install the Mobility Service as an add-on product.

For complete installation instructions, see GroupWise Mobility Service Installation in the GroupWise Mobility Service 2.0 Installation Guide.

4.0 Update Instructions

The update process pertains to either the following types of updates:

  • Any version of the GroupWise Mobility Service to the most recent GroupWise Mobility Service 2.0.x

  • Any version of the Novell Data Synchronizer Mobility Pack to the most recent GroupWise Mobility Service 2.0.x

To update to GroupWise Mobility Service 2.0.x:

  1. Obtain the GroupWise Mobility Service 2.0.x ISO from the Novell Customer Center.

    In the product list, it appears as Novell GroupWise Ver. 2.0.x.

    or

    Obtain the GroupWise Mobility Service 2.0.x ISO from the Novell Downloads website.

    In Patch Finder, it is listed under GroupWise Mobility Service 2.0 at the bottom of the list of GroupWise downloads.

  2. (Conditional) If you are updating from the Novell Data Synchronizer Mobility Pack, stop the Synchronizer services and verify that they have stopped:

    rcdatasync stop
    ps -eaf | grep datasync
    
  3. In YaST, run Patch CD Update to install the Mobility Service 2.0.x ISO to your existing system.

    NOTE:The Patch CD Update process pulls all updates in the channels that you have selected. This might include updates in addition to the GroupWise Mobility Service.

  4. Ensure that PostgreSQL is running:

    rcpostgresql status
    
  5. Run the Mobility Service Update script:

    /opt/novell/datasync/update.sh
    

    WARNING:Do not cancel this process, even if it takes a very long time. Cancelling the process before it finishes can cause damage to the Mobility Service database.

  6. Use the following command to check the status of the Mobility Service:

    rcgms status
    

For complete update instructions, see GroupWise Mobility Service Update in the GroupWise Mobility Service 2.0 Installation Guide.

5.0 Installation Issues

5.1 Valid Hostname Required for Installation

In order to install GroupWise Mobility Service 2.0.x, your SLES server must have a valid hostname.

You can check this using the following command:

hostname -f

If your SLES server is properly configured, this command returns the hostname of the server.

IMPORTANT:If the hostname is not returned, you cannot install GroupWise Mobility Service 2.0.x.

To resolve the issue:

  1. In YaST, click Network Devices > Network Settings.

  2. Click the Hostname/DNS tab.

  3. In the Hostname field, specify the hostname for the Mobility server, then click OK.

  4. Exit YaST.

  5. Repeat the hostname -f command to verify the hostname.

If you discovered the problem after installation of the Mobility Service failed:

  1. Use the following command to uninstall the Mobility Service software:

    /opt/novell/datasync/uninstall.sh
    
  2. Configure your SLES server so that the hostname -f command returns the hostname of the server.

  3. Repeat the installation of GroupWise Mobility Service 2.0.x.

5.2 GroupWise Trusted Application Creation

Before you run the GroupWise Mobile Service Installation program, you must create a GroupWise trusted application. This enables the GroupWise Sync Agent to log in to a GroupWise Post Office Agent (POA) in order to access GroupWise mailboxes without needing personal user passwords.

When you set up the GroupWise Sync Agent as a trusted application, you must fill in only these three fields in the New Trusted App Key dialog box in the GroupWise Admin console (or in the Create Trusted Application dialog box in ConsoleOne in older GroupWise systems):

  • Name

  • Location for Key File

  • Name of Key File

IMPORTANT:Do not fill in any other fields.

5.3 YaST Untrusted Key Warning

When you install the GroupWise Mobility Service for the first time, you receive the following warning:

Import Untrusted GnuPG Key

The following GnuPG key has been found in repository Unknown: Unknown

This is normal for an initial installation of the Mobility Service. Click Import to continue.

5.4 YaST Proposal Error

When you run the GroupWise Mobility Service Installation program in YaST, you might see the following error:

The proposal contains an error that must be resolved before continuing

This error indicates that you clicked Next without providing the configuration information for your Mobility system. Instead of clicking Next, click Change > GroupWise Mobility Service Configuration, then provide the configuration as prompted. After you provide the configuration information, click Next.

5.5 YaST Error When Configuring LDAP

When you run the GroupWise Mobility Service Installation program in YaST and select LDAP as the user source, the Installation program displays the following error if you click Browse next to the LDAP User Container field or next to the LDAP GroupWise Container field on the Mobility Service Settings page:

Connection to the LDAP server cannot be established

A possible reason for the failed connection may be that your client is
configured for TLS/SSL but the server does not support it

Retry connection without TLS/SSL?

Click Yes to successfully browse for the user and group containers.

This error occurs regardless of whether you specified a secure LDAP port on the LDAP Server Settings page. The same error also appears if you click Browse on the Add Users and Groups page.

To avoid the error, type the information, rather than browsing for the LDAP users and groups.

You can configure a secure LDAP connection after installation, as described in Enabling and Disabling SSL for the Mobility Service LDAP Connection in the GroupWise Mobility Service 2.0 Administration Guide.

5.6 Organization Container Required

In order for you to browse for user and group LDAP containers, the Mobility Service Installation program requires an Organization container. If your tree does not have an Organization container, use the following workaround:

  1. Create an empty Organization container in your tree.

  2. Select it during the Mobility Service installation.

  3. After installation, use the Mobility Admin console to provide the correct user and group LDAP containers, as described in Searching Multiple LDAP Contexts for Users and Groups in the GroupWise Mobility Service 2.0 Administration Guide.

5.7 Feature Preview: GWAVA Integration

The feature preview script (previewfeature.sh) lets you enable functionality that is currently under development but not yet officially released and supported. Such functionality is disabled by default, but you can use the feature preview script to enable it.

The new preview feature in GroupWise Mobility Service 2.0.x is GWAVA Virus Scanning, which enables integration with the GWAVA Security Message Gateway.

  1. Change to the following directory:

    /opt/novell/datasync
    
  2. Run the script to enable GWAVA Virus Scanning:

    ./previewfeature.sh --gwava --action enable
    

    For usage details, contact GWAVA.

  3. (Conditional) If you want to turn off the GWAVA integration, use the disable action:

    ./previewfeature.sh --gwava --action disable
    

6.0 Update Issues

6.1 Compatibility with GroupWise 2014

When you are ready to upgrade from GroupWise 2012 or GroupWise 8 to GroupWise 2014, update your Mobility system to Mobility Service 2.0.1 before you upgrade your GroupWise system.

The following GroupWise changes affect how you manage your Mobility system:

  • GroupWise “distribution lists” are now called GroupWise “groups.”

  • The GroupWise Administration console replaces ConsoleOne for performing GroupWise management tasks.

For more information about GroupWise 2014, see GroupWise System Upgrade in the GroupWise 2014 Installation Guide.

6.2 Valid Hostname Required for Update

In order to update from Data Synchronizer Mobility Pack 1.2.x to GroupWise Mobility Service 2.0.x, your SLES server must have a valid hostname.

You can check this using the following command:

hostname -f

If your SLES server is properly configured, this command returns the hostname of the server.

If the hostname is not returned, you cannot update to GroupWise Mobility Service 2.0.x.

To resolve the issue:

  1. In YaST, click Network Devices > Network Settings.

  2. Click the Hostname/DNS tab.

  3. In the Hostname field, specify the hostname for the Mobility server, then click OK.

  4. Exit YaST.

  5. Repeat the hostname -f command to verify the hostname.

If you discovered the problem after update to GroupWise Mobility Service 2.0.x failed:

  1. Configure your SLES server so that the hostname -f command returns the hostname of the server.

  2. Rerun the update.sh script.

6.3 Novell Customer Center Configuration

When you run Patch CD Update to install GroupWise Mobility Service 2.0.x, you can configure the update channel through which you will receive future updates to the Mobility Service software. On the Novell Customer Center Configuration page, you must select Registration Code under Configure Now. If you do not select Registration Code, you receive an error and cannot complete the update.

After you have completed the channel configuration, you might receive a warning that the configuration is not complete. Click Skip It to continue past the warning.

6.4 Transition from ActiveSync 2.5 to 12.1

When mobile devices connect for the first time to a system that has been updated from the Data Synchronizer Mobility Pack to GroupWise Mobility Service 2.0.x, some devices automatically switch from ActiveSync 2.5 to 12.1. When this occurs, some devices prompt users to accept a new “security policy,” which can sound like a substantial change. In reality, no substantial change is being made, and users should simply accept the “policy” when prompted.

Users whose devices do not automatically switch from ActiveSync 2.5 to 12.1 probably are not aware that this change needs to take place in order to get the full benefit of updating to GroupWise Mobility Service 2.0.x. In the Dashboard in the Mobility Admin console, you can display the version of ActiveSync that is in use on users’ devices.

  1. In the Details panel of the Dashboard, click Devices to open the Devices listing panel.

  2. Click drop-down list on the left side of the Listing panel header, then click Devices > Device Type to display the OS and Protocol columns in the listing panel.

  3. (Conditional) If any devices seem stuck using ActiveSync 2.5, contact the effected users and instruct them to delete and then re-add their email accounts on the devices to encourage the devices to make the transition.

6.5 New Command and Log File Names

The Data Synchronizer Mobility Pack rcdatasync command has been replaced with the rcgms command for the GroupWise Mobility Service.

The names of some of the log files have also changed:

Data Synchronizer Mobility Pack Log File Name

Mobility Service Log File Name

engine.log (unchanged)

engine.log

configengine.log (unchanged)

configengine.log

server.log (unchanged)

server.log

connectorManager.log (unchanged)

connectorManager.log

  • default.pipeline1.groupwise-AppInterface.log
  • default.pipeline1.groupwise.log
  • default.pipeline1.mobility-AppInterface.log
  • default.pipeline1.mobility.log
  • groupwise-sync-agent.log
  • groupwise.log
  • mobility-sync-agent.log
  • mobility.log

If you have scripts that reference the rcdatasync command or the connector log file names, you must update these scripts for use with the GroupWise Mobility Service.

IMPORTANT:The old rcdatasync-* scripts are still installed with the GroupWise Mobility Service, because they are called by the new rcgms command, but they do not have any independent usage in your new Mobility system. The Mobility Service RPMs still have datasync in the file names, rather than gms.

6.6 Increased Security through Obfuscation

The LDAP server password and the GroupWise trusted application key are obfuscated in the Mobility Admin console and in the configuration file where the strings reside. You must use the Mobility Admin console in order to change these settings.

6.7 Long Update Process

The process of updating to GroupWise Mobility Service 2.0.x from versions of the Data Synchronizer Mobility Pack earlier than 1.2.5 might take longer than previous Mobility Pack updates. It is not unusual for the Update script to run for over an hour for a large database.

Do not cancel the Update script. Wait for it to run to completion.

6.8 Update through ssh Not Recommended

Updating the GroupWise Mobility Service software through an ssh connection is not recommended. An ssh connection can be interrupted before the update process finishes.

WARNING:An incomplete software update can leave the Mobility server in a non-working state.

6.9 Update Issue from SLES 11 SP1 to SLES 11 SP2 or SP3

When you update a Mobility server from SLES 11 SP1 to SP2 or SP3, you must select the GroupWise Mobility Service as an add-on product during the SLES update process. This informs the SLES update process that you want to retain the Mobility Service on the updated Mobility server. For more information, see TID 7010339, How to Upgrade a Novell Data Synchronizer Mobility Pack Server to SLES 11 SP2 in the Novell Support Knowledgebase.

WARNING:If you do not select the GroupWise Mobility Service during the SLES update, the Mobility Service RPMs are removed.

7.0 Mobility Admin Console Issues

7.1 Agent Alerts in the Dashboard

The Agent Alerts panel in the Dashboard lists all alerts that are currently in the Dashboard database. The alerts accumulate over time. The Count column in the list shows how many times each type of alert has been recorded in the database.

Alerts are retained in the database until you delete them. Only then is the count updated. The color of each alert indicates the type of alert, not the current state of your Mobility system.

The various status fields in the Agents panel and in the Details panel provide the best indication of the current state of your Mobility system.

7.2 Unknown Device Information in the Dashboard

For most devices, the Dashboard displays the operating system version for each device. However, for some less common devices and for some newer devices, the Dashboard lists the device operating system as Unknown. Additional device operating systems will be recognized in future updates.

7.3 POA Status in the Dashboard

When a POA goes down, the Dashboard promptly displays Critical status. However, when the POA comes up again, it might take as much as an hour for the Dashboard to again display Normal status for the POA.

7.4 References to “LDAP” in the Dashboard

When you have chosen GroupWise as your user source, the Dashboard user interface still refers to “LDAP”. In this context, the LDAP Connection field in the system Details panel displays the status of the connection to your GroupWise system. The LDAP ID field in the user Details panel displays the user_name.post_office.domain location for the GroupWise user.

8.0 Mobility Service Issues

8.1 Unsuccessful Shutdown

Occasionally, when you shut down the Mobility Service, related Python processes fail to shut down along with it. A message notifies you of the problem. To resolve the problem:

  1. Use the following command to identify the Python processes that did not shut down:

    pgrep -f /opt/novell/datasync 
    
  2. Use the following command to kill the Mobility Service python processes:

    kill -9 $(pgrep -f /opt/novell/datasync)
    
  3. Repeat the pgrep command to verify that all killed processes have actually shut down.

9.0 GroupWise Sync Agent Issues

None.

10.0 Device Sync Agent Issues

10.1 Synchronization to a Mobile Device Stops

Synchronization from the Mobility system to a mobile device might occasionally stop, perhaps because abnormal cellular network conditions resulted in dropped synchronization data. To resolve the situation, follow the instructions in Resynchronizing a Device in the GroupWise Mobility Service 2.0 Administration Guide. For additional troubleshooting assistance, see Device Troubleshooting in the GroupWise Mobility Service 2.0 Administration Guide.

10.2 Multiple Device IDs for a Single Mobile Device

In the Mobility Admin console, the User/Device Actions page might list two device IDs for one mobile device. Some mobile devices have one device ID for email and contact information, and a second device ID for calendar information. This is working as designed.

10.3 Log File Security Issue

If you set the Mobility Service log level to Debug, Subject lines are included in log files for troubleshooting purposes. This information identifies items that are experiencing synchronization problems.

If you use the Debug log level, ensure that log files are kept secure to protect users’ personal information. The Info log level is strongly recommended for a smoothly functioning Mobility system.

No text about recipients or from message bodies is included in log files.

11.0 User Management Issues

11.1 Mobile Devices Supported by the AutoDiscover Service

The AutoDiscover Service currently works with Apple devices and with Windows 8 devices.

11.2 Unnecessary Traffic Created by Extraneous Users

When you add a user to your Mobility system, GroupWise data continually synchronizes from GroupWise into your Mobility system. If that data is not being used on a mobile device, that synchronization produces unnecessary overhead in your Mobility system.

11.3 New GroupWise Users

When you add new users to GroupWise, they are not immediately available in the Mobility Admin console for adding to your Mobility system. They automatically become available within 30 minutes of when the Mobility Global Address List (GAL) is updated from the GroupWise Address Book.

For more information, see When New Users Are Added to the GroupWise System in the GroupWise Mobility Service 2.0 Installation Guide.

12.0 Item Synchronization Issues

12.1 Copied Contacts

If you copy a contact from one GroupWise address book to another, the contact is not synchronized to your mobile device in the destination address book. The GroupWise client links the original contact into the destination address book rather than physically copying it. Such links are not currently synchronized to your mobile device. However, on some mobile devices, you can search for contacts, regardless of which address book they are located in.

If the original contact is in an address book that is not synchronized to your mobile device, such as the Frequent Contacts address book, the copied contact does not appear on your mobile device at all, even when you are synchronizing the address book that it was copied into. If you want a copied contact to appear on your mobile device, delete the original contact from the original address book. This creates the contact as a normal contact in the address book that is being synchronized.

12.2 Contacts with Pictures

If you create a contact on your mobile device and add a picture to it, the contact might not synchronize to GroupWise if the picture that you added to the contact on your mobile device exceeds the GroupWise picture size limit. For more information, see Section 12.16, Picture Quality.

12.3 Large Distribution Lists

If a message synchronizes to your mobile device that has a very large number of recipients, your mobile device might seem to hang when opening the message. To prevent this problem, open an item that has a small distribution list, then configure your device to hide distribution lists.

12.4 Organizations

Organizations currently do not synchronize to mobile devices.

12.5 Personal Address Books

When your default personal address book synchronizes to your mobile device, it is named Contacts, rather than the name that you see in GroupWise.

When you create contacts on your mobile device, they are added to your default personal address book in GroupWise. If you want them added to a different personal address book, select that personal address book on the Mobility Settings page in the Mobility Admin console, as described in the GroupWise Mobility User Quick Start.

On some mobile devices, personal address books that have categories on contacts appear to be duplicated. If this is a problem, remove the categories from the contacts in the personal address books.

12.6 Shared Address Books

Shared address books are synchronized to the owner’s mobile device, but not to the mobile devices of those with whom the address book has been shared.

12.7 Draft Items

If you create a draft item on your mobile device, it does not synchronize to your Work in Progress folder in the GroupWise client. If you create a draft item in the GroupWise client, it does synchronize to your mobile device, but you cannot modify it on your mobile device.

12.8 HTML Formatted Appointments

Appointments with HTML formatting in GroupWise synchronize to mobile devices without the HTML-formatted text. As a result, you see the subject line of these appointments on your mobile device, but not the accompanying text that resides in the message body.

12.9 Shared Calendars

Shared calendars are synchronized to the owner’s mobile device, but not to the mobile devices of those with whom the calendar has been shared.

If shared calendars are important to users, shared calendar owners can post them to the Internet using the GroupWise Calendar Publishing Host, as described in Publishing Personal Calendars on the Internet in the GroupWise 2014 Client User Guide. After the owner publishes the calendar, other users can view the calendar URL in the web browser on their mobile devices.

12.10 Reminder Notes

Reminder notes are synchronized to your device as all day events. If you edit the all day event on your mobile device, it synchronizes back to GroupWise as an all day event.

WARNING:If the reminder note has recipients besides yourself, this action schedules the other recipients for an all day event, which is not the intended outcome.

If you create a note on your mobile device using its native Note app, the note does not synchronize to GroupWise. The mobile device Note app is completely independent from GroupWise.

12.11 Tasks

Tasks that originate as other GroupWise item types (such as emails or calendar items) are synchronized as tasks when they are dragged to the Tasklist, when they are displayed in the Tasklist, or when they are changed to tasks. However, existing tasks of this type are not synchronized during initial synchronization. They synchronize to your device after they are modified in GroupWise.

12.12 Tasklists

The GroupWise Tasklist does not synchronize to mobile devices. You cannot create a tasklist on a mobile device that is associated with a GroupWise account.

12.13 Attachments on Appointments

Attachments on appointments are not supported on mobile devices. When you accept an appointment that has attachments, the attachments are removed as the appointment is added to the calendar on your mobile device.

As a workaround, you can delegate the appointment to yourself, accept the original appointment into your calendar, and retain the delegated appointment as an email item with attachments.

12.14 Large Attachments

Synchronizing large attachments to mobile devices can put a substantial load on the Mobility Service. To decrease the amount of data that is synchronized to mobile devices, you can control the maximum size of synchronized items, as described in Controlling Synchronization Size Limits in the GroupWise Mobility Service 2.0 Administration Guide.

12.15 Non-Synchronizing Folders

The following GroupWise folders do not synchronize to your mobile device:

  • Shared folders

    Shared folders do synchronize to your mobile device if you are the folder owner. Users with whom the folders are shared do not see the shared folders on their mobile devices.

  • Find Results

    A Find Results folder is a view of search results, not an actual folder in GroupWise.

  • Documents

  • POP and IMAP accounts

  • RSS feeds

  • Internet calendar subscription folders

Any folders that you move under a non-synchronizing folder no longer synchronize.

12.16 Picture Quality

GroupWise personal address books limit contact pictures to 64x64 pixels and less than 2K in size. Mobile devices often handle pictures with more pixels and a larger file size.

When pictures are synchronized from your mobile device to GroupWise, GroupWise makes two attempts to optimize the picture to fit within the GroupWise limits of 64x64 pixels and 2K file size. The resulting picture might not display as well as expected in the GroupWise personal address book. You can use an image editing program to manually adjust the original picture to fit within the GroupWise limits, and then synchronize it from your mobile device to GroupWise.

When pictures are synchronized from GroupWise to your mobile device, they might not display as well as expected on the mobile device because the GroupWise limit is retained on the mobile device.

12.17 Items Archived and Stubbed by a Third-Party Application

If your GroupWise system is backed up using an archive solution that employs GroupWise stubbing, GroupWise items synchronize to your mobile device when they are archived and stubbed in GroupWise. Stubbing replaces an existing item with a copy of the item, without any attachments and without the message body text.

13.0 International Issues

13.1 Language Versions of the Mobility Admin Console and Informational Messages on Mobile Devices

The Mobility Admin console is translated into the standard GroupWise administration languages. Informational messages from the Mobility system to mobile devices are translated into the standard GroupWise user languages. For language lists, see Multilingual GroupWise Systems in the GroupWise 2014 Administration Guide.

When users log in to the Mobility Settings page in the Mobility Admin console, the administration languages, not the user languages, are available.

14.0 Documentation Issues

14.1 PDF Display in Firefox

Starting in Firefox 19, Firefox includes a built-in PDF viewer by default. In earlier versions, Adobe Acrobat has been used with Firefox.

The built-in Firefox PDF viewer does not include the ability to expand and collapse the table of contents bookmarks in the left panel of PDF guides. In a large GroupWise guide, this expand/collapse functionality can be very useful.

To configure Firefox to use Adobe Acrobat as it did in previous versions:

  1. Click Firefox > Options > Applications.

  2. In Portable Document Format (PDF) field, select Use Adobe Acrobat (in Firefox), then click OK.

15.0 GroupWise Mobility Service 2.0.1 Bug Fixes

For a list of the bugs that have been fixed in GroupWise Mobility Service 2.0.1, see the GroupWise Mobility Service 2.0.1 Bug Fix List.

If you have access to Novell Bugzilla, you can look up the bug numbers for more information about each bug.

16.0 Documentation

For all GroupWise Mobility Service documentation, see the GroupWise Mobility Service 2.0 Documentation website.

In addition to the GroupWise Mobility Service product documentation, the following resources provide information about the Mobility Service: