<?php include '../bootstrap.php'; $instance = new interact(); // print out the XML of the requests and responses! $instance->debug = true; $instance->intitializeSoapClient($config_file['location']['wsdl'], $config_file['location']['endpoint']); if ($instance->login($config_file['auth_regular']['login'], $config_file['auth_regular']['pass'])) { $table_object = new InteractObject(); $table_object->setFolderName("Mason"); $table_object->setObjectName("temp_supp_table"); $fields = array('EMAIL_ADDRESS', 'AGE', 'CITY', 'DATE_MASON'); $record_data = array('*****@*****.**', 'somestring', 'SanBruno', '2014-08-25T02:00:00.000-08:00'); $record = new Record(); $record->setFieldValues($record_data); $merge_table_obj = new mergeTableRecordsWithPK(); $merge_table_obj->setInsertOnNoMatchParam(true); $merge_table_obj->setUpdateOnMatch(UpdateOnMatch::REPLACE); $merge_table_obj->setTableParam($table_object); $records[] = $record; $recordData = new RecordData(); $recordData->setFieldNames($fields); $recordData->setRecords($records); $merge_table_obj->setRecordDataParam($recordData); print_r($merge_table_obj); $response = $instance->execute($merge_table_obj); $instance->logout(); }
$rule->setMatchColumn1($match1); $match_op = new MatchOperator(); $match_op->matchOperator = $match_op::_NONE_; $rule->setMatchOperator($match_op); $reject_channel = new RejectChannel(); $reject_channel->rejectChannel = $reject_channel::EMAIL; $rule->setRejectChannel($reject_channel); $update = new UpdateOnMatch(); $update->updateOnMatch = $update::REPLACE; $rule->setUpdateOnMatch($update); $merge_obj->setMergeRuleParam($rule); $fieldNames = array("EMAIL_ADDRESS_", "CUSTOMER_ID_"); $record_1 = new Record(); $record_1->setFieldValues(array("*****@*****.**", "TEST_MDIXON")); $record_2 = new Record(); $record_2->setFieldValues(array("*****@*****.**", "TEST_MDIXON")); $records[] = $record_1; $records[] = $record_2; $merge_obj->setRecordDataParam($fieldNames, $records); $merge_result_ids = $instance->execute($merge_obj); /* * merge call end */ /* * trigger event call begin */ $custom_obj = new triggerCustomEvent(); $custom_event = new CustomEvent(); $custom_event->setEventName("DEV_SUPP_TEST"); $custom_obj->setCustomEventParam($custom_event); $identifier = new RecipientIdentifier();
$reject_channel->rejectChannel = $reject_channel::EMAIL; $update = new UpdateOnMatch(); $update->updateOnMatch = $update::REPLACE; $rule = new ListMergeRule(); $rule->setDefaultPermissionStatus($status); $rule->setInsertOnNoMatch(true); $rule->setMatchColumn1($match1); $rule->setMatchOperator($match_op); $rule->setRejectChannel($reject_channel); $rule->setUpdateOnMatch($update); $merge_obj->setMergeRuleParam($rule); $fieldNames = array("EMAIL_ADDRESS_", "EMAIL_PERMISSION_STATUS_", "CITY_"); $record_1 = new Record(); $record_1->setFieldValues(array("*****@*****.**", "I", "optin city")); $record_2 = new Record(); $record_2->setFieldValues(array("*****@*****.**", "O", "optout city")); $records[] = $record_1; $records[] = $record_2; $merge_obj->setRecordDataParam($fieldNames, $records); $merge_result_ids = $instance->execute($merge_obj); // Now we make a secondary merge call to opt out the newly inserted record.... // for brevity i will reuse some of the variables above /* $fieldNames2 = array( "EMAIL_ADDRESS_", "EMAIL_PERMISSION_STATUS_", "CITY_" ); $record_2 = new Record(); $record_2->setFieldValues( array( "*****@*****.**", "OPTOUT") ); $records2[] = $record_2; $merge_obj->setRecordDataParam( $fieldNames2, $records2 ); $merge_result_ids_2 = $instance->execute( $merge_obj );
$reject_channel->rejectChannel = $reject_channel::EMAIL; $rule->setRejectChannel($reject_channel); $update = new UpdateOnMatch(); $update->updateOnMatch = $update::REPLACE; $rule->setUpdateOnMatch($update); $merge_trigger_obj->setMergeRuleParam($rule); $interact_object = new InteractObject(); $interact_object->setFolderName("Mason"); $interact_object->setObjectName("masonCampaign1"); $merge_trigger_obj->setCampaignParam($interact_object); $fields = array('EMAIL_ADDRESS_', 'CITY_'); $values[] = array("*****@*****.**", "mike"); $values[] = array("*****@*****.**", "tony"); foreach ($values as $array) { $record = new Record(); $record->setFieldValues($array); $records[] = $record; } $transientDataArray[] = array("FIRSTNAME" => "Mason"); $transientDataArray[] = array("FIRSTNAME" => "Sam"); for ($tmp = 0; $tmp < count($transientDataArray); $tmp++) { $optionalDataArray = null; foreach ($transientDataArray[$tmp] as $name => $value) { $optionalData = new optionalData(); $optionalData->name = $name; $optionalData->value = $value; $optionalDataArray[] = $optionalData; } $triggerDataArray[] = $optionalDataArray; } $merge_trigger_obj->setRecordDataParam($fields, $values);