# Alarming in perspective via no tag or client tag or some other alertanive

**URL:** <https://forum.inductiveautomation.com/t/alarming-in-perspective-via-no-tag-or-client-tag-or-some-other-alertanive/75796>\
**Category:** Ignition\
**Tags:** ignition81, vision, perspective, scripting\
**Created:** [June 30, 2023, 7:36pm UTC](https://forum.inductiveautomation.com/t/alarming-in-perspective-via-no-tag-or-client-tag-or-some-other-alertanive/75796 "2023-06-30T19:36:59Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Cameron\_Nickle](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@Cameron\_Nickle](https://forum.inductiveautomation.com/u/Cameron_Nickle)\
**Post date:** [June 30, 2023, 7:36pm UTC](https://forum.inductiveautomation.com/t/alarming-in-perspective-via-no-tag-or-client-tag-or-some-other-alertanive/75796/1 "2023-06-30T19:36:59Z")

</div>

Hi all,

I'm working on triggering my alarm pipeline from my perspective session. I've designed everything to be done through the session properties so each user has their own values of interest. The problem I am now facing is I have no tags, so I want to know if there is a way to set-off an alarm pipeline without a tag. (From what I've been reading this seem unlikely but I thought I'd ask)

The more likely option is I will need a client tag to do this. I am wondering how I go about making a client tag in perspective because everything I've read seems to suggest they are vision preferable.

And if neither of these options are do-able, how would I go about setting off an alarm in my perspective session such that each user has their own instance of an alarm that wont interfere with each other?

Thank you,

Cam

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [June 30, 2023, 7:55pm UTC](https://forum.inductiveautomation.com/t/alarming-in-perspective-via-no-tag-or-client-tag-or-some-other-alertanive/75796/2 "2023-06-30T19:55:00Z")

</div>

> [@Cameron\_Nickle](#):
>
> they are vision preferable.

They are Vision-only. And they don't support alarms, anyways. They are the Vision-equivalent to Perspective session properties.

> [@Cameron\_Nickle](#):
>
> each user has their own instance of an alarm that wont interfere with each other?

None that I know of.

If what you are doing is entirely UI generated, why cannot your UI scripts just perform the task that the pipeline is doing?

---

<div class="post-metadata">

**Author:** ![Cameron\_Nickle](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@Cameron\_Nickle](https://forum.inductiveautomation.com/u/Cameron_Nickle)\
**Post date:** [June 30, 2023, 8:04pm UTC](https://forum.inductiveautomation.com/t/alarming-in-perspective-via-no-tag-or-client-tag-or-some-other-alertanive/75796/3 "2023-06-30T20:04:23Z")

</div>

Well that's a little on the sad side. Everything is UI generated but I'm uncertain how I would make a script to perform some of the things I want. The full scope of my problem is that I want it so that when this timer:  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/a/a/aa70e9c6a54f1fd82715204bd3b5174edff61a2f.png)  
hits 0 minuets left I want it to send out an alarm through some external SMTP server to notify certain people that the time is up.

How would I go about writing a script to do that?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [June 30, 2023, 8:22pm UTC](https://forum.inductiveautomation.com/t/alarming-in-perspective-via-no-tag-or-client-tag-or-some-other-alertanive/75796/4 "2023-06-30T20:22:49Z")

</div>

You'd just use [system.net.sendEmail()](https://docs.inductiveautomation.com/display/DOC81/system.net.sendEmail) to send the email directly.

However, what do you want to happen if the user closes their browser? The session will expire and the timer will cease evaluating. What if they reopen (browser or Windows crash, perhaps) and get a different session started?

It seems to me you need gateway scope scripting to maintain your timing, along with some association between users and timers that doesn't rely on the session state.

---

<div class="post-metadata">

**Author:** ![Cameron\_Nickle](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@Cameron\_Nickle](https://forum.inductiveautomation.com/u/Cameron_Nickle)\
**Post date:** [June 30, 2023, 8:38pm UTC](https://forum.inductiveautomation.com/t/alarming-in-perspective-via-no-tag-or-client-tag-or-some-other-alertanive/75796/5 "2023-06-30T20:38:20Z")

</div>

That could be helpful.

The timer itself is calculated by an expression binding between now() and an endTime project property that's bound to a row in a database. But yes if I'm going to be setting alarms off of the timer UI I will need same gateway scope scripts to maintain it. Or I could base the alarming off the database endTime value stored (Which is more likely that I would do the second option).
