Skip to content

frequently asked questions

DaveL17 edited this page Jun 5, 2023 · 12 revisions

My Device Seems to be Stuck on 'Processing'. What gives?

There are at least two conditions that can lead this to occur:

  1. If a data source takes longer to parse than the refresh cycle time set in the device's preferences, it may never actually finish a refresh before being called to start the next one. The plugin attempts to control for this, but the best action to take is to increase the refresh time to give the device a chance to finish its job.
  2. The data source is so incredibly large that the time it takes to iterate over its contents can seem interminably long. The refresh should eventually finish, but that's probably an indication that the GhostXML plugin is not the right tool for the job.

In either case, any other GhostXML devices should not be affected.

My Device says that there is a 'parse error'. What gives?

If your data source is reporting a parse error, it could be a number of things. The single most common error is due to the device being set for the wrong type of data. The first thing to check is to ensure that you haven't requested JSON data with the device set for XML (or vice versa).

There is also a possibility that the data feed is improperly formatted. You can test this in a number of ways, but one way is to try to open the feed directly in a web browser. This test will not detect all possible errors. For example, an XML file might contain a special character called a BOM (Byte Order Mark). Technically, these should not be present in a modern-day XML feed and the plugin does not account for them.

While the plugin should be able to handle most XML and JSON data you throw at it, we can't guarantee that it will work with every source in the world. There may be a way to modify the plugin to handle it, so please report any parse errors to the forums.

It is also a possibility that there is a bug in the plugin.

My Device's Authentication Doesn't Appear to be Working. What gives?

If your feed's data source requires authentication, it might be one of the following types:

Basic Authentication

Basic authentication using the plugin is achieved by adding your username and password as a part of the feed's URL. This is done using the following convention: https//username:password@www.resource.com/foo.xml Note that digest authentication is the preferred method since basic authentication sends your username and password as clear text (unencrypted text) which may be viewed by anyone.

Bearer Authentication

Bearer authentication using the plugin is achieved by providing a known authentication token in the device configuration. You must obtain this token from the data provider. This is not to be confused with Token Authentication (see below).

Digest Authentication

The GhostXML plugin supports digest authentication within the device configuration. Enable digest authentication by checking the appropriate box and entering your username and password. If digest authentication doesn't work for you, you should try basic authentication (described below). Digest authentication is the preferred authentication method because it sends your username and password as encrypted text.

Token Authentication

Token authentication using the plugin is achieved by requesting an authentication token from the data provider as a part of the data communication. You will need a token url and password. This type of authentication requests a new token with each request for data.

I See the Plugin Supports Both XML and JSON. So why is it Called GhostXML?

That's a good question. When the plugin was originally introduced, it only supported XML. After it was released, someone suggested adding JSON to the plugin's repertoire. It was thought that renaming the plugin would cause unnecessary confusion.