Technical information
Programming - Asset Management
89
RMS Enterprise - NetLinx Programmer’s Guide
Asset Metadata Update Functions (Cont.)
RmsAssetMetadata
UpdateHyperlink
Description: This function is used to update and existing asset metadata property value.
This function updates a metadata property of type: HYPERLINK
Arguments:
• CHAR assetClientKey[] - asset client key
• CHAR metadataKey[] - metadata property key
• CHAR hyperlinkName[] - metadata hyperlink name
• CHAR hyperlinUrl[] - metadata hyperlink address
Returns: 1 if call was successful; 0 if call was unsuccessful
Syntax:
DEFINE_FUNCTION CHAR RmsAssetMetadataUpdateHyperlink(CHAR assetClientKey[],
CHAR metadataKey[],
CHAR metadataHyperlinkName[],
CHAR metadataHyperlinkUrl[])
{
STACK_VAR CHAR rmsCommand[RMS_MAX_CMD_LEN];
// ensure RMS is ONLINE, REGISTERED, and ready for ASSET registration
IF(![vdvRMS,RMS_CHANNEL_ASSETS_REGISTER])
{
SEND_STRING 0, '>>>> RMS API ERROR <RmsAssetMetadataUpdateHyperlink> :: RMS is not ready to accept asset
metadata changes.';
RETURN FALSE;
}
// ensure an asset client key has been provided
IF(assetClientKey == '')
{
SEND_STRING 0, '>>>> RMS API ERROR <RmsAssetMetadataUpdateHyperlink> :: missing asset client key';
RETURN FALSE;
}
// ensure a metadata key has been provided
IF(metadataKey == '')
{
SEND_STRING 0, '>>>> RMS API ERROR <RmsAssetMetadataUpdateHyperlink> :: missing metadata key';
RETURN FALSE;
}
// submit the asset metadata update now
rmsCommand = RmsPackCmdHeader('ASSET.METADATA.UPDATE');
rmsCommand
= RmsPackCmdParam(rmsCommand,assetClientKey);
rmsCommand = RmsPackCmdParam(rmsCommand,metadataKey);
rmsCommand = RmsPackCmdParam(rmsCommand,''); // empty placeholder for value field for other data types
rmsCommand = RmsPackCmdParam(rmsCommand,metadataHyperlinkName);
rmsCommand = RmsPackCmdParam(rmsCommand,metadataHyperlinkUrl);
SEND_COMMAND vdvRMS, rmsCommand;
RETURN TRUE;
}