---
name: "Data::ICal::Entry::Alarm::URI"
section: "3pm"
platform: "linux"
package: "libdata-ical-perl"
version: "0.24+dfsg-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Data::ICal::Entry::Alarm::URI"
---

# Data::ICal::Entry::Alarm::URI(3pm)

Represents notification via a custom URI

## NAME

Data::ICal::Entry::Alarm::URI - Represents notification via a custom URI

## SYNOPSIS

```
    my $valarm = Data::ICal::Entry::Alarm::URI->new();
    $valarm->add_properties(
        uri => "sms:+15105550101?body=hello%20there",
        # Dat*e*::ICal is not a typo here
        trigger   => [ Date::ICal->new( epoch => ... )->ical, { value => 'DATE-TIME' } ],
    );
    $vevent->add_entry($valarm);
```

## DESCRIPTION

A Data::ICal::Entry::Alarm::URI object represents an alarm that notifies via arbitrary URI which is attached to a todo item or event in an iCalendar file.  (Note that the iCalendar RFC refers to entries as "components".)  It is a subclass of Data::ICal::Entry::Alarm and accepts all of its methods.

This element is not included in the official iCal RFC, but is rather an unaccepted draft standard; see \<https://tools.ietf.org/html/draft-daboo-valarm-extensions-04#section-6\> **Its interoperability and support is thus limited.** This is alarm type is primarily used by Apple.

## METHODS

### new

Creates a new Data::ICal::Entry::Alarm::Alarm object; sets its `"ACTION"` property to `"NONE"`.

### mandatory\_unique\_properties

In addition to `"action"` and `"trigger"` (see "mandatory\_unique\_properties" in Data::ICal::Entry::Alarm), uri alarms must also specify a value for `"uri"`.

## AUTHOR

Best Practical Solutions, LLC \<modules@bestpractical.com\>

## LICENCE AND COPYRIGHT

Copyright (c) 2005 - 2020, Best Practical Solutions, LLC.  All rights reserved.

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