The Receive RSS Input Connector can be used to retrieve data from a Really Simple Syndication (RSS), a GeoRSS-Simple, or a GeoRSS GML feed. No official standard for RSS exists, but you can read more about typical implementations from w3schools.com, georss.org and ROME, the open source framework ArcGIS GeoEvent Server uses to parse RSS / Atom feeds.
Usage notes
- Use this connector to establish an HTTP client connection to an RSS / Atom feed’s REST endpoint and periodically poll to retrieve data.
- This input connector pairs the RSS Inbound Adapter and the HTTP Inbound Transport.
- An RSS / Atom feed’s content is generally organized as a collection of items grouped beneath a channel as illustrated above.
- Responses from the RSS / Atom feed are parsed to extract data from individual item records; each item is processed as a separate event record.
- The HTTP Method the connector uses to poll for data depends on the type of requests supported by the RSS / Atom feed.
- An HTTP/GET is typically used to request data; a client connection is established each time the connector requests data from the feed.
- Query parameters can be specified using the Parameters property to help specify data of interest.
- Specifying query parameters as part of an HTTP/GET request can improve performance by narrowing the number of items returned.
- The name and value(s) of any specified query parameter depend on what requests are supported by the external RSS / Atom feed’s API.
- The Receive New Data Only property is used to request that a feed return only previously unobserved or newly updated data. This capability depends on the RSS / Atom feed correctly incorporating Last-Modified into the header of its response to an HTTP request. If the response header does not indicate a date/time the content was last updated, GeoEvent Server will assume that data in the response represents new or recently updated data. You can read more about the use of Last-Modified in response headers in the RFC 7232 HTTP specification.
- The adapter creates and maintains a GeoEvent Definition whose structure is updated to reflect the RSS / Atom feed’s content. The name of the GeoEvent Definition is adapted from the title in the feed’s content. GeoEvent Server administrators must not configure multiple Receive RSS inputs whose content is different, but whose title is essentially the same. Every time an input polls for data and receives a response it will likely discover the GeoEvent Definition it had thought it was using has been changed, by the other configured input, and will create a new GeoEvent Definition to accommodate its data polls. This contention between Receive RSS inputs with similar titles is a known limitation.
Parameters
Parameter | Description |
---|---|
Name | A descriptive name for the input connector used for reference in GeoEvent Manager. |
URL | The base URL of the RSS feed you want to poll for data. Some examples include: |
Frequency (in seconds) | The interval (in seconds) an RSS data feed will be polled for data. The default is 10 (one poll request will be made every 10 seconds). |
HTTP Method | The HTTP request method to use when GeoEvent Server polls the external server providing the data feed. The default is to use an HTTP/GET request.
|
Parameters | Specifies a query parameter (or multiple query parameters) to append to the base URL. Query parameters are specific to each RSS feed and are not supported by all feeds. When supported by an RSS feed, query parameters help specify data of interest. Query parameters are normally incorporated into an RSS feed’s URL. This property has no default value. |
Acceptable MIME Types (Client Mode) (Conditional) | Specifies the MIME types this connector will accept when receiving a response to its query to a data feed. The external web service’s response specifies the actual MIME type(s) for any data sent to GeoEvent Server. This connector understands the following MIME types, which are the default for this parameter: text/xml,application/rss+xml,application/atom+xml,application/xml,text/plain For more information on official MIME types, see Internet Assigned Numbers Authority (IANA). For more information on the MIME types not used by ArcGIS Server, see MIME types not used by ArcGIS Server. This parameter is shown when the HTTP Method is set to Get and is hidden when set to either Post or Put. |
Receive New Data Only | Specifies whether the adapter will look for a Last-Modified value in the data feed response’s header and will attempt to use this value to avoid processing data already been received and not updated. The parameter’s name can be misleading. The transport will always receive whatever data a feed includes in its response to the connector’s query. When Receive New Data Only is specified, however, the transport will cache the date/time of its last request and will only relay data it receives to the adapter if the response from the data feed includes a Last-Modified value which is greater-than the transport’s cached value. Specifying a Last-Modified value is optional. In practice, not many data feeds include it in their responses. The default for this parameter is Yes, but if a Last-Modified value is not found, the parameter is basically ignored as the date/time needed to determine whether data in the response is new or updated is not available.
For more information about the use of Last-Modified in response headers, see the RFC 7232 HTTP specification. |
Use URL Proxy | Specifies whether GeoEvent Server will use a URL proxy when making its HTTP requests. The default is No.
|
URL Proxy (Conditional) | The URL proxy to use when making an HTTP request. This parameter has no default value. Parameter is shown when the Use URL Proxy is set to Yes and is hidden when set to No. |
HTTP Timeout (in seconds) | Specifies the maximum time (in seconds) that the input connector will wait for a response from the server hosting the RSS feed. The value must be an integer between 1 and 2147483. The default value is 30 (the HTTP request will timeout after 30 seconds if no response is received). |