UAScheduleInfo

@interface UAScheduleInfo : NSObject

Defines the scheduled action.

Note

This object is built using UAScheduleInfoBuilder.
  • The schedule’s priority. Schedules are executed by priority in ascending order.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSInteger priority;

    Swift

    var priority: Int { get }
  • Array of triggers. Triggers define conditions on when to execute the schedule.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSArray<UAScheduleTrigger *> *_Nonnull triggers;

    Swift

    var triggers: [UAScheduleTrigger] { get }
  • The max number of times the schedule may be executed.

    For in-app messages, if the audience condition checks fail, and the miss behavior is skip, the triggered schedule will not count towards the limit.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSUInteger limit;

    Swift

    var limit: UInt { get }
  • The schedule’s start time.

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSDate *start;

    Swift

    var start: Date? { get }
  • end

    The schedule’s end time. After the end time the schedule will be finished.

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSDate *end;

    Swift

    var end: Date? { get }
  • The schedule’s delay.

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) UAScheduleDelay *delay;

    Swift

    var delay: UAScheduleDelay? { get }
  • The schedule’s edit grace period.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSTimeInterval editGracePeriod;

    Swift

    var editGracePeriod: TimeInterval { get }
  • The schedule’s interval.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSTimeInterval interval;

    Swift

    var interval: TimeInterval { get }
  • Checks if the schedule info is valid. A valid schedule contains between 1 to 10 triggers, if a delay is defined it must be valid, and the end time must be after the start time. Invalid schedules will not be scheduled.

    Declaration

    Objective-C

    @property (readonly, nonatomic) BOOL isValid;

    Swift

    var isValid: Bool { get }
  • Checks if the schedule info is equal to another schedule info

    Declaration

    Objective-C

    - (BOOL)isEqualToScheduleInfo:(nullable UAScheduleInfo *)scheduleInfo;

    Swift

    func isEqual(to scheduleInfo: UAScheduleInfo?) -> Bool

    Parameters

    scheduleInfo

    The other schedule info to compare against.

    Return Value

    YES if the schedule infos are equal, otherwise NO.