pAutoPoke: Automated Pokes for Headless Missions
Maintained by: mikerb@mit.edu Get PDF
src: project-pavlab/appdocs/app_pautopoke
1 Overview
2 Configuration Parameters for pAutoPoke
3 Publications and Subscriptions for pAutoPoke
3.1 Variables Published by pAutoPoke
3.2 Variables Subscribed for by pAutoPoke
3.3 Command Line Usage of pAutoPoke
4 Terminal and AppCast Output
1 Overview
The pAutoPoke application is a tool to enable an automatic poke to the MOOSDB with one or more configured publications. Typically this is in service of conducting headless, auto-tested missions, where there is no user to kick off a mission by hitting a "DEPLOY" button on a command and control GUI, such as app{pMarineViewer}


Figure 1.1: Typical pAutoPoke Topology: The flags configured for pAutoPoke are posted immediately after connecting to the MOOSDB. If configured to wait for vehicle connections, the pShoreBroker app will publish the number of connected vehicles in the variable UFSB_NODE_COUNT.


2 Configuration Parameters for pAutoPoke
The pAutoPoke application may be configured with a configuration block within a MOOS mission file, typically with a .moos file suffix. The following parameters are defined for pAutoPoke.

Listing 2.1 - Configuration Parameters for pAutoPoke.

flag: | A MOOS variable and value to be published. |
required_nodes: | The number of nodes required to be detected, before flags are published. By default this is zero. |


An Example MOOS Configuration Block [top]
An example MOOS configuration block may be obtained from the command line with the following:

$ pAutoPoke --example or -e


Listing 2.2 - Example configuration of the pAutoPoke application.

1 =============================================================== 2 pAutoPoke Example MOOS Configuration 3 =============================================================== 4 5 ProcessConfig = pAutoPoke 6 { 7 AppTick = 2 8 CommsTick = 2 9 10 flag = MOOS_MANUAL_OVERRIDE_ALL=false 11 flag = DEPLOY_ALL=false 12 13 required_nodes = 2 14 }



3 Publications and Subscriptions for pAutoPoke
The interface for pAutoPoke, in terms of publications and subscriptions, is described below. This same information may also be obtained from the terminal with:

$ pAutoPoke --interface or -i


3.1 Variables Published by pAutoPoke [top]

- APPCAST: Contains an appcast report identical to the terminal output. Appcasts are posted only after an appcast request is received from an appcast viewing utility.



3.2 Variables Subscribed for by pAutoPoke [top]
The pAutoPoke application subscribes to the following MOOS variables:

- APPCAST_REQ: A request to generate and post a new apppcast report, with reporting criteria, and expiration.
- DB_RWSUMMARY: A report generated by the MOOSDB listing, for each app connected to the MOOSDB, the set of variables subscribed for by each app, and the set of variables observed to be published by each app.


Node that pAutoPoke will also subscribe for all variables discovered from the contents of DB_RWSUMMARY publications.


3.3 Command Line Usage of pAutoPoke [top]
The pAutoPoke application is typically launched with pAntler, along with a group of other modules. However, it may be launched separately from the command line. The command line options may be shown by typing:

$ pAutoPoke --help or -h


Listing 3.1 - Command line usage for the pAutoPoke tool.

1 Usage: pAutoPoke file.moos [OPTIONS] 2 3 Options: 4 --alias=<ProcessName> 5 Launch pAutoPoke with the given process 6 name rather than pAutoPoke 7 --example, -e 8 Display example MOOS configuration block 9 --help, -h 10 Display this help message. 14 --interface, -i 15 Display MOOS publications and subscriptions. 16 --version,-v 17 Display the release version of pAutoPoke. 18 --web,-w 19 Open browser to: https://oceanai.mit.edu/ivpman/apps/pAutoPoke 20 21 Note: If argv[2] is not of one of the above formats 22 this will be interpreted as a run alias. This 23 is to support pAntler launching conventions.



4 Terminal and AppCast Output
Some useful information is published by pAutoPoke to the terminal on every iteration. An example is shown in Listing 4.1 below. This application is also appcast enabled, meaning its reports are published to the MOOSDB and viewable from any uMAC application or pMarineViewer. The counter on the end of line 2 is incremented on each iteration of pAutoPoke, and also serves as a heartbeat indicator. The "0/0" also on line 2 indicates there are no configuration or run warnings detected.

Listing 4.1 - Example terminal or appcast output for pAutoPoke.

1 ============================================================== 2 pAutoPoke shoreside 0/0(44) 3 ============================================================== 4 Required Nodes:2 5 Flags: 6 [0]: MOOS_MANUAL_OVERRIDE_ALL=false 7 [1]: DEPLOY_ALL=true 8 9 Node Count: 2 10 flags_posted: true


Lines 4-7 of the output show the user configuration. Lines 9 and 10 show the current state of the app.

Document Maintained by: mikerb@mit.edu
Page built from LaTeX source using texwiki, developed at MIT. Errata to issues@moos-ivp.org.
Get PDF