Media Manager Integration

Product 360 - Server

Integrating Product 360 - Media Manager

The usage of Product 360 - Media Manager as media asset provider for Product 360 - Server presumes that Product 360 - Media Manager version 8.0.5 has been installed. Please refer to the Product 360 - Media Manager installation manual for such an installation.

Product 360 - Media Manager is integrated into the Product 360 - Server by means of a plug-in. This plug-in is default installed and must be configured afterwards. The following chapters will explain this in detail.

Switching default media asset provider to Product 360 - Media Manager

In order that Product 360 - Server uses Product 360 - Media Manager as media asset provider, you have to switch the default media asset provider to Product 360 - Media Manager. This is performed in the C:\Informatica\server\configuration\HPM\server.properties file by setting the "mime.defaultProvider" parameter in the "Media Asset Server (MAS) Settings" section to "HMM":

################################################################################
### Media Asset Server (MAS) Settings
# Defines the default provider for media assets which defines the source where to obtain the multimedia documents from(e.g. HLR, HMM).
# MediaAssets are administered by a provider. A implement of provider is already included by standard HPM(Identifier=HLR).
# The identifier of provider is defined in its plugin.xml, see the Extension point com.heiler.ppm.mediaasset.server.mediaAssetProvider.
# If no provider is explicit specified, then the here defined default provider will be used.
mime.defaultProvider = HMM

Configuring Product 360 - Media Manager

After the integration of the Product 360 - Media Manager plug-in, you have to configure the plug-in to your needs. The configuration should be performed in the C:\Informatica\server\configuration\HPM\hmm.properties file.

The parameters concerning the Product 360 - Media Manager configuration can be found in the "connection settings for the application server" section.

The following sections describe the configuration parameters.

Special characters

If a value contains unicode characters store them using escape sequences, e.g. \u00C4 for the German umlaut Ä.

Connection data

In order that Product 360 server can connect to Product 360 Media Manager, you have to specify the corresponding settings for Product 360 - Media Manager and it's database.The following table lists the connection parameters:

MSSQL - Integrated security

If your security guidelines do not allow passwords in configuration files you can use integrated authentication on Windows operating systems. (MSSQL only)

Property

Description

hmm.login.supervisor.userName

Login name of the supervisor user at Media Manager who has all rights and will be mapped to the Product 360 administrator.

hmm.login.supervisor.password

Password of the supervisor user at Media Manager who has all rights .

If you want to encrypt the password please refer to chapter Encryption of secure information in the Server Installation manual.

hmm.login.customer

Customer ID for the authentication at Product 360 - Media Manager.

hmm.db.url

Url of the Media Manager database which can be reached by Product 360.

It is possible to use an encrypted connection to the Media Manager database (MSSQL only). Append ';ssl=request' to your url.

The url would look like

jdbc:sqlserver://localhost:1433;databaseName=opasdb;ssl=request

hmm.db.user

Login name at the Media Manager database which can be reached by Product 360.

Might be empty if integrated authentication with MSSQL is used.

hmm.db.password

Password for the above mentioned user at the Media Manager database which can be reached by Product 360.

Might be empty if integrated authentication with MSSQL is used.

hmm.db.type

Supported Product 360 - Media Manager database type. It must be one integer of the following values:

1: ORACLE 11g R2 and above; 2: MSSQL SERVER 2008 R2; 3: MSSQL SERVER 2012 and above

hmm.db.allowAutomaticMigration

Specifies whether the Informatica Media Manager database gets updated automatically during the P360 starts up a connection with it. Default is true.

hmm.connection.poolsize

Size of connections pool per Product 360 user to Media Manager, default value is 10.

hmm.connection.timeoutSEC

Time out setting(in seconds) for each connection to Media Manager. The connection will be deleted after this period. Default value is 1800.

Shares

Product 360 - Server uses one share within the Product 360 - Media Manager system for accessing exported media assets. In order that Product 360 - Server can access this share, its path must be declared.

Property

Description

hmm.share.export

Removed since Product 360_8.0.03

Path to the share containing the temporary exported zip file for images. This share must provide read-write access to application server.

Please note that the local directories of the shares might not (yet) exist. Usually the Product 360 - Server creates these directories on the first start, but for this configuration step you would need to do this manually to be able to create the share on them.

Notification queue

If Product 360 - Server should use the master asset functionaltity of Product 360 - Media Manager, Product 360 - Server must keep itself informed about asset changes in Product 360 - Media Manager by listening to corresponding notification queues.

In order that this mechanism works, the following parameters have to be configured:

Property

Description

hmm.jms.connection.url

Connection URL to Media Manager JMS server which replaces the old settings for notification queue.

An error message for unreachable JMS server is only ensured with the transport options "initialReconnectDelay" and "maxReconnectAttempts".

Example

hmm.jms.connection.url = failover:(tcp://JMSServer:61616?wireFormat.maxInactivityDuration=0)?initialReconnectDelay=2000&maxReconnectAttempts=2

hmm.jms.connection.username

Optional property as the name for the authentication user during connection to the Media Manager JMS server. They are only necessary if the user should be authorized to connect to the Media Manager JMS server.

This property is introduced only for the cloud solution, therefore it is currently not available since the media manager still connects to JMS server without authorization mechanism.

hmm.jms.connection.password

Optional property as the password for the authentication user during connection to the Media Manager JMS server. They are only necessary if the user should be authorized to connect to the Media Manager JMS server.

This property is introduced only for the cloud solution, therefore it is currently not available since the media manager still connects to JMS server without authorization mechanism.

Write access

If Product 360 - Server should be supported with the wirte access of Product 360 - Media Manager, the following parameters have to be configured:

Property

Description

hmm.supportsWrite

Set this to false, If the write access of media manager Provider should not be supported.

Please note, that there is not granular destinction. Either the Provider supports FULL write support (Upload, Removing files and categories...) or doesn't support write at all.

Default value

true

hmm.defaultCategoryId

The identifier of default category(usually names "Unassigned") which stores all images that are not assinged to other categories.

The default category id can be fetched by calling the following sql statement from the Media Manager database:

select IHIE_ID from F_IMGHIER where IHIE_NAME = 'Unassigned'

Additional language packages

If you have installed additional language packages (refer to appendix "i18n language packages" for more information), you will have to add respective mappings into the hmm.properties file. This is due to the fact that Product 360 -Server works with locales and Product 360 - Media Manager with language numbers.The mapping entries must look like this:

# Mapping from Locales to Media Manager language numbers
hmm.locale.en_US=0
  • A setting with false value can cause fatal error by fetching asset information form Media Manager!

  • locale must be an enum entry defined in the enumeration "Enum.Language".

Tip: The language numbers are defined in the "Informatica Product 360 Media Manager Administration". You can retrieve a list of the language numbers from by selecting "System" -> "Manage languages" in the native application "Informatica Product 360 Media Manager Administration"

Miscellaneous

The following table lists all other parameters for the configuration of the Product 360 - Media Manager plug-in:

Property

Description

Default value

hmm.maxCountOfIdsInOneThread

Maximum count of ids which are sent as parameter to corresponding connector API call that can be run with multi-threading. This value can be adjusted in real time for a better performance.

For more detailed information please visit the section "Media Asset Parallel Management" of chapter "Tuning advisory" in [OpertationManual].

1000

hmm.numberOfThread.initValue

This setting defines the initial vlaue for the number of threads which are used for calling media asset parallel operations. Default value is 1, therefore this initial value should be adjusted according to the corresponding hardware and media manager configuration(e.g. number of hmm port). After start of the Product 360 - Server, the value of numberOfThread can be also changed by JMX tooling in real time.

1

hmm.maxNumberOfDisplayableObjects

Maximum number of the from Product 360 - Media Manager loadable media objects pro search, no matter what default value in the Product 360 - Media Manager system parameters.

10000

defaultquality

The default image quality. This parameter is only needed when using the master asset functionality of Product 360 - Media Manager.

originalimage

hmm.exportMediaAsset.defaultWithLoggedInUser

available since 8.0.01.04, 8.0.03.00

Specifies whether the logged in user will be used as default while exporting media asset information from the Media Manager.

If it is set as true, then only the media assets will be exported, which can be accessed by the logged in user who runs the export job. Otherweise the media assets will be exported, which can be accessed by the defined system user(system user has the access level of the Media Manager user defined with the "hmm.login.supervisor.userName").

true

hmm.exportMediaAsset.uncpath.separator

available since 8.0.03.01(Version 8.0 Update 3 Hotfix 01)

Specifies which separator should be used in the unc path returned from the corresponding methods of Media Manager provider for export. Default is the backslash("\\"), if you want to use the unc path directly under Unix system, please set it with the slash("/")

\\

Auto Assignment

All settings for Auto Assignment and Auto path resolution please visit the page: Configurations for Auto Assignment

Configuration example of Product 360 - Media Manager

Example for hmm.properties(without auto assignment configurations)
################################################################################
### connection settings for the application server
### --------------------
### Connection data
#
# supervisor user in media manager with all rights
# hmm.login.supervisor.userName=<ENTER SUPERVISOR USERNAME HERE>
# hmm.login.supervisor.password=<ENTER SUPERVISOR PASSWORD HERE>
hmm.login.supervisor.userName=toto
hmm.login.supervisor.password=toto
#
# Identical customer ID which is defined in Media manager for all media manager users who will be mapped to corresponding Product 360 user.
# hmm.login.customer=<ENTER MEDIA MANAGER CUSTOMER NUMBER HERE, e. g. D120001>
hmm.login.customer=D080001
#
# hmm.db.url=<ENTER MEDIA PORTAL DATABASE CONNECTION URL HERE, e. g. jdbc:<server_type>://<server>[:<port>][;databaseName=<database>]>
# hmm.db.user=<ENTER MEDIA PORTAL DATABASE USERNAME HERE>
# hmm.db.password=<ENTER MEDIA PORTAL DATABASE PASSWORD HERE>
# supported database type: 1 = ORACLE 11g R2 and above
# 2 = MSSQL SERVER 2008 R2
# 3 = MSSQL SERVER 2012 and above
# hmm.db.type=<ENTER MEDIA PORTAL DATABASE TYPE HERE, e. g. 2>
hmm.db.url=jdbc:sqlserver://10.10.11.198:1433;databaseName=opasdb
hmm.db.user=totoUser
hmm.db.password=totoPassword
hmm.db.type=2
#
# size of connections pool per HPM user to Media Portal
hmm.connection.poolsize=10
# time out setting(in seconds) for each connection, the connection will be deteled after this period
hmm.connection.timeoutSEC=1800
#
### --------------------
### Notification queue
#
# Connection URL to Media Manager JMS server
# Default protocol prefix is 'failover:' to ensure a robust connection, and the default transport Options are initialReconnectDelay=2000&maxReconnectAttempts=2,
# so that after 2 attempts at connecting an exception will be shown to user who decides reconnection again or restart the Product 360 server after correcting this url.
# The further default connection option is '?wireFormat.maxInactivityDuration=0' to increase robustness
# Example for JMS server '10.10.11.198' and port '61616':
# hmm.jms.connection.url=failover:(tcp://10.10.11.198:61616?wireFormat.maxInactivityDuration=0)?initialReconnectDelay=2000&maxReconnectAttempts=2
hmm.jms.connection.url=failover:(tcp://10.10.11.198:61616?wireFormat.maxInactivityDuration=0)?initialReconnectDelay=2000&maxReconnectAttempts=2
#
### --------------------
### Write access
#
# Set this to false, If the write access of HMM Provider should not be supported, default value is true.
# Please note, that there is not granular destinction.
# Either the Provider supports FULL write support (Upload, Removing files and categories...) or doesn't support write at all.
hmm.supportsWrite = true
#
# hmm.defaultCategoryId indicates the identifier of default category(usually names "Without Category") which stores all images that are not assinged to other categories.
hmm.defaultCategoryId = 006800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
#
### --------------------
### Additional language packages
#
# Mapping from Locales to HMM language numbers
# Caution: a setting with false value can cause fatal error by fetching asset information form HMM!
# Tip: The language numbers are not fix, but are set by the "Product 360 - Media Manager Administration".
# You can retrieve a list of the language numbers from by selecting System > Manage languages in the native application "Product 360 - Media Manager Administration"
hmm.locale.en_US=0
#
### --------------------
### Miscellaneous
#
# maximum count of ids which are send as parameter to corresponding XOB Call that can be run with multi-threading
hmm.maxCountOfIdsInOneThread = 1000
#
# Initial value for the number of threads which are used for all media asset parallel operations.
# Default is 1, therefore this initial value should be adjusted according to the corresponding hardware and media portal configuration(e.g. number of hmm port).
# After start of the hpm server, the value of numberOfThread can be also changed by JMX tooling in real time.
hmm.numberOfThread.initValue =1
#
# This properties defines the maximum number of the from HMM server loadable media objects pro search, no matter what default value in the HMM system parameters.
hmm.maxNumberOfDisplayableObjects = 10000
#
# The default quality(master asset) of the provider
defaultquality=originalimage
#
# Specifies whether the logged in user will be used as default while exporting media asset information from the Media Manager.
# false - the media assets will be exported, which can be accessed by the defined system user(system user has the access level of the Media Manager user defined with the "hmm.login.supervisor.userName").
# true - default / only the media assets will be exported, which can be accessed by the logged in user who runs the export job.
hmm.exportMediaAsset.defaultWithLoggedInUser=true
#
# Specifies which separator should be used in the unc path returned from the corresponding methods of Media Manager provider for export.
# Default is the backslash("\\"), if you want to use the unc path directly under Unix system, please set it with the slash("/")
hmm.exportMediaasset.uncpath.separator =\\

Using Product 360 - Media Manager with master assets and derivates

Product 360 supports the master asset business logic provided by Product 360 - Media Manager.

This implies that Product 360 - Server must be informed about new derivate shemas or changes in existing derivative shemas performed in the integrated Product 360 - Media Manager. Product 360 - Media Manager keeps Product 360 - Server informed about such changes by putting respective notifications into its notification queues.

Product 360 - Server can obtain these notifications by means of a listener listening to this notification queue. In order that this mechanism works, the notification queue parameters as well as the defaultquality parameter must be correctly set in the hmm.properties file.

After Product 360 - Server has collected or successfully consumed a notification, the notification is removed from the notification queue.

There are several notifications which can currently be processed by the Product 360 - Server. It is necessary that you check that the following notification queue events are configured in the workflow manager of Product 360 - Media Manager:

  • Notifications from the queue "heiler.hmm.backend.event"

    • Changed derivative schema (name) The listener listens to the notification queue on the topic "ModifyDerivativeSchema" for a "F_DERIVATE.DEV_ID" which has to be a number (the number of the changed derivative schema id). The listener triggers only a change of the derivative schema name in the "MediaAssetQualityEnumeration".

    • New derivative schema The listener listens to the notification queue on the topic "NewDerivativeSchema" for a "F_DERIVATE.DEV_ID" which has to be a number (the number of the new created derivative schema id). The listener triggers a creation of new media asset documents on a media asset if this media asset has a mapped master asset and the derivative of this asset is just calculated by the pipeline. Furthermore, the listener triggers an update of the "MediaAssetQualityEnumeration".

    • Delete derivative The listener listens to the notification queue on the topic "DeleteDerivative" for a "F_DERIVATE.DEV_ID" which has to be a number (the number of a derivative schema id) and for the "F_IMGKOMP.PKOM_PNR" (the master asset identifier). The listener triggers a deletion of all to Product 360 object assigned media asset document for the corresponding master asset identifier and quality(derivative schema id). Typically this notification is sent if the pipeline has deleted a derivative.

  • Notifications from the queue "heiler.hmm.backend.event.assignment"

    • Assign document The server job "AssignDocumentJob" picks the next message up from the notification queue, if it has the topic "AssignDocument" with a property "F_IMGKOMP.PKOM_PNR" which has to be a string(the identifier of the media asset), a "F_IMGKOMP.PIMG_SOURCE_FILENAME" which has to be a string(the name of the media asset), and a "F_IMGKOMP.PIMG_CATALOG_ID" which has to be a string(the identifier of the catalog), the the server job triggers an assignment of corresponding media asset document to a Product 360 catalog object.

    • New derivative of a media asset The server job "AssignDocumentJob" picks the next message up from the notification queue, if it has the topic "NewDerivative" with a property "F_DERIVATE.DEV_ID" which has to be a number (the number of a derivative schema id) and a "F_IMGKOMP.PKOM_PNR" which has to be a string(the master asset identifier). The server job triggers a creation of a new media asset document on the media assets which contain the master asset identifier in a media asset document which has the master asset quality (e.g. originalimage). Typically this notification is sent if the pipeline has rendered a derivative quality.

  • Notifications from the queue "heiler.hmm.backend.event.assetModified"

    • Asset modified The server job "UpdateModifiedAssetJob" picks the next message up from the notification queue, if it has the topic "AssetModified" with a property "F_IMGKOMP.PKOM_PNR" which has to be a string(the identifier of the changed media asset), the server job triggers the update of the "modificationTimestamp" for the corresponding media asset documents, meida assets and assinged objects(item, product and structure group).

There are example workflows existing which can be imported into the Product 360 - Media Manager workflow manager.

The corresponding example workflows contains also another useful workflows which should be adjusted and imported into the Product 360 - Media Manager workflow manager. Especially the workflow "Automatic group assignment" should be actived to automatically assign all unassigned images( images which are not assigned to any other category) to the default category. For more details information please visit the page Media Manager Workflows.

How to work with workflows and how to change and modify workflows inside the workflow manager is described in the Product 360 - Media Manager manual and is only supported by the Product 360 - Media Manager consulting and support teams.

To enable the message queue on the Product 360 - Media Manager side you have to start the activemq script on the Product 360 - Media Manager server by executing the startup.bat.

Adding new media asset attribute(property field) to the repository

The Product 360 - Server has read/write access to the media asset attributes of Product 360 - Media Manager.

Since the configuration of the Product 360 - Server repository is adjusted to the current state of supported media asset attributes, it might be necessary to add some (user defined) attributes.

Only the property field(meta data definition) of Product 360 - Media Manager can be added in Product 360 core in this way!

This chapter describes how you can do this. It is assumed that you have installed the repository editor from the setup archive

    
PIM    
_<Version>_Rev-<Revision>_repoEdit_<OS>.zip, e.g.     
PIM_8.0.00.00_Rev-12345_repoEdit_win32.zip    

To add new media asset attributes to the Product 360 - Server repository, perform the following steps:

Add new media asset attribute(property field) for media asset file

Please visit the following page for detailed information: Bring Media Manager property field in media asset file views of PIM desktop.

Add new media asset attribute(property field) for media asset document

  1. Open the C:\Informatica\server\configuration\HPM\Repository.repository file in the repository editor.

  2. In the "types" area, add an new field type under the entity type "MediaAssetDocumentAttributesType".

    Note: The value of "Persistence XPath" is the identifier of corresponding Product 360 - Media Manager field, e.g. "F_IMGITEM.IMI_ITEM1" is the identifier for the first meta data value of asset, and so on.

    images/download/attachments/158008822/image2013-3-28_15-58-0.png

  3. In the "custom" area, add an new field of the defined field type under the entity "MediaAssetDocumentAttributes".

    images/download/attachments/158008822/image2013-3-28_16-20-11.png

    Currently only read access is supported for the fields under the entity "MediaAssetDocumentAttributes", therefore the corresponding "Editable" property has to be set with "false".

    Note: Add a field parameter under the field which has as key "mediaAssetProvider" and as value: "HMM" (this is necessary for the automatic detection of the necessary fields by the Product 360 - Server)

    images/download/attachments/158008822/image2013-3-28_16-26-13.png

  4. Add the respective field identifier with the language dependent name for each added field to the C:\Informatica\server\configuration\HPM\Repository.properties_[language key] (e.g. C:\Informatica\server\configuration\HPM\Repository.properties_en) files.

Note: Since Product 360 version 7.0.03 the media asset attribute with type "multiple selection list" can be also shown in Product 360 - Desktop client, for that the "Upper Bound" of the corresponding field type in repository must be set as "-1".

Product 360 - Desktop Client

The respective plug-in on the client side which integrates the Media Manager web view in Product 360 Desktop, is not supported in standard Product 360 solution any more. If any reqular customer has always such request, please contact your administrator or our support.