RM Http GET/POST result

In RM is there a variable with the resulting webpage after issuing a HTTP GET or POST?

I want to issue a notification based on the returned html.

I asked the same question last month and recall the answer being no, to use a different app instead. Cannot recall which, but you might search the forum.

I would make a device driver to fetch the web data, then use that device in the RM rule.

The issue with a device driver would be that the accessible content would have to be under 1024 characters, but if you wanted to say search page http://xxxxxxx for phrase “yyyyyyyy yyyyy yyy” and set and indicator if found it would be fairly easy to do. Could even look at returning x bytes from an offset of the phrase with a little more effort.

Would either of those options help you @arnb?

Based on the responses It seems this is not possible with RM. I know how to do this with a device driver.

I was planning to read the HE ZigBee status page, then issue a notification when the ZigBee network was not online. However it's no longer necessary, thanks to @thebearmay for adding attribute zigbeeStatus to the Hub Information Driver.

2 Likes

I see you got something else figured out, but for the sake of answering the original question, this is indeed possible with Rule Machine:

How easy it may be to parse/use that data when it's a full HTML page is another story, but the functionality is there. :slight_smile: As pictured, the trick is that this is under "Set variable" and not with the other HTTP actions.

3 Likes

Thank you I never would have figured that one out.

Just wondering what happens if the HTML page is greater than 1024 bytes?

1 Like

That matters for Dashboard attributes, alluded to above, but I'm not aware of any hard limit on the length of a string variable.

1 Like

Created a simple RM to test this, but no joy using "Run Actions". No errors for this RM in log.
Any help appreciated.

Two issues

  1. String variable is empty after setting from HTML Get. Initially value: "Initial Set"
  2. Unable to adjust the variable's data after HTML Get

image
image

There might be some length limit I don't know about. That's my first guess since the entire HTML page (which I can only assume the GET should return) is probably a bit on the long side compared to typical variable values.

Tagging @bravenel

I'm sure there is a limit. Don't know off the top of my head what it is, but will find out. This clearly lies outside the intended design envelope.

String Hub Variables are limited to 256 characters.

Thank you for checking and providing the string variable 256 byte limit, making this idea a Groovy only device or app.

A log warning message stating a RM string variable exceeded the 256 byte limit could help the next person bumping into this.