In order to serve an HTML page, JPEG image, JavaScript solution, or other web content from the Fusion Reactor plugin, you first load that content into the plugin’s memory using the ReactorFeed() function:
ReactorFeed( Name, Content )
This function achieves two important things:
The Content parameter specifies the content that you are loading. This will normally be a FileMaker field reference: typical examples would be a page of HTML text sourced from a text field, or a JPEG image sourced from a container field.
The Name parameter is a name that distinguishes this item of content from other items that may be loaded into the Fusion Reactor. The plugin will use this name to build up the complete URL which will uniquely identify this item. You can then use that URL to load the content item into a web viewer.
The content item will be remembered and served by the Fusion Reactor plugin until it is overwritten with a fresh copy, or until FileMaker quits, so you can access it over and over again.
If you call this function again with the same Name parameter, it will overwrite the existing element and begin serving the new Content.
ReactorFeed( “MyPage.html”, MyContentTable::MyPage )
This function call will load an HTML page ready for serving under the name “MyPage.html”. The HTML text is sourced from a field called “MyPage” in a FileMaker table called “MyContentTable”.
ReactorFeed( “Convict_” & CriminalRecords::ConvictID & “.jpg”, CriminalRecords::MugShot )
Here we are loading and serving a JPEG-format photograph from a container field. Note that the Name parameter is formed by incorporating a unique value from the FileMaker record. Because the name will therefore be different each time, this will load and serve a new and separate JPEG image for each record that we view, as opposed to overwriting the same image each time. This important technique allows us to keep multiple content elements loaded simultaneously in the Fusion Reactor plugin, e.g. in order to display a portal containing photos from a range of records.
In the demo database included with the Fusion Reactor plugin, all the examples are served out of FileMaker fields. Sometimes more than one served element is involved, e.g. the Roster example includes the JavaScript solution that provides the rostering functionality, but also each staff member photograph is a separate served element drawn from container fields, and even the small image for the delete buttons is served from a global container field.
When you call the ReactorFeed() function as described above, it will return a URL that uniquely identifies the content you just loaded.
If you then use that URL as the web address of a web viewer element in a FileMaker layout, FileMaker will know to ask the Fusion Reactor plugin for that content.
The URLs from the examples above would look something like this:
127.0.0.1 is a special IP address that means ‘this computer’, and 54265 (in the first example) is the port number on which Fusion Reactor is currently listening (the port number will change each time you run FileMaker).
There are a number of different ways in which you can arrange for content to be loaded and later retrieved. For example, you might use a FileMaker script step to call the ReactorFeed() function, and store the resulting URL in a global variable:
Set Variable [$$MyPageURL; ReactorFeed("MyPage.html"; MyContent::MyPage )]
After executing this script step (perhaps in a startup script), you can simply use the global variable $$MyPageURL as the web address for a web viewer.
A more direct method is to write your web viewer’s web address as a FileMaker calculation that calls ReactorFeed() to load the content and provide the URL all in one go:
![]()
When the web viewer needs to know its URL, it will execute this calculation. As a result, the page will be loaded into the Fusion Reactor plugin at that point, and the ReactorFeed() function call will return a URL like the one above, which the web viewer will then use to fetch its content for display.