Skip to main content

Actr_StartHTTPServer (function reference)

By May 1, 2022May 17th, 2022Online Help, Troi Activator Plug-in
Activator Plug-in > Functions reference > Actr_StartHTTPServer
Activator Plug-in for FileMaker Pro

Actr_StartHTTPServer

Starts the built-in HTTP Server. This web server will trigger a script when data arrives.

SyntaxFunction badge

Actr_StartHTTPServer ( switches ; fileName ; scriptName ; {password} )

Parameters

switches determine the behavior of this command
filename the name of the file which contains the script to trigger when a HTTP request arrives
scriptname specifies the name of the script to trigger when a HTTP request arrives
password (optional) a password which the sender needs to add to the HTTP request

Switches

Switches can be empty or one of the following:

-Defaultportnumber use the default port number of the Activator (TCP port 54242)
-Portnumber=xxx use the specified portnumber xxx

You can also add this switch:

-AllowAnyPostedText allow any text to be posted to the url "/posttext.html"

Returned Result

Data type returned

Error code

Result

The returned result is an error code. An error always starts with 2 dollars, followed by the error code. You should always check for errors. Returned error codes can be:

0 no error
$$-50 paramErr there was an error with a parameter

Other errors may be returned.

Originated in

Activator Plug-in 3.0

Compatibility

FileMaker Pro 16 to 19

Considerations

Only HTTP requests which are posted to the right web page will trigger the script. Other requests (for example for the index.html page) do not trigger a script but a default webpage will be returned to the remote client..

Remote clients can trigger a script with a URL like this:

http://www.example.com:54242/triggerscript.html?yourText=someText

See the Actr_SetHTTPResponse function and the HTTPResponse.fmp12 example file for more detailed information on how to sent a custom response.
When the URL contains a password parameter, the password will be removed from the result returned by

Actr_GetEventInfo ("-GetURL" ; $EeventID)

This function also lets the Activator Plug-in act as an Image Upload Server. See the UploadData.fmp12 example file for more detailed information. You can also send text only to the plug-in.

To upload text posted to the url “/posttext.html” you need to wrap it in tags like this:


  <TROI_TEXT_UTF8>
  your UTF8 formatted text
  </TROI_TEXT_UTF8>

New for v8.0: If you want to allow allow any text to be uploaded to the upload server add the switch “-AllowAnyPostedText” when starting the server.

On macOS the plug-in will make the HTTP server known via Bonjour as “Troi Activator Upload Server”, allowing for easy discovery.

Example

Set Field [ result ; Actr_StartHTTPServer ( "-Unused" ; "Upload.fmp12" ; 
				"HTTP_TriggerScript" ; "secret" ) ]

This command starts the HTTP Server. When (image) data comes in, it will trigger the script “HTTP_TriggerScript” in file “Upload.fmp12”. Note that this example is somewhat simplified, normally you should not use a hardcoded filename like in the above example.

Example 2

Add the following script steps:

Set Variable [ $password ; "secret" ]
Set Variable [ result ; Actr_StartHTTPServer ( "-Portnumber=12345" ; Get ( FileName ) ; 
				"HTTP_TriggerScript" ; $password ) ]

This command will start the HTTP Server, with the HTTP Server listening on port 12345. Users can now send images or text data from other computers or for example an iPhone or iPad.

Used in example files

UploadData.fmp12
HTTPResponse.fmp12

Related functionsFunction badge

Actr_GetEventInfo
Actr_SetHTTPResponse
Actr_StopHTTPServer

Related script stepScript step badge

Start HTTP Server

Related topics

Activator Plug-in online help (overview)


Online Help Page for Activator Plug-in for 16 to 19 –> Actr_StartHTTPServer (actrp4621) 2022-0517 10:09:28