The Inx_Api_TriggerMailing_Descriptor_IntervalTriggerDescriptorBuilder is used to easily create interval triggers.
The Inx_Api_TriggerMailing_Descriptor_IntervalTriggerDescriptorBuilder is used to easily create interval triggers. The following settings are mandatory:
Using only these settings the easiest possible interval trigger descriptor can be built using the following statements:
$intFactory = $session->getTriggerMailingManager()->getTriggerIntervalBuilderFactory(); $intBuilder = $intFactory->getDailyIntervalBuilder(); $intBuilder->intervalCount( 1 ); $interval = $intBuilder->build(); $sendingTime = date('c', mktime(12, 30)); $factory = $session->getTriggerMailingManager()->getTriggerDescriptorBuilderFactory(); $builder = $factory->createIntervalTriggerDescriptorBuilder(); $builder->startDate( date('c') ); $builder->sendingTime( $sendingTime ); $builder->interval( $interval ); $descriptor = $builder->build();
There are also some optional settings which can be set:
Using all of these settings, the trigger descriptor could be built with the following statements:
$intFactory = $session->getTriggerMailingManager()->getTriggerIntervalBuilderFactory(); $interval = $intFactory->getWeeklyIntervalBuilder()->intervalCount( 2 )->dispatchIntervals( array(Inx_Api_TriggerMailing_Descriptor_TimeTriggerDispatchInterval::MONDAY(), Inx_Api_TriggerMailing_Descriptor_TimeTriggerDispatchInterval::FRIDAY() ) )->build(); $rmd = $session->createRecipientContext()->getMetaData(); $counterId = $rmd->getUserAttribute( "Counter" )->getId(); $endDate = date('c', strtotime('+1 year')); $sendingTime = date('c', mktime(12, 30)); $cmdFactory = $session->getActionManager()->getCommandFactory(); $cmd = $cmdFactory->createSetRelativeValueCmd( $counterId, "1" ); $commands = array( $cmd ); $factory = $session->getTriggerMailingManager()->getTriggerDescriptorBuilderFactory(); $descriptor = $factory->createIntervalTriggerDescriptorBuilder()->startDate( date('c') ) ->sendingTime( $sendingTime )->endDate( $endDate )->interval( $interval ) ->attributeValueSetters( $commands )->build();The created trigger will fire every two weeks on Monday and Friday at 12:30 and will increase the Counter attribute. The trigger will be active from now on till the next year.
Located in /Api/TriggerMailing/Descriptor/IntervalTriggerDescriptorBuilder.php (line 73)
Inx_Api_TriggerMailing_Descriptor_TriggerDescriptorBuilder | --Inx_Api_TriggerMailing_Descriptor_TimeTriggerDescriptorBuilder | --Inx_Api_TriggerMailing_Descriptor_IntervalTriggerDescriptorBuilder
Sets the Inx_Api_TriggerMailing_Descriptor_TriggerInterval used to define the dispatch intervals of an interval trigger mailing.
Sets the Inx_Api_TriggerMailing_Descriptor_TriggerInterval used to define the dispatch intervals of an interval trigger mailing. This setting is mandatory.
Inherited From Inx_Api_TriggerMailing_Descriptor_TimeTriggerDescriptorBuilder
Inx_Api_TriggerMailing_Descriptor_TimeTriggerDescriptorBuilder::attributeValueSetters()
Inx_Api_TriggerMailing_Descriptor_TimeTriggerDescriptorBuilder::endDate()
Inx_Api_TriggerMailing_Descriptor_TimeTriggerDescriptorBuilder::sendingTime()
Inx_Api_TriggerMailing_Descriptor_TimeTriggerDescriptorBuilder::startDate()
Inherited From Inx_Api_TriggerMailing_Descriptor_TriggerDescriptorBuilder
Inx_Api_TriggerMailing_Descriptor_TriggerDescriptorBuilder::build()
Inx_Api_TriggerMailing_Descriptor_TriggerDescriptorBuilder::validate()
Documentation generated on Thu, 17 Sep 2015 14:27:26 +0200 by phpDocumentor 1.3.2