fetching data from email body in server side script

Deepika54
Tera Contributor

Deepika54_0-1675164477691.png

Hello experts, I have a following email body. I want to fetch the 'Critical' value and store it in some variable in inbound action script . I also have the regex expression    Alert Level: (.*).

Can any1 tell me how to retrieve the value 'critical' and store it in a variable.

2 ACCEPTED SOLUTIONS

Pavankumar_1
Mega Patron

Hi @Deepika54 ,

you can get value like this

 

 

var alert=email.body.alert_level; //you can get value of alert value like this 

 

 

or try below it gives the Critical value

 

var bodyis=email.body_text; //gives you complete body of email
var alerttext=bodyis.split('Alert Level:')[1]; //This gives you text after Alert Level
var gettext=alerttext.split('HostName:')[0];//this gives the text before HostName

 

If it helps please click Accept as Solution/hit the Thumb Icon.
ServiceNow Community MVP 2024.
Thanks,
Pavankumar

View solution in original post

Hi @Deepika54 ,

yes that will work.

If it helps please click Accept as Solution/hit the Thumb Icon.
ServiceNow Community MVP 2024.
Thanks,
Pavankumar

View solution in original post

12 REPLIES 12

Pavankumar_1
Mega Patron

Hi @Deepika54 ,

you can get value like this

 

 

var alert=email.body.alert_level; //you can get value of alert value like this 

 

 

or try below it gives the Critical value

 

var bodyis=email.body_text; //gives you complete body of email
var alerttext=bodyis.split('Alert Level:')[1]; //This gives you text after Alert Level
var gettext=alerttext.split('HostName:')[0];//this gives the text before HostName

 

If it helps please click Accept as Solution/hit the Thumb Icon.
ServiceNow Community MVP 2024.
Thanks,
Pavankumar

are you sure. because in my emai record in the body field, it contains data in this format: Example

</div>
<p class="MsoNormal"><br>
<b>Alert Type: </b>THRESHOLD <br>
<b>Alert Level: </b>Critical<br>

dear @Pavankumar_1  thank you for your help but the script is not working as expected.

using this 

var alerttext=bodyis.split('Alert Level:')[1];

I am getting the entire string from critical to the last example : the output i am getting is this:

Critical
HostName: 
Device IP: 
Model: Acropolis Hypervisor
Parameter: Availability

 

i.e the entire string after critical. How to get only the value critical.

Hi @Deepika54 ,

That is correct I am trying to get the after Alert Level: and before HostName .

That is the required text you need right.

gettext variable will give the desired value.

If it helps please click Accept as Solution/hit the Thumb Icon.
ServiceNow Community MVP 2024.
Thanks,
Pavankumar