NAME

Net::MySourceMatrix - A Perl wrapper to the MySource Matrix(TM)/Squiz Matrix(TM) SOAP API.

VERSION

This documentation refers to version 0.02.

SYNOPSIS

 use Net::MySourceMatrix;
 
 my $MyM_Conn = Net::MySourceMatrix->new({
			proxy      => 'http://matrixdemo.example.com/_web_services/soap-server',
			username   => 'user',
			password   => 'pass',
			default_ns => 'http://matrixdemo.example.com/_web_services/soap-server'
		  });

DESCRIPTION

Net::MySourceMatrix provides a Perl wrapper to the MySource Matrix(TM)/Squiz Matrix(TM) SOAP API. It is developed against versions 4.2.3/4.0.7 of Squiz Matrix but also works against version 3.28.9 of MySource Matrix. If a given function doesn't work it may be due to changes between Matrix versions.

METHODS

All methods return an array containing the contents of the tags of the SOAP response. For example, create_asset returns an asset containing the contents of the NewAssetID tags and the CreateMessage tags.

Construction and setup

new

my $MyM_Conn = Net::MySourceMatrix->new({
		proxy      => 'http://matrixdemo.example.com/_web_services/soap-server',
		username   => 'user',
		password   => 'pass',
		default_ns => 'http://matrixdemo.example.com/_web_services/soap-server'
	  });

Construct a new Net::MySourceMatrix object. Takes a required hash reference of config options. The options are:

proxy - The proxy is the server or endpoint to which the client is going to connect. This is from SOAP::Lite.

username - The username of the Matrix User able to connect to the SOAP API.

password - The password of the Matrix User able to connect to the SOAP API.

default_ns - Sets the default namespace for the request to the specified uri. This overrides any previous namespace declaration that may have been set using a previous call to ns() or default_ns(). Setting the default namespace causes elements to be serialized without a namespace prefix. This is from SOAP::Lite.

create_asset

CreateAsset

my @result = $MyM_Conn->create_asset((
		TypeCode		=> $type_code, 
		Name			=> $name, 
		ParentID		=> $parent_id,
		LinkType		=> $link_type,
		LinkValue		=> $link_value,
		SortOrder		=> $sort_order,
		IsDependant		=> $is_dependant,
		IsExclusive		=> $is_exclusive,
		FileName		=> $file_name,
		FileContentBase64	=> $filecontents)
	);

Creating a client

my $client = $cm->account_clients((
	'CompanyName'  => "ACME Limited",
	'ContactName'  => "John Doe",
	'EmailAddress' => "john\@example.com",
	'Country'      => "Australia",
	'TimeZone'     => "(GMT+10:00) Canberra, Melbourne, Sydney"
));

clone_asset

CloneAsset

get_all_statuses

GetAllStatuses

get_asset

GetAsset

get_asset_from_url

GetAssetFromURL

get_asset_type_attribute

GetAssetTypeAttribute

get_asset_type_descendants

GetAssetTypeDescendants

get_assets_info

GetAssetsInfo

get_attribute_values_by_name

GetAttributeValuesByName

get_asset_available_keywords

GetAssetAvailableKeywords

get_asset_available_statuses

GetAssetAvailableStatuses

get_asset_web_paths

GetAssetWebPaths

get_asset_urls

GetAssetURLs

get_page_contents

GetPageContents

set_attribute_value

SetAttributeValue

set_tag

SetTag

set_asset_status

SetAssetStatus

trash_asset

TrashAsset

login_user

LoginUser

get_user_id_by_username

GetUserIdByUsername

apply_design

ApplyDesign

remove_design

RemoveDesign

get_design_from_url

GetDesignFromURL

apply_asset_paint_layout

ApplyAssetPaintLayout

remove_asset_paint_layout

RemoveAssetPaintLayout

download

Download

upload

Upload

get_file_information

GetFileInformation

get_image_information

GetImageInformation

CreateAssetLink

DeleteAssetLink

GetAllChildLinks

get_children

GetChildren

get_dependant_children

GetDependantChildren

get_dependant_parents

GetDependantParents

GetLinks

GetLinkByAsset

GetLinkLineages

get_parents

GetParents

get_parents_under_tree

GetParentsUnderTree

MoveLink

UpdateLink

set_metadata_schema

SetMetadataSchema

get_metadata_fieldsof_schema

GetMetadataFieldsofSchema

get_metadata_field_values

GetMetadataFieldValues

regenerate_metadata_schema

RegenerateMetadataSchema

regenerate_metadata_asset

RegenerateMetadataAsset

get_metadata_value_by_i_ds

GetMetadataValueByIDs

set_asset_metadata

SetAssetMetadata

set_metadata_field_default_value

SetMetadataFieldDefaultValue

get_schemas_on_asset

GetSchemasOnAsset

has_access

HasAccess

get_permission

GetPermission

get_role

GetRole

set_permission

SetPermission

set_role

SetRole

BasicSearch

AdvancedSearch

re_index

ReIndex

start_workflow

StartWorkflow

safe_edit_asset

SafeEditAsset

cancel_workflow

CancelWorkflow

complete_workflow

CompleteWorkflow

set_workflow_schema

SetWorkflowSchema

approve_asset_in_workflow

ApproveAssetInWorkflow

BUGS

Bugs should be reported via the CPAN bug tracker at

https://rt.cpan.org/Public/Dist/Display.html?Name=Net-MySourceMatrix

ACKNOWLEDGEMENTS

Thanks once again to the inimitable Adam Kennedy, good friend and Perl genius, for his continuing assistance in my experiments in Perl.

AUTHOR

Jeffery Candiloro <jeffery@cpan.org>

COPYRIGHT

Copyright 2011 Jeffery Candiloro.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.

Squiz Matrix and MySource Matrix are registered trademarks of Squiz Pty Ltd or its subsidiaries in Australia and other countries.