Interface Inx_Api_Sending_SendingHistoryManager

Description

The Inx_Api_Sending_SendingHistoryManager enables read-only access to data regarding the sendings of mailings.

The Inx_Api_Sending_SendingHistoryManager enables read-only access to data regarding the sendings of mailings. This data can be accessed through the Inx_Api_Sending_Sending business object, which represents a sending of a mailing to a set of recipients. Each sending may contain many individual sendings, corresponding to the sending of the mailing to one specific recipient. This individual sending data can be accessed through a Inx_Api_Sending_IndividualSendingRowSet. A regular mailing is usually only sent once. A trigger mailing on the other hand, may be sent many times. <p/> Query criteria <p/> The following criteria can be used to retrieve sendings:

  • The ID of the sending:
    • get($iSendingId)
  • The ID of the sent mailing:
    • findSendingsByMailing($iMailingId)
    • findPastSendingsByMailing($iMailingId, $sStart, $sEnd)
    • findLastSendingForMailing($iMailingId)
  • The ID of the recipient being mailed:
    • findSendingsByRecipient($iRecipientId)
    • findPastSendingsByRecipient($iRecipientId, $sStart, $sEnd)
    • findLastSendingForRecipient($iRecipientId)
  • The date of the sending:
    • findSendingsByDate($sStart, $sEnd)
  • The date of the last modification of the sending:
    • findModifiedSendings($sSince)
    • findLastSending()
The following snippet demonstrates how to retrieve all Sendings for a mailing which were processed during the last 30 days:
 $sStart = date('c', strtotime('-30 days'));
 $oSendingHistoryManager = $oSession->getSendingHistoryManager();
 $oSendings = $oSendingHistoryManager->findPastSendingsByMailing( $iMailingId, $sStart, null );
<p/> Determining future sending dates <p/> It is not possible to retrieve sendings which will be triggered in the future. It is possible though, to retrieve the expected sending dates. Be aware that it is not guaranteed that a sending will be performed at these dates. If at the time at which the sending process is triggered no recipients match the criteria or there are no recipients at all, there will be no actual sending. Also note, that theses dates do not specify the actual point in time at which the first mail is being sent. The mailing has to be prepared for each recipient before the first mail is sent.
The following methods return the expected future sending dates:
  • findNextSending($iMailingId)
  • findFutureSendingsByMailing($iMailingId, $sStart, $sEnd)
  • findFutureSendingsByDate($sStart, $sEnd)
The following snippet show how to find the expected sendings of a mailing for the next 30 days:
 $sEnd = date('c', strtotime('+30 days'));
 $oSendingHistoryManager = $oSession->getSendingHistoryManager();
 $aDates = $oSendingHistoryManager->findFutureSendingsByMailing( $iMailingId, null, $sEnd );
<p/> Accessing recipient reactions <p/> In addition, there is a shortcut for determining whether a recipient opened or clicked a link in the mailing and whether the sending bounced. This is the equivalent to recipient reactions in the Inxmail Professional client. The following methods can be used to retrieve this information:
  • hasOpened($iRecipientId, $iMailingId)
  • hasClicked($iRecipientId, $iMailingId)
  • hasBounced($iRecipientId, $iMailingId)
  • hasOpenedBetween($iRecipientId, $iMailingId, $sStart, $sEnd)
  • hasClickedBetween($iRecipientId, $iMailingId, $sStart, $sEnd)
  • hasBouncedBetween($iRecipientId, $iMailingId, $sStart, $sEnd)
The methods without date parameters only consider the last sending of the specified mailing, whereas the methods with date parameters consider all sendings of the specified mailing which were processed during the given time period. Both date parameters are optional. Omitting both parameters will take every sending of the mailing into consideration. <p/> The following example demonstrates how to determine whether a recipient has opened a mail of the last sending and any sending of a given mailing:
 $oSendingHistoryManager = $oSession->getSendingHistoryManager();
 $blOpenedLastSending = $oSendingHistoryManager->hasOpened( $iRecipientId, $iMailingId );
 $blOpenedAnySending = $oSendingHistoryManager->hasOpenedBetween( $iRecipientId, $iMailingId, null, null );
<p/> Note: All of the methods of this manager require the user right Inx_Api_UserRights::MAILING_FEATURE_USE. All methods except for those which return date values require the user rights Inx_Api_UserRights::RECIPIENT_VIEW and Inx_Api_UserRights::RECIPIENT_USE_SYSTEM. In addition, the methods which return recipient reactions (i.e. hasOpened($iRecipientId, $iMailingId)) require the activation of the 'Condition on recipient reaction' administration list property. <p/> For more information on Sendings, see the Inx_Api_Sending_Sending documentation.

Located in /Api/Sending/SendingHistoryManager.php (line 120)

Inx_Api_ROBOManager
   |
   --Inx_Api_Sending_SendingHistoryManager
Method Summary
array findFutureSendingsByDate (string $sStart, string $sEnd)
array findFutureSendingsByMailing (int $iMailingId, string $sStart, string $sEnd)
string findNextSending (int $iMailingId)
Inx_Api_ROBOResultSet findPastSendingsByMailing (int $iMailingId, [string $sStart = null], [string $sEnd = null])
Inx_Api_ROBOResultSet findPastSendingsByRecipient (int $iRecipientId, [string $sStart = null], [string $sEnd = null])
Inx_Api_ROBOResultSet findSendingsByDate ([string $sStart = null], [string $sEnd = null])
bool hasBounced (int $iRecipientId, int $iMailingId)
bool hasBouncedBetween (int $iRecipientId, int $iMailingId, string $sStart, string $sEnd)
bool hasClicked (int $iRecipientId, int $iMailingId)
bool hasClickedBetween (int $iRecipientId, int $iMailingId, string $sStart, string $sEnd)
bool hasOpened (int $iRecipientId, int $iMailingId)
bool hasOpenedBetween (int $iRecipientId, int $iMailingId, string $sStart, string $sEnd)
Methods
findFutureSendingsByDate (line 198)

Returns a list of the next expected sendings performed by the Inxmail Professional server. must be specified because otherwise there might be an infinite amount of sending dates. omitting the end date will trigger an Inx_Api_NullPointerException. in which case it will be set to the current date.

Returns a list of the next expected sendings performed by the Inxmail Professional server. The end date must be specified because otherwise there might be an infinite amount of sending dates. Therefore, omitting the end date will trigger an Inx_Api_NullPointerException. The start date may be omitted, in which case it will be set to the current date. <p/> Be aware that it is not guaranteed that a sending will be performed at these dates. If at the time at which the sending process is triggered no recipients match the criteria or there are no recipients at all, there will be no actual sending. Also note, that theses dates do not specify the actual point in time at which the first mail is being sent. The mailing has to be prepared for each recipient before the first mail is sent.

  • return: A list of the next expected sendings performed by the Inxmail Professional server.
  • throws: Inx_Api_NullPointerException if the end date is not specified.
  • access: public
array findFutureSendingsByDate (string $sStart, string $sEnd)
  • string $sStart: the start date, inclusively. The date has to be specified as ISO-8601 formatted datetime string. May be null, in which case it will be set to the current date.
  • string $sEnd: the end date, inclusively. The date has to be specified as ISO-8601 formatted datetime string. May not be null.
findFutureSendingsByMailing (line 218)

Returns a list of the next expected sendings of the given mailing. otherwise there might be an infinite amount of sending dates. Inx_Api_NullPointerException.

Returns a list of the next expected sendings of the given mailing. The end date must be specified because otherwise there might be an infinite amount of sending dates. Therefore, omitting the end date will trigger an Inx_Api_NullPointerException. The start date may be omitted, in which case it will be set to the current date. <p/> Be aware that it is not guaranteed that a sending will be performed at these dates. If at the time at which the sending process is triggered no recipients match the criteria or there are no recipients at all, there will be no actual sending. Also note, that theses dates do not specify the actual point in time at which the first mail is being sent. The mailing has to be prepared for each recipient before the first mail is sent.

  • return: A list of the next expected sendings performed by the Inxmail Professional server.
  • throws: Inx_Api_NullPointerException if the end date is not specified.
  • access: public
array findFutureSendingsByMailing (int $iMailingId, string $sStart, string $sEnd)
  • int $iMailingId: the ID of the mailing whose expected sending dates shall be retrieved.
  • string $sStart: the start date, inclusively. The date has to be specified as ISO-8601 formatted datetime string. May be null, in which case it will be set to the current date.
  • string $sEnd: the end date, inclusively. The date has to be specified as ISO-8601 formatted datetime string. May not be null.
findLastSending (line 281)

Returns the Inx_Api_Sending_Sending object for the last sending, if any.

Returns the Inx_Api_Sending_Sending object for the last sending, if any.

  • return: The Sending object for the last sending, if any, null otherwise.
  • access: public
Inx_Api_Sending_Sending findLastSending ()
findLastSendingForMailing (line 265)

Returns the Inx_Api_Sending_Sending object for the last sending of the specified mailing, if any.

Returns the Inx_Api_Sending_Sending object for the last sending of the specified mailing, if any.

  • return: The Sending object for the last sending of the specified mailing, if any, null otherwise.
  • access: public
Inx_Api_Sending_Sending findLastSendingForMailing (int $iMailingId)
  • int $iMailingId: the ID of the mailing whose last sending shall be retrieved.
findLastSendingForRecipient (line 274)

Returns the Inx_Api_Sending_Sending object for the last sending to the specified recipient, if any.

Returns the Inx_Api_Sending_Sending object for the last sending to the specified recipient, if any.

  • return: The Sending object for the last sending to the specified recipient, if any, null otherwise.
  • access: public
Inx_Api_Sending_Sending findLastSendingForRecipient (int $iRecipientId)
  • int $iRecipientId: the ID of the recipient whose last sending shall be retrieved.
findModifiedSendings (line 243)

Returns an Inx_Api_ROBOResultSet containing all sendings which have been modified since the specified date.

Returns an Inx_Api_ROBOResultSet containing all sendings which have been modified since the specified date. The following events are considered as modifications:

  • The sending has been triggered (created)
  • The sending has been started
  • The sending has been ended
  • A mail of the sending has been sent to a recipient
  • A recipient of the sending opened the mail
  • A recipient of the sending clicked a link of the mail
  • A recipient of the sending caused a bounce
  • The mailing has been deleted
  • The sending protocol (individual sendings) has been deleted
This list is not concluding. The reference date must be specified. Omitting the reference date will trigger an Inx_Api_NullPointerException.

  • return: A ROBOResultSet containing all sendings which have been modified since the specified date.
  • throws: Inx_Api_NullPointerException if the reference date is not specified.
  • access: public
Inx_Api_ROBOResultSet findModifiedSendings (string $sSince)
  • string $sSince: the reference date, inclusively. The date has to be specified as ISO-8601 formatted datetime string. May not be null
findNextSending (line 256)

Returns the next expected send date of the specified mailing.

Returns the next expected send date of the specified mailing. <p/> Be aware that it is not guaranteed that a sending will be performed at these dates. If at the time at which the sending process is triggered no recipients match the criteria or there are no recipients at all, there will be no actual sending. Also note, that theses dates do not specify the actual point in time at which the first mail is being sent. The mailing has to be prepared for each recipient before the first mail is sent.

  • return: The next expected send Date of the specified mailing as ISO-8601 formatted datetime string.
  • access: public
string findNextSending (int $iMailingId)
  • int $iMailingId: the ID of the mailing for which the next send date shall be retrieved.
findPastSendingsByMailing (line 164)

Returns an Inx_Api_ROBOResultSet containing all sendings of the specified mailing which were performed during the specified time span.

Returns an Inx_Api_ROBOResultSet containing all sendings of the specified mailing which were performed during the specified time span.

  • return: A ROBOResultSet containing all sendings of the specified mailing which were performed during the specified time span.
  • access: public
Inx_Api_ROBOResultSet findPastSendingsByMailing (int $iMailingId, [string $sStart = null], [string $sEnd = null])
  • int $iMailingId: the ID of the mailing whose sendings shall be retrieved.
  • string $sStart: the start date of the sending must be greater or equal to this date to be included in the result set. The date has to be specified as ISO-8601 formatted datetime string. May be null.
  • string $sEnd: the end date of the sending must be less or equal to this date to be included in the result set. The date has to be specified as ISO-8601 formatted datetime string. May be null.
findPastSendingsByRecipient (line 178)

Returns an Inx_Api_ROBOResultSet containing all sendings to the specified recipient which were performed during the specified time span.

Returns an Inx_Api_ROBOResultSet containing all sendings to the specified recipient which were performed during the specified time span.

  • return: A ROBOResultSet containing all sendings to the specified recipient which were performed during the specified time span.
  • access: public
Inx_Api_ROBOResultSet findPastSendingsByRecipient (int $iRecipientId, [string $sStart = null], [string $sEnd = null])
  • int $iRecipientId: the ID of the recipient whose sendings shall be retrieved.
  • string $sStart: the start date of the sending must be greater or equal to this date to be included in the result set. The date has to be specified as ISO-8601 formatted datetime string. May be null.
  • string $sEnd: the end date of the sending must be less or equal to this date to be included in the result set. The date has to be specified as ISO-8601 formatted datetime string. May be null.
findSendingsByDate (line 150)

Returns an Inx_Api_ROBOResultSet containing all sendings which were performed during the specified time span.

Returns an Inx_Api_ROBOResultSet containing all sendings which were performed during the specified time span.

  • return: A ROBOResultSet containing all sendings which were performed during the specified time span.
  • access: public
Inx_Api_ROBOResultSet findSendingsByDate ([string $sStart = null], [string $sEnd = null])
  • string $sStart: the start date of the sending must be greater or equal to this date to be included in the result set. The date has to be specified as ISO-8601 formatted datetime string. May be null.
  • string $sEnd: the end date of the sending must be less or equal to this date to be included in the result set. The date has to be specified as ISO-8601 formatted datetime string. May be null.
findSendingsByMailing (line 129)

Returns an Inx_Api_ROBOResultSet containing all sendings of the specified mailing.

Returns an Inx_Api_ROBOResultSet containing all sendings of the specified mailing.

  • return: A ROBOResultSet containing all sendings of the specified mailing.
  • access: public
Inx_Api_ROBOResultSet findSendingsByMailing (int $iMailingId)
  • int $iMailingId: the ID of the mailing whose sendings shall be retrieved.
findSendingsByRecipient (line 137)

Returns an Inx_Api_ROBOResultSet containing all sendings to the specified recipient.

Returns an Inx_Api_ROBOResultSet containing all sendings to the specified recipient.

  • return: A ROBOResultSet containing all sendings to the specified recipient.
  • access: public
Inx_Api_ROBOResultSet findSendingsByRecipient (int $iRecipientId)
  • int $iRecipientId: the ID of the recipient whose sendings shall be retrieved.
hasBounced (line 314)

Returns a bool indicating whether the specified recipient caused a bounce during the last sending of the specified mailing.

Returns a bool indicating whether the specified recipient caused a bounce during the last sending of the specified mailing.

  • return: true if the specified recipient caused a bounce during the last sending of the specified mailing, false otherwise.
  • access: public
bool hasBounced (int $iRecipientId, int $iMailingId)
  • int $iRecipientId: the ID of the recipient.
  • int $iMailingId: the ID of the mailing.
hasBouncedBetween (line 371)

Returns a bool indicating whether the specified recipient caused a bounce during any sending of the specified mailing which were performed during the given time span. sending of the specified mailing will be taken into consideration.

Returns a bool indicating whether the specified recipient caused a bounce during any sending of the specified mailing which were performed during the given time span. If both date parameters are omitted, each sending of the specified mailing will be taken into consideration. <p/> Important note: The date parameters do not refer to the date of the bounce. They refer to the sending of the mailing.

  • return: true if the specified recipient caused a bounce during any sending of the specified mailing which were performed during the given time span, false otherwise.
  • access: public
bool hasBouncedBetween (int $iRecipientId, int $iMailingId, string $sStart, string $sEnd)
  • int $iRecipientId: the ID of the recipient.
  • int $iMailingId: the ID of the mailing.
  • string $sStart: the start date of the sending must be greater or equal to this date to be considered. The date has to be specified as ISO-8601 formatted datetime string. May be null.
  • string $sEnd: the start date of the sending must be less than this date to be considered. The date has to be specified as ISO-8601 formatted datetime string. May be null.
hasClicked (line 303)

Returns a bool indicating whether the specified recipient has clicked a link of a mail of the last sending of the specified mailing.

Returns a bool indicating whether the specified recipient has clicked a link of a mail of the last sending of the specified mailing.

  • return: true if the specified recipient has clicked a link of a mail of the last sending of the specified mailing, false otherwise.
  • access: public
bool hasClicked (int $iRecipientId, int $iMailingId)
  • int $iRecipientId: the ID of the recipient.
  • int $iMailingId: the ID of the mailing.
hasClickedBetween (line 352)

Returns a bool indicating whether the specified recipient has clicked a link of a mail of any sending of the specified mailing which were performed during the given time span. omitted, each sending of the specified mailing will be taken into consideration.

Returns a bool indicating whether the specified recipient has clicked a link of a mail of any sending of the specified mailing which were performed during the given time span. If both date parameters are omitted, each sending of the specified mailing will be taken into consideration. <p/> Important note: The date parameters do not refer to the date of the click. They refer to the sending of the mailing.

  • return: true if the specified recipient has clicked a link of a mail of any sending of the specified mailing which were performed during the given time span, false otherwise.
  • access: public
bool hasClickedBetween (int $iRecipientId, int $iMailingId, string $sStart, string $sEnd)
  • int $iRecipientId: the ID of the recipient.
  • int $iMailingId: the ID of the mailing.
  • string $sStart: the start date of the sending must be greater or equal to this date to be considered. The date has to be specified as ISO-8601 formatted datetime string. May be null.
  • string $sEnd: the start date of the sending must be less than this date to be considered. The date has to be specified as ISO-8601 formatted datetime string. May be null.
hasOpened (line 292)

Returns a bool indicating whether the specified recipient has opened a mail of the last sending of the specified mailing.

Returns a bool indicating whether the specified recipient has opened a mail of the last sending of the specified mailing.

  • return: true if the specified recipient has opened a mail of the last sending of the specified mailing, false otherwise.
  • access: public
bool hasOpened (int $iRecipientId, int $iMailingId)
  • int $iRecipientId: the ID of the recipient.
  • int $iMailingId: the ID of the mailing.
hasOpenedBetween (line 333)

Returns a bool indicating whether the specified recipient has opened a mail of any sending of the specified mailing which were performed during the given time span. sending of the specified mailing will be taken into consideration.

Returns a bool indicating whether the specified recipient has opened a mail of any sending of the specified mailing which were performed during the given time span. If both date parameters are omitted, each sending of the specified mailing will be taken into consideration. <p/> Important note: The date parameters do not refer to the date of the opening of the mail. They refer to the sending of the mailing.

  • return: true if the specified recipient has opened a mail of any sending of the specified mailing which were performed during the given time span, false otherwise.
  • access: public
bool hasOpenedBetween (int $iRecipientId, int $iMailingId, string $sStart, string $sEnd)
  • int $iRecipientId: the ID of the recipient.
  • int $iMailingId: the ID of the mailing.
  • string $sStart: the start date of the sending must be greater or equal to this date to be considered. The date has to be specified as ISO-8601 formatted datetime string. May be null.
  • string $sEnd: the start date of the sending must be less than this date to be considered. The date has to be specified as ISO-8601 formatted datetime string. May be null.

Inherited Methods

Inherited From Inx_Api_ROBOManager

Inx_Api_ROBOManager::get()
Inx_Api_ROBOManager::selectAll()

Documentation generated on Thu, 17 Sep 2015 14:27:30 +0200 by phpDocumentor 1.3.2