openc3-cosmos-tool-docs 6.3.0 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/tools/staticdocs/404.html +1 -1
  3. data/tools/staticdocs/assets/images/cosmos-containers-7ecd745840fcff307f0fec01ac4d88a8fa76d531abeae407fee0e508f50a487c.png +0 -0
  4. data/tools/staticdocs/assets/images/cosmos-images-8e15c197653ac3a1f39e8c5eaa56155f364e67d87d66647cff1355b960093af1.png +0 -0
  5. data/tools/staticdocs/assets/js/2bb7bf90.1772f030.js +1 -0
  6. data/tools/staticdocs/assets/js/411898ad.f7b3ff17.js +1 -0
  7. data/tools/staticdocs/assets/js/5b233ba7.9d6ba314.js +1 -0
  8. data/tools/staticdocs/assets/js/6831b732.1318b398.js +1 -0
  9. data/tools/staticdocs/assets/js/696b4199.1e950fcb.js +1 -0
  10. data/tools/staticdocs/assets/js/867640d5.27d9d599.js +1 -0
  11. data/tools/staticdocs/assets/js/89e76475.e1b0dbdb.js +1 -0
  12. data/tools/staticdocs/assets/js/964eb012.0e04c58d.js +1 -0
  13. data/tools/staticdocs/assets/js/9d6e81d0.36405219.js +1 -0
  14. data/tools/staticdocs/assets/js/a677c089.cfa50691.js +1 -0
  15. data/tools/staticdocs/assets/js/a9b2dc27.805dc1ba.js +1 -0
  16. data/tools/staticdocs/assets/js/aa6b6c1b.ef9b0f38.js +1 -0
  17. data/tools/staticdocs/assets/js/b062d239.57d6e194.js +1 -0
  18. data/tools/staticdocs/assets/js/b6d70f94.a9228642.js +1 -0
  19. data/tools/staticdocs/assets/js/c24eae19.0575c394.js +1 -0
  20. data/tools/staticdocs/assets/js/d1b923aa.da892cde.js +1 -0
  21. data/tools/staticdocs/assets/js/d66bf9c0.80a50660.js +1 -0
  22. data/tools/staticdocs/assets/js/d9b92eba.5db8667e.js +1 -0
  23. data/tools/staticdocs/assets/js/{main.8d947189.js → main.a8e2c06c.js} +5 -5
  24. data/tools/staticdocs/assets/js/{runtime~main.d38c5d36.js → runtime~main.7102cb65.js} +1 -1
  25. data/tools/staticdocs/docs/configuration/accessors.html +4 -3
  26. data/tools/staticdocs/docs/configuration/command.html +1 -1
  27. data/tools/staticdocs/docs/configuration/format.html +1 -1
  28. data/tools/staticdocs/docs/configuration/interfaces.html +15 -4
  29. data/tools/staticdocs/docs/configuration/plugins.html +5 -5
  30. data/tools/staticdocs/docs/configuration/protocols.html +7 -6
  31. data/tools/staticdocs/docs/configuration/ssl-tls.html +115 -76
  32. data/tools/staticdocs/docs/configuration/table.html +1 -1
  33. data/tools/staticdocs/docs/configuration/target.html +1 -1
  34. data/tools/staticdocs/docs/configuration/telemetry-screens.html +1 -1
  35. data/tools/staticdocs/docs/configuration/telemetry.html +1 -1
  36. data/tools/staticdocs/docs/configuration.html +1 -1
  37. data/tools/staticdocs/docs/development/curl.html +4 -4
  38. data/tools/staticdocs/docs/development/developing.html +2 -2
  39. data/tools/staticdocs/docs/development/json-api.html +1 -1
  40. data/tools/staticdocs/docs/development/log-structure.html +1 -1
  41. data/tools/staticdocs/docs/development/roadmap.html +1 -1
  42. data/tools/staticdocs/docs/development/streaming-api.html +1 -1
  43. data/tools/staticdocs/docs/development/testing.html +1 -1
  44. data/tools/staticdocs/docs/development.html +1 -1
  45. data/tools/staticdocs/docs/getting-started/cli.html +2 -2
  46. data/tools/staticdocs/docs/getting-started/generators.html +2 -2
  47. data/tools/staticdocs/docs/getting-started/gettingstarted.html +1 -1
  48. data/tools/staticdocs/docs/getting-started/installation.html +1 -1
  49. data/tools/staticdocs/docs/getting-started/key-concepts.html +8 -4
  50. data/tools/staticdocs/docs/getting-started/podman.html +1 -1
  51. data/tools/staticdocs/docs/getting-started/requirements.html +1 -1
  52. data/tools/staticdocs/docs/getting-started/upgrading.html +1 -1
  53. data/tools/staticdocs/docs/getting-started.html +1 -1
  54. data/tools/staticdocs/docs/guides/bridges.html +1 -1
  55. data/tools/staticdocs/docs/guides/cfs.html +12 -12
  56. data/tools/staticdocs/docs/guides/custom-widgets.html +1 -1
  57. data/tools/staticdocs/docs/guides/dynamic-packets.html +1 -1
  58. data/tools/staticdocs/docs/guides/exposing-microservices.html +4 -4
  59. data/tools/staticdocs/docs/guides/little-endian-bitfields.html +1 -1
  60. data/tools/staticdocs/docs/guides/local-mode.html +1 -1
  61. data/tools/staticdocs/docs/guides/logging.html +1 -1
  62. data/tools/staticdocs/docs/guides/monitoring.html +1 -1
  63. data/tools/staticdocs/docs/guides/performance.html +6 -6
  64. data/tools/staticdocs/docs/guides/raspberrypi.html +1 -1
  65. data/tools/staticdocs/docs/guides/script-writing.html +1 -1
  66. data/tools/staticdocs/docs/guides/scripting-api.html +55 -16
  67. data/tools/staticdocs/docs/guides.html +1 -1
  68. data/tools/staticdocs/docs/meta/contributing.html +1 -1
  69. data/tools/staticdocs/docs/meta/licenses.html +8 -8
  70. data/tools/staticdocs/docs/meta/philosophy.html +2 -2
  71. data/tools/staticdocs/docs/meta/xtce.html +1 -1
  72. data/tools/staticdocs/docs/meta.html +1 -1
  73. data/tools/staticdocs/docs/privacy.html +1 -1
  74. data/tools/staticdocs/docs/tools/admin.html +1 -1
  75. data/tools/staticdocs/docs/tools/autonomic.html +1 -1
  76. data/tools/staticdocs/docs/tools/bucket-explorer.html +2 -2
  77. data/tools/staticdocs/docs/tools/calendar.html +1 -1
  78. data/tools/staticdocs/docs/tools/cmd-sender.html +1 -1
  79. data/tools/staticdocs/docs/tools/cmd-tlm-server.html +1 -1
  80. data/tools/staticdocs/docs/tools/command_history.html +1 -1
  81. data/tools/staticdocs/docs/tools/data-extractor.html +1 -1
  82. data/tools/staticdocs/docs/tools/data-viewer.html +1 -1
  83. data/tools/staticdocs/docs/tools/handbooks.html +1 -1
  84. data/tools/staticdocs/docs/tools/limits-monitor.html +1 -1
  85. data/tools/staticdocs/docs/tools/packet-viewer.html +1 -1
  86. data/tools/staticdocs/docs/tools/script-runner.html +1 -1
  87. data/tools/staticdocs/docs/tools/table-manager.html +1 -1
  88. data/tools/staticdocs/docs/tools/tlm-grapher.html +1 -1
  89. data/tools/staticdocs/docs/tools/tlm-viewer.html +1 -1
  90. data/tools/staticdocs/docs/tools.html +1 -1
  91. data/tools/staticdocs/docs.html +1 -1
  92. data/tools/staticdocs/img/cosmos-containers.png +0 -0
  93. data/tools/staticdocs/img/cosmos-images.png +0 -0
  94. data/tools/staticdocs/index.html +1 -1
  95. data/tools/staticdocs/lunr-index-1746647301890.json +1 -0
  96. data/tools/staticdocs/lunr-index.json +1 -1
  97. data/tools/staticdocs/markdown-page.html +1 -1
  98. data/tools/staticdocs/search-doc-1746647301890.json +1 -0
  99. data/tools/staticdocs/search-doc.json +1 -1
  100. metadata +28 -24
  101. data/tools/staticdocs/assets/js/2bb7bf90.4a658ce6.js +0 -1
  102. data/tools/staticdocs/assets/js/411898ad.f7fc4d80.js +0 -1
  103. data/tools/staticdocs/assets/js/5b233ba7.2ea0179c.js +0 -1
  104. data/tools/staticdocs/assets/js/6831b732.0a867cbc.js +0 -1
  105. data/tools/staticdocs/assets/js/696b4199.2a7ff897.js +0 -1
  106. data/tools/staticdocs/assets/js/867640d5.2c0fa6d9.js +0 -1
  107. data/tools/staticdocs/assets/js/89e76475.a76d0072.js +0 -1
  108. data/tools/staticdocs/assets/js/964eb012.dbc2c206.js +0 -1
  109. data/tools/staticdocs/assets/js/9d6e81d0.44e2d544.js +0 -1
  110. data/tools/staticdocs/assets/js/a677c089.18f98b70.js +0 -1
  111. data/tools/staticdocs/assets/js/a9b2dc27.e01c9bb4.js +0 -1
  112. data/tools/staticdocs/assets/js/aa6b6c1b.3aad95fc.js +0 -1
  113. data/tools/staticdocs/assets/js/b062d239.535a2ceb.js +0 -1
  114. data/tools/staticdocs/assets/js/b6d70f94.7813125e.js +0 -1
  115. data/tools/staticdocs/assets/js/c24eae19.aaae7796.js +0 -1
  116. data/tools/staticdocs/assets/js/d1b923aa.a73e7e79.js +0 -1
  117. data/tools/staticdocs/assets/js/d66bf9c0.842d2efa.js +0 -1
  118. data/tools/staticdocs/assets/js/d9b92eba.34e63ba6.js +0 -1
  119. data/tools/staticdocs/lunr-index-1743825503427.json +0 -1
  120. data/tools/staticdocs/search-doc-1743825503427.json +0 -1
@@ -1,4 +1,4 @@
1
- <!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-guides/scripting-api" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.7.0"><title data-rh=true>Scripting API Guide | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Scripting API Guide | OpenC3 Docs"><meta data-rh=true name=description content="Scripting API methods, deprecations and migrations"><meta data-rh=true property=og:description content="Scripting API methods, deprecations and migrations"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api hreflang=x-default><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1de6b959.css><script src=/tools/staticdocs/assets/js/runtime~main.d38c5d36.js defer></script><script src=/tools/staticdocs/assets/js/main.8d947189.js defer></script><body class=navigation-with-keyboard><script>!function(){var t,e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();t=null!==e?e:"dark",document.documentElement.setAttribute("data-theme",t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="navbar navbar--fixed-top"><div class=navbar__inner><div class=navbar__items><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Expand sidebar category 'Getting Started'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Collapse sidebar category 'Guides'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul style=display:block;overflow:visible;height:auto class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/bridges>Bridges</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/cfs>COSMOS and NASA cFS</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/custom-widgets>Custom Widgets</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/dynamic-packets>Dynamic Packets</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/exposing-microservices>Exposing Microservices</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/little-endian-bitfields>Little Endian Bitfields</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/local-mode>Local Mode</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/logging>Logging</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/monitoring>Monitoring</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/performance>Performance</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/raspberrypi>Raspberry Pi</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/script-writing>Script Writing Guide</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/guides/scripting-api>Scripting API Guide</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs itemscope itemtype=https://schema.org/BreadcrumbList><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li itemscope itemprop=itemListElement itemtype=https://schema.org/ListItem class=breadcrumbs__item><a class=breadcrumbs__link itemprop=item href=/tools/staticdocs/docs/guides><span itemprop=name>Guides</span></a><meta itemprop=position content=1><li itemscope itemprop=itemListElement itemtype=https://schema.org/ListItem class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link itemprop=name>Scripting API Guide</span><meta itemprop=position content=2></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Scripting API Guide</h1></header><p>This document provides the information necessary to write test procedures using the COSMOS scripting API. Scripting in COSMOS is designed to be simple and intuitive. The code completion ability for command and telemetry mnemonics makes Script Runner the ideal place to write your procedures, however any text editor will do. If there is functionality that you don't see here or perhaps an easier syntax for doing something, please submit a ticket.</p>
1
+ <!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-guides/scripting-api" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.7.0"><title data-rh=true>Scripting API Guide | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Scripting API Guide | OpenC3 Docs"><meta data-rh=true name=description content="Scripting API methods, deprecations and migrations"><meta data-rh=true property=og:description content="Scripting API methods, deprecations and migrations"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api hreflang=x-default><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1de6b959.css><script src=/tools/staticdocs/assets/js/runtime~main.7102cb65.js defer></script><script src=/tools/staticdocs/assets/js/main.a8e2c06c.js defer></script><body class=navigation-with-keyboard><script>!function(){var t,e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();t=null!==e?e:"dark",document.documentElement.setAttribute("data-theme",t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="navbar navbar--fixed-top"><div class=navbar__inner><div class=navbar__items><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Expand sidebar category 'Getting Started'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Collapse sidebar category 'Guides'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul style=display:block;overflow:visible;height:auto class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/bridges>Bridges</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/cfs>COSMOS and NASA cFS</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/custom-widgets>Custom Widgets</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/dynamic-packets>Dynamic Packets</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/exposing-microservices>Exposing Microservices</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/little-endian-bitfields>Little Endian Bitfields</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/local-mode>Local Mode</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/logging>Logging</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/monitoring>Monitoring</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/performance>Performance</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/raspberrypi>Raspberry Pi</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/guides/script-writing>Script Writing Guide</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/guides/scripting-api>Scripting API Guide</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs itemscope itemtype=https://schema.org/BreadcrumbList><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li itemscope itemprop=itemListElement itemtype=https://schema.org/ListItem class=breadcrumbs__item><a class=breadcrumbs__link itemprop=item href=/tools/staticdocs/docs/guides><span itemprop=name>Guides</span></a><meta itemprop=position content=1><li itemscope itemprop=itemListElement itemtype=https://schema.org/ListItem class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link itemprop=name>Scripting API Guide</span><meta itemprop=position content=2></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Scripting API Guide</h1></header><p>This document provides the information necessary to write test procedures using the COSMOS scripting API. Scripting in COSMOS is designed to be simple and intuitive. The code completion ability for command and telemetry mnemonics makes Script Runner the ideal place to write your procedures, however any text editor will do. If there is functionality that you don't see here or perhaps an easier syntax for doing something, please submit a ticket.</p>
2
2
  <h2 class="anchor anchorWithStickyNavbar_fF9Z" id=concepts>Concepts<a href=#concepts class=hash-link aria-label="Direct link to Concepts" title="Direct link to Concepts">​</a></h2>
3
3
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=programming-languages>Programming Languages<a href=#programming-languages class=hash-link aria-label="Direct link to Programming Languages" title="Direct link to Programming Languages">​</a></h3>
4
4
  <p>COSMOS scripting is implemented using either Ruby or Python. Ruby and Python are very similar scripting languages and in many cases the COSMOS APIs are identical between the two. This guide is written to support both with additional language specific information found in the <a href=/tools/staticdocs/docs/guides/script-writing>Script Writing Guide</a>.</p>
@@ -1041,12 +1041,22 @@
1041
1041
  <h2 class="anchor anchorWithStickyNavbar_fF9Z" id=script-runner-scripts>Script Runner Scripts<a href=#script-runner-scripts class=hash-link aria-label="Direct link to Script Runner Scripts" title="Direct link to Script Runner Scripts">​</a></h2>
1042
1042
  <p>These methods allow the user to control Script Runner scripts.</p>
1043
1043
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=start>start<a href=#start class=hash-link aria-label="Direct link to start" title="Direct link to start">​</a></h3>
1044
- <p>Starts execution of another high level test procedure. Script Runner will load the file and immediately start executing it before jumping back to the calling procedure. No parameters can be given to high level test procedures. If parameters are necessary, then consider using a subroutine.</p>
1044
+ <p>Starts execution of another high level test procedure. Script Runner will load the file and immediately start executing it before jumping back to the calling procedure. Parameters are not directly given to high level test procedures, though they can use environment variables. If parameters are necessary, consider using a subroutine.</p>
1045
1045
  <p>Ruby / Python Syntax:</p>
1046
1046
  <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">start</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"&lt;Procedure Filename>"</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1047
1047
  <table><thead><tr><th>Parameter<th>Description<tbody><tr><td>Procedure Filename<td>Name of the test procedure file. These files are normally in the procedures folder but may be anywhere in the Ruby search path. Additionally, absolute paths are supported.</table>
1048
1048
  <p>Ruby / Python Example:</p>
1049
1049
  <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">start</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"test1.rb"</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1050
+ <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=goto>goto<a href=#goto class=hash-link aria-label="Direct link to goto" title="Direct link to goto">​</a></h3>
1051
+ <blockquote>
1052
+ <p>Since 6.4.0</p>
1053
+ </blockquote>
1054
+ <p>Jumps to a specific line in either the current file or another file. Script context and local variables are retained if jumping in the same file. This method should not be used to create loops or in any other case where normal Python/Ruby functionality could perform the same function. Use of goto increases stack depth and excess use can lead to stack level too deep errors.</p>
1055
+ <p>Ruby / Python Syntax:</p>
1056
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">goto</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">line_number</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">goto</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">filename</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> line_number</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1057
+ <table><thead><tr><th>Parameter<th>Description<tbody><tr><td>Line Number or Procedure Filename<td>If this is the only argument given then it is the line number to goto in the same script. If two arguments are given, then it is the filename to goto<tr><td>Line Number<td>If the second argument, it is the line number in the filename given by the first argument to goto</table>
1058
+ <p>Ruby / Python Example:</p>
1059
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">goto</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">23</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">goto</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"TARGET/procedures/other_script.rb"</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">5</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">goto</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"TARGET/procedures/other_script.py"</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">12</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1050
1060
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=load_utility>load_utility<a href=#load_utility class=hash-link aria-label="Direct link to load_utility" title="Direct link to load_utility">​</a></h3>
1051
1061
  <p>Reads in a script file that contains useful subroutines for use in your test procedure. When these subroutines run in ScriptRunner or TestRunner, their lines will be highlighted. If you want to import subroutines but do not want their lines to be highlighted in ScriptRunner or TestRunner, use the standard Ruby 'load' or 'require' statement or Python 'import' statement.</p>
1052
1062
  <p>Ruby / Python Syntax:</p>
@@ -1144,20 +1154,40 @@
1144
1154
  <p>Ruby / Python Example:</p>
1145
1155
  <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">disconnect_script</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1146
1156
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=running_script_list>running_script_list<a href=#running_script_list class=hash-link aria-label="Direct link to running_script_list" title="Direct link to running_script_list">​</a></h3>
1147
- <p>List the currently running scripts. Note, this will also include the script which is calling this method. Thus the list will never be empty but will always contain at least 1 item. Returns an array of hashes / list of dicts (see <a href=#running_script_get>running_script_get</a> for hash / dict contents).</p>
1148
- <p>Ruby Example:</p>
1149
- <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{"id"=>5, "scope"=>"DEFAULT", "name"=>"__TEMP__/2025_01_15_13_16_26_210_temp.rb", "user"=>"Anonymous", "start_time"=>"2025-01-15 20:16:52 +0000", "disconnect"=>false, "environment"=>[]}]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1150
- <p>Python Example:</p>
1151
- <div class="language-python codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-python codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{'id': 15, 'scope': 'DEFAULT', 'name': 'INST2/procedures/scripting.py', 'user': 'Anonymous', 'start_time': '2025-01-16 17:36:22 +0000', 'disconnect': False, 'environment': []}]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1152
- <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=running_script_get>running_script_get<a href=#running_script_get class=hash-link aria-label="Direct link to running_script_get" title="Direct link to running_script_get">​</a></h3>
1153
- <p>Get the currently running script with the specified ID. The information returned is the script ID, scope, name, user, start time, disconnect state, environment variables, hostname, state, line number, and update time.</p>
1154
- <p>Ruby / Python Syntax:</p>
1155
- <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_get</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"&lt;Script Id>"</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1157
+ <p>List the currently running scripts. Note, this will also include the script which is calling this method. Thus the list will never be empty but will always contain at least 1 item. Returns an array of hashes / list of dicts (see <a href=#script_get>script_get</a> for hash / dict contents).</p>
1158
+ <p>Ruby Syntax:</p>
1159
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token symbol">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token symbol">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1160
+ <p>Python Syntax:</p>
1161
+ <div class="language-python codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-python codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">limit </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> offset </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1162
+ <table><thead><tr><th>Parameter<th>Description<tbody><tr><td>limit<td>Max number to return (default 10)<tr><td>offset<td>Offset into list to return (default 0)</table>
1163
+ <p>Ruby Example:</p>
1164
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token symbol">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">20</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token symbol">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">10</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{"name"=>"293", "state"=>"waiting", "shard"=>0, "filename"=>"INST/procedures/collect.rb", "current_filename"=>"INST/procedures/collect.rb", "line_no"=>4, "start_line_no"=>1, "end_line_no"=>nil, "username"=>"anonymous", "user_full_name"=>"Anonymous", "start_time"=>"2025-05-03T04:26:50Z", "end_time"=>nil, "disconnect"=>false, "environment"=>"{}", "suite_runner"=>nil, "errors"=>nil, "pid"=>414, "log"=>nil, "report"=>nil, "updated_at"=>1746246411160414638, "scope"=>"DEFAULT"}]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1165
+ <p>Python Example:</p>
1166
+ <div class="language-python codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-python codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">limit </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">20</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> offset </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">10</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{'name': '372', 'state': 'spawning', 'shard': 0, 'filename': '__TEMP__/2025_05_02_22_38_53_386_temp.py', 'current_filename': '__TEMP__/2025_05_02_22_38_53_386_temp.py', 'line_no': 0, 'start_line_no': 1, 'end_line_no': None, 'username': 'anonymous', 'user_full_name': 'Anonymous', 'start_time': '2025-05-03T14:34:11Z', 'end_time': None, 'disconnect': False, 'environment': '{}', 'suite_runner': None, 'errors': None, 'pid': None, 'log': None, 'report': None, 'updated_at': 1746282851410918174, 'scope': 'DEFAULT'}]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1167
+ <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=script_get>script_get<a href=#script_get class=hash-link aria-label="Direct link to script_get" title="Direct link to script_get">​</a></h3>
1168
+ <p>Get information on the script with the specified ID. The information returned is the script name (id), state (spawning, init, running, paused, waiting, error, breakpoint, crashed, stopped, completed, completed_errors, killed), shard, filename, current_filename, line_no, start_line_no, end_line_no, username, user_full_name, start_time, end_time, disconnect state, environment variables, suite_runner configuration, errors, pid, log file, report file, update time, and scope.</p>
1169
+ <p>Possible script states:</p>
1170
+ <ul>
1171
+ <li>spawning - Not running yet</li>
1172
+ <li>init - Initializing</li>
1173
+ <li>running - Running</li>
1174
+ <li>paused - Paused</li>
1175
+ <li>waiting - Waiting (either for a wait or a prompt)</li>
1176
+ <li>error - Paused with an error</li>
1177
+ <li>breakpoint - Paused with a breakpoing</li>
1178
+ <li>crashed - Complete after crashing with an exception</li>
1179
+ <li>stopped - Prematurely stopped</li>
1180
+ <li>completed - Completed successfully</li>
1181
+ <li>completed_errors - Completed but errors occurred while running</li>
1182
+ <li>killed - Forcefully killed</li>
1183
+ </ul>
1184
+ <p>Ruby / Python Syntax:</p>
1185
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">script_get</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"&lt;Script Id>"</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1156
1186
  <table><thead><tr><th>Parameter<th>Description<tbody><tr><td>Script Id<td>Script ID returned by <a href=#script_run>script_run</a></table>
1157
1187
  <p>Ruby Example:</p>
1158
- <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_get</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">15</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> {"id"=>15, "scope"=>"DEFAULT", "name"=>"INST/procedures/new_script.rb", "user"=>"Anonymous", "start_time"=>"2025-01-16 00:28:44 +0000", "disconnect"=>false, "environment"=>[], "hostname"=>"ac9dde3c59c1", "state"=>"spawning", "line_no"=>1, "update_time"=>"2025-01-16 00:28:44 +0000"}</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1188
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">script_get</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">15</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> {"name"=>"293", "state"=>"waiting", "shard"=>0, "filename"=>"INST/procedures/collect.rb", "current_filename"=>"INST/procedures/collect.rb", "line_no"=>4, "start_line_no"=>1, "end_line_no"=>nil, "username"=>"anonymous", "user_full_name"=>"Anonymous", "start_time"=>"2025-05-03T04:26:50Z", "end_time"=>nil, "disconnect"=>false, "environment"=>"{}", "suite_runner"=>nil, "errors"=>nil, "pid"=>414, "log"=>nil, "report"=>nil, "updated_at"=>1746246411160414638, "scope"=>"DEFAULT"}</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1159
1189
  <p>Python Example:</p>
1160
- <div class="language-python codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-python codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_get</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">15</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> {'id': 15, 'scope': 'DEFAULT', 'name': 'INST2/procedures/new_script.py', 'user': 'Anonymous', 'start_time': '2025-01-16 18:04:03 +0000', 'disconnect': False, 'environment': [], 'hostname': 'b84dbcee54ad', 'state': 'running', 'line_no': 3, 'update_time': '2025-01-16T18:04:05.255638Z'}</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1190
+ <div class="language-python codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-python codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">script_get</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">15</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> {'name': '372', 'state': 'spawning', 'shard': 0, 'filename': '__TEMP__/2025_05_02_22_38_53_386_temp.py', 'current_filename': '__TEMP__/2025_05_02_22_38_53_386_temp.py', 'line_no': 0, 'start_line_no': 1, 'end_line_no': None, 'username': 'anonymous', 'user_full_name': 'Anonymous', 'start_time': '2025-05-03T14:34:11Z', 'end_time': None, 'disconnect': False, 'environment': '{}', 'suite_runner': None, 'errors': None, 'pid': None, 'log': None, 'report': None, 'updated_at': 1746282851410918174, 'scope': 'DEFAULT'}</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1161
1191
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=running_script_stop>running_script_stop<a href=#running_script_stop class=hash-link aria-label="Direct link to running_script_stop" title="Direct link to running_script_stop">​</a></h3>
1162
1192
  <p>Stop the running script with the specified ID. This is equivalent to clicking the Stop button in the Script Runner GUI.</p>
1163
1193
  <p>Ruby / Python Syntax:</p>
@@ -1186,6 +1216,10 @@
1186
1216
  <table><thead><tr><th>Parameter<th>Description<tbody><tr><td>Script Id<td>Script ID returned by <a href=#script_run>script_run</a></table>
1187
1217
  <p>Ruby / Python Example:</p>
1188
1218
  <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_go</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">15</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1219
+ <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=running_script_execute_while_paused>running_script_execute_while_paused<a href=#running_script_execute_while_paused class=hash-link aria-label="Direct link to running_script_execute_while_paused" title="Direct link to running_script_execute_while_paused">​</a></h3>
1220
+ <p>Perform a goto or execute selection on a running script.</p>
1221
+ <p>Ruby / Python Syntax:</p>
1222
+ <div class="codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-text codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain"># Execute Selection</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">running_script_execute_while_paused("&lt;Script Id>", "&lt;Script File Path>", &lt;Start line_no>, &lt;end_line_no>)</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"># Goto</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">running_script_execute_while_paused("&lt;Script Id>", "&lt;Script File Path>", &lt;Start line_no>)</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">| Parameter | Description |</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">| --------- | ----------------------------------------------- |</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">| Script Id | Script ID returned by [script_run](#script_run) |</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">| Script File Path | Path to to the script to run ie. "INST/procedures/collect.rb" |</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">| Start Line Number | Line Number to Start At |</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">| End Line Number | Optional - Line Number to End At. If given then execute selection, else goto. |</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Ruby / Python Example:</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">```ruby</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"># Execute Selection</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">running_script_execute_while_paused("23", "INST/procedures/myprocedure.rb", 2, 4)</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"># Goto</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">running_script_execute_while_paused("33", "INST2/procedures/collect.py", 7)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1189
1223
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=running_script_step>running_script_step<a href=#running_script_step class=hash-link aria-label="Direct link to running_script_step" title="Direct link to running_script_step">​</a></h3>
1190
1224
  <p>Step the running script with the specified ID. This is equivalent to clicking the Step button in the Script Runner GUI's Debug window.</p>
1191
1225
  <p>Ruby / Python Syntax:</p>
@@ -1202,10 +1236,15 @@
1202
1236
  <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">running_script_delete</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">15</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1203
1237
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=completed_script_list>completed_script_list<a href=#completed_script_list class=hash-link aria-label="Direct link to completed_script_list" title="Direct link to completed_script_list">​</a></h3>
1204
1238
  <p>List the completed scripts. Returns an array of hashes / list of dicts containing the id, username, script name, script log, and start time.</p>
1239
+ <p>Ruby Syntax:</p>
1240
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">completed_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token symbol">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token symbol">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1241
+ <p>Python Syntax:</p>
1242
+ <div class="language-python codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-python codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">completed_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">limit </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> offset </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">&lt;</span><span class="token plain">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1243
+ <table><thead><tr><th>Parameter<th>Description<tbody><tr><td>limit<td>Max number to return (default 10)<tr><td>offset<td>Offset into list to return (default 0)</table>
1205
1244
  <p>Ruby Example:</p>
1206
- <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">completed_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{"id"=>"15", "user"=>"Anonymous", "name"=>"__TEMP__/2025_01_15_17_07_51_568_temp.rb", "log"=>"DEFAULT/tool_logs/sr/20250116/2025_01_16_00_28_43_sr_2025_01_15_17_07_51_568_temp.txt", "start"=>"2025-01-16 00:28:43 +0000"}, ...]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1245
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">completed_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token symbol">limit</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">10</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token symbol">offset</span><span class="token operator" style="color:rgb(127, 219, 202)">:</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{"id"=>"15", "user"=>"Anonymous", "name"=>"__TEMP__/2025_01_15_17_07_51_568_temp.rb", "log"=>"DEFAULT/tool_logs/sr/20250116/2025_01_16_00_28_43_sr_2025_01_15_17_07_51_568_temp.txt", "start"=>"2025-01-16 00:28:43 +0000"}, ...]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1207
1246
  <p>Python Example:</p>
1208
- <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">completed_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{'id': 16, 'user': 'Anonymous', 'name': 'INST2/procedures/new_script.py', 'log': 'DEFAULT/tool_logs/sr/20250116/2025_01_16_17_46_22_sr_new_script.txt', 'start': '2025-01-16 17:46:22 +0000'}, ...]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1247
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">completed_script_list</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">limit </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">10</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> offset </span><span class="token operator" style="color:rgb(127, 219, 202)">=</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic">#=> [{'id': 16, 'user': 'Anonymous', 'name': 'INST2/procedures/new_script.py', 'log': 'DEFAULT/tool_logs/sr/20250116/2025_01_16_17_46_22_sr_new_script.txt', 'start': '2025-01-16 17:46:22 +0000'}, ...]</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1209
1248
  <h2 class="anchor anchorWithStickyNavbar_fF9Z" id=script-runner-settings>Script Runner Settings<a href=#script-runner-settings class=hash-link aria-label="Direct link to Script Runner Settings" title="Direct link to Script Runner Settings">​</a></h2>
1210
1249
  <p>These methods allow the user to control various Script Runner settings.</p>
1211
1250
  <h3 class="anchor anchorWithStickyNavbar_fF9Z" id=set_line_delay>set_line_delay<a href=#set_line_delay class=hash-link aria-label="Direct link to set_line_delay" title="Direct link to set_line_delay">​</a></h3>
@@ -1470,4 +1509,4 @@ setting of the offline_access_token.</p>
1470
1509
  <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">set_offline_access</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">offline_access_token</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div>
1471
1510
  <table><thead><tr><th>Parameter<th>Description<tbody><tr><td>offline_access_token<td>Keycloak generated refresh token that contains the offline_access openid scope</table>
1472
1511
  <p>Ruby / Python Example:</p>
1473
- <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">set_offline_access</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">offline_access_token</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class=col><a href=https://github.com/OpenC3/cosmos/tree/main/docs.openc3.com/docs/guides/scripting-api.md target=_blank rel="noopener noreferrer" class=theme-edit-this-page><svg fill=currentColor height=20 width=20 viewBox="0 0 40 40" class=iconEdit_UohW aria-hidden=true><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"/></g></svg>Edit this page</a></div><div class="col lastUpdated_g62E"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href=/tools/staticdocs/docs/guides/script-writing><div class=pagination-nav__sublabel>Previous</div><div class=pagination-nav__label>Script Writing Guide</div></a><a class="pagination-nav__link pagination-nav__link--next" href=/tools/staticdocs/docs/development><div class=pagination-nav__sublabel>Next</div><div class=pagination-nav__label>Development</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_TN1Q thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href=#concepts class="table-of-contents__link toc-highlight">Concepts</a><ul><li><a href=#programming-languages class="table-of-contents__link toc-highlight">Programming Languages</a><li><a href=#using-script-runner class="table-of-contents__link toc-highlight">Using Script Runner</a><li><a href=#telemetry-types class="table-of-contents__link toc-highlight">Telemetry Types</a></ul><li><a href=#script-runner-api class="table-of-contents__link toc-highlight">Script Runner API</a><ul><li><a href=#migration-from-cosmos-v5-to-v6 class="table-of-contents__link toc-highlight">Migration from COSMOS v5 to v6</a><li><a href=#migration-from-cosmos-v4-to-v5 class="table-of-contents__link toc-highlight">Migration from COSMOS v4 to v5</a></ul><li><a href=#retrieving-user-input class="table-of-contents__link toc-highlight">Retrieving User Input</a><ul><li><a href=#ask class="table-of-contents__link toc-highlight">ask</a><li><a href=#ask_string class="table-of-contents__link toc-highlight">ask_string</a><li><a href=#message_box class="table-of-contents__link toc-highlight">message_box</a><li><a href=#vertical_message_box class="table-of-contents__link toc-highlight">vertical_message_box</a><li><a href=#combo_box class="table-of-contents__link toc-highlight">combo_box</a><li><a href=#get_target_file class="table-of-contents__link toc-highlight">get_target_file</a><li><a href=#put_target_file class="table-of-contents__link toc-highlight">put_target_file</a><li><a href=#delete_target_file class="table-of-contents__link toc-highlight">delete_target_file</a><li><a href=#open_file_dialog class="table-of-contents__link toc-highlight">open_file_dialog</a><li><a href=#open_files_dialog class="table-of-contents__link toc-highlight">open_files_dialog</a></ul><li><a href=#providing-information-to-the-user class="table-of-contents__link toc-highlight">Providing information to the user</a><ul><li><a href=#prompt class="table-of-contents__link toc-highlight">prompt</a></ul><li><a href=#commands class="table-of-contents__link toc-highlight">Commands</a><ul><li><a href=#cmd class="table-of-contents__link toc-highlight">cmd</a><li><a href=#cmd_no_range_check class="table-of-contents__link toc-highlight">cmd_no_range_check</a><li><a href=#cmd_no_hazardous_check class="table-of-contents__link toc-highlight">cmd_no_hazardous_check</a><li><a href=#cmd_no_checks class="table-of-contents__link toc-highlight">cmd_no_checks</a><li><a href=#cmd_raw class="table-of-contents__link toc-highlight">cmd_raw</a><li><a href=#cmd_raw_no_range_check class="table-of-contents__link toc-highlight">cmd_raw_no_range_check</a><li><a href=#cmd_raw_no_hazardous_check class="table-of-contents__link toc-highlight">cmd_raw_no_hazardous_check</a><li><a href=#cmd_raw_no_checks class="table-of-contents__link toc-highlight">cmd_raw_no_checks</a><li><a href=#build_cmd class="table-of-contents__link toc-highlight">build_cmd</a><li><a href=#enable_cmd class="table-of-contents__link toc-highlight">enable_cmd</a><li><a href=#disable_cmd class="table-of-contents__link toc-highlight">disable_cmd</a><li><a href=#send_raw class="table-of-contents__link toc-highlight">send_raw</a><li><a href=#get_all_cmds class="table-of-contents__link toc-highlight">get_all_cmds</a><li><a href=#get_all_cmd_names class="table-of-contents__link toc-highlight">get_all_cmd_names</a><li><a href=#get_cmd class="table-of-contents__link toc-highlight">get_cmd</a><li><a href=#get_param class="table-of-contents__link toc-highlight">get_param</a><li><a href=#get_cmd_buffer class="table-of-contents__link toc-highlight">get_cmd_buffer</a><li><a href=#get_cmd_hazardous class="table-of-contents__link toc-highlight">get_cmd_hazardous</a><li><a href=#get_cmd_value class="table-of-contents__link toc-highlight">get_cmd_value</a><li><a href=#get_cmd_time class="table-of-contents__link toc-highlight">get_cmd_time</a><li><a href=#get_cmd_cnt class="table-of-contents__link toc-highlight">get_cmd_cnt</a><li><a href=#get_cmd_cnts class="table-of-contents__link toc-highlight">get_cmd_cnts</a><li><a href=#critical_cmd_status class="table-of-contents__link toc-highlight">critical_cmd_status</a><li><a href=#critical_cmd_approve class="table-of-contents__link toc-highlight">critical_cmd_approve</a><li><a href=#critical_cmd_reject class="table-of-contents__link toc-highlight">critical_cmd_reject</a><li><a href=#critical_cmd_can_approve class="table-of-contents__link toc-highlight">critical_cmd_can_approve</a></ul><li><a href=#handling-telemetry class="table-of-contents__link toc-highlight">Handling Telemetry</a><ul><li><a href=#check-check_raw-check_formatted-check_with_units class="table-of-contents__link toc-highlight">check, check_raw, check_formatted, check_with_units</a><li><a href=#check_tolerance class="table-of-contents__link toc-highlight">check_tolerance</a><li><a href=#check_expression class="table-of-contents__link toc-highlight">check_expression</a><li><a href=#check_exception class="table-of-contents__link toc-highlight">check_exception</a><li><a href=#tlm-tlm_raw-tlm_formatted-tlm_with_units class="table-of-contents__link toc-highlight">tlm, tlm_raw, tlm_formatted, tlm_with_units</a><li><a href=#get_tlm_buffer class="table-of-contents__link toc-highlight">get_tlm_buffer</a><li><a href=#get_tlm_packet class="table-of-contents__link toc-highlight">get_tlm_packet</a><li><a href=#get_tlm_values class="table-of-contents__link toc-highlight">get_tlm_values</a><li><a href=#get_all_tlm class="table-of-contents__link toc-highlight">get_all_tlm</a><li><a href=#get_all_tlm_names class="table-of-contents__link toc-highlight">get_all_tlm_names</a><li><a href=#get_all_tlm_item_names class="table-of-contents__link toc-highlight">get_all_tlm_item_names</a><li><a href=#get_tlm class="table-of-contents__link toc-highlight">get_tlm</a><li><a href=#get_item class="table-of-contents__link toc-highlight">get_item</a><li><a href=#get_tlm_cnt class="table-of-contents__link toc-highlight">get_tlm_cnt</a><li><a href=#set_tlm class="table-of-contents__link toc-highlight">set_tlm</a><li><a href=#inject_tlm class="table-of-contents__link toc-highlight">inject_tlm</a><li><a href=#override_tlm class="table-of-contents__link toc-highlight">override_tlm</a><li><a href=#normalize_tlm class="table-of-contents__link toc-highlight">normalize_tlm</a><li><a href=#get_overrides class="table-of-contents__link toc-highlight">get_overrides</a></ul><li><a href=#packet-data-subscriptions class="table-of-contents__link toc-highlight">Packet Data Subscriptions</a><ul><li><a href=#subscribe_packets class="table-of-contents__link toc-highlight">subscribe_packets</a><li><a href=#get_packets class="table-of-contents__link toc-highlight">get_packets</a><li><a href=#get_tlm_cnt-1 class="table-of-contents__link toc-highlight">get_tlm_cnt</a><li><a href=#get_tlm_cnts class="table-of-contents__link toc-highlight">get_tlm_cnts</a><li><a href=#get_packet_derived_items class="table-of-contents__link toc-highlight">get_packet_derived_items</a></ul><li><a href=#delays class="table-of-contents__link toc-highlight">Delays</a><ul><li><a href=#wait class="table-of-contents__link toc-highlight">wait</a><li><a href=#wait_tolerance class="table-of-contents__link toc-highlight">wait_tolerance</a><li><a href=#wait_expression class="table-of-contents__link toc-highlight">wait_expression</a><li><a href=#wait_packet class="table-of-contents__link toc-highlight">wait_packet</a><li><a href=#wait_check class="table-of-contents__link toc-highlight">wait_check</a><li><a href=#wait_check_tolerance class="table-of-contents__link toc-highlight">wait_check_tolerance</a><li><a href=#wait_check_expression class="table-of-contents__link toc-highlight">wait_check_expression</a><li><a href=#wait_check_packet class="table-of-contents__link toc-highlight">wait_check_packet</a></ul><li><a href=#limits class="table-of-contents__link toc-highlight">Limits</a><ul><li><a href=#limits_enabled-limits_enabled class="table-of-contents__link toc-highlight">limits_enabled?, limits_enabled</a><li><a href=#enable_limits class="table-of-contents__link toc-highlight">enable_limits</a><li><a href=#disable_limits class="table-of-contents__link toc-highlight">disable_limits</a><li><a href=#enable_limits_group class="table-of-contents__link toc-highlight">enable_limits_group</a><li><a href=#disable_limits_group class="table-of-contents__link toc-highlight">disable_limits_group</a><li><a href=#get_limits_groups class="table-of-contents__link toc-highlight">get_limits_groups</a><li><a href=#set_limits_set class="table-of-contents__link toc-highlight">set_limits_set</a><li><a href=#get_limits_set class="table-of-contents__link toc-highlight">get_limits_set</a><li><a href=#get_limits_sets class="table-of-contents__link toc-highlight">get_limits_sets</a><li><a href=#get_limits class="table-of-contents__link toc-highlight">get_limits</a><li><a href=#set_limits class="table-of-contents__link toc-highlight">set_limits</a><li><a href=#get_out_of_limits class="table-of-contents__link toc-highlight">get_out_of_limits</a><li><a href=#get_overall_limits_state class="table-of-contents__link toc-highlight">get_overall_limits_state</a><li><a href=#get_limits_events class="table-of-contents__link toc-highlight">get_limits_events</a></ul><li><a href=#plugins--packages class="table-of-contents__link toc-highlight">Plugins / Packages</a><ul><li><a href=#plugin_list class="table-of-contents__link toc-highlight">plugin_list</a><li><a href=#plugin_get class="table-of-contents__link toc-highlight">plugin_get</a><li><a href=#package_list class="table-of-contents__link toc-highlight">package_list</a></ul><li><a href=#targets class="table-of-contents__link toc-highlight">Targets</a><ul><li><a href=#get_target_names class="table-of-contents__link toc-highlight">get_target_names</a><li><a href=#get_target class="table-of-contents__link toc-highlight">get_target</a><li><a href=#get_target_interfaces class="table-of-contents__link toc-highlight">get_target_interfaces</a></ul><li><a href=#interfaces class="table-of-contents__link toc-highlight">Interfaces</a><ul><li><a href=#get_interface class="table-of-contents__link toc-highlight">get_interface</a><li><a href=#get_interface_names class="table-of-contents__link toc-highlight">get_interface_names</a><li><a href=#connect_interface class="table-of-contents__link toc-highlight">connect_interface</a><li><a href=#disconnect_interface class="table-of-contents__link toc-highlight">disconnect_interface</a><li><a href=#start_raw_logging_interface class="table-of-contents__link toc-highlight">start_raw_logging_interface</a><li><a href=#stop_raw_logging_interface class="table-of-contents__link toc-highlight">stop_raw_logging_interface</a><li><a href=#get_all_interface_info class="table-of-contents__link toc-highlight">get_all_interface_info</a><li><a href=#map_target_to_interface class="table-of-contents__link toc-highlight">map_target_to_interface</a><li><a href=#interface_cmd class="table-of-contents__link toc-highlight">interface_cmd</a><li><a href=#interface_protocol_cmd class="table-of-contents__link toc-highlight">interface_protocol_cmd</a></ul><li><a href=#routers class="table-of-contents__link toc-highlight">Routers</a><ul><li><a href=#connect_router class="table-of-contents__link toc-highlight">connect_router</a><li><a href=#disconnect_router class="table-of-contents__link toc-highlight">disconnect_router</a><li><a href=#get_router_names class="table-of-contents__link toc-highlight">get_router_names</a><li><a href=#get_router class="table-of-contents__link toc-highlight">get_router</a><li><a href=#get_all_router_info class="table-of-contents__link toc-highlight">get_all_router_info</a><li><a href=#start_raw_logging_router class="table-of-contents__link toc-highlight">start_raw_logging_router</a><li><a href=#stop_raw_logging_router class="table-of-contents__link toc-highlight">stop_raw_logging_router</a><li><a href=#router_cmd class="table-of-contents__link toc-highlight">router_cmd</a><li><a href=#router_protocol_cmd class="table-of-contents__link toc-highlight">router_protocol_cmd</a></ul><li><a href=#tables class="table-of-contents__link toc-highlight">Tables</a><ul><li><a href=#table_create_binary class="table-of-contents__link toc-highlight">table_create_binary</a><li><a href=#table_create_report class="table-of-contents__link toc-highlight">table_create_report</a></ul><li><a href=#stashing-data class="table-of-contents__link toc-highlight">Stashing Data</a><ul><li><a href=#stash_set class="table-of-contents__link toc-highlight">stash_set</a><li><a href=#stash_get class="table-of-contents__link toc-highlight">stash_get</a><li><a href=#stash_all class="table-of-contents__link toc-highlight">stash_all</a><li><a href=#stash_keys class="table-of-contents__link toc-highlight">stash_keys</a><li><a href=#stash_delete class="table-of-contents__link toc-highlight">stash_delete</a></ul><li><a href=#telemetry-screens class="table-of-contents__link toc-highlight">Telemetry Screens</a><ul><li><a href=#display_screen class="table-of-contents__link toc-highlight">display_screen</a><li><a href=#clear_screen class="table-of-contents__link toc-highlight">clear_screen</a><li><a href=#clear_all_screens class="table-of-contents__link toc-highlight">clear_all_screens</a><li><a href=#delete_screen class="table-of-contents__link toc-highlight">delete_screen</a><li><a href=#get_screen_list class="table-of-contents__link toc-highlight">get_screen_list</a><li><a href=#get_screen_definition class="table-of-contents__link toc-highlight">get_screen_definition</a><li><a href=#create_screen class="table-of-contents__link toc-highlight">create_screen</a><li><a href=#local_screen class="table-of-contents__link toc-highlight">local_screen</a></ul><li><a href=#script-runner-scripts class="table-of-contents__link toc-highlight">Script Runner Scripts</a><ul><li><a href=#start class="table-of-contents__link toc-highlight">start</a><li><a href=#load_utility class="table-of-contents__link toc-highlight">load_utility</a><li><a href=#script_list class="table-of-contents__link toc-highlight">script_list</a><li><a href=#script_create class="table-of-contents__link toc-highlight">script_create</a><li><a href=#script_body class="table-of-contents__link toc-highlight">script_body</a><li><a href=#script_delete class="table-of-contents__link toc-highlight">script_delete</a><li><a href=#script_run class="table-of-contents__link toc-highlight">script_run</a><li><a href=#script_lock class="table-of-contents__link toc-highlight">script_lock</a><li><a href=#script_unlock class="table-of-contents__link toc-highlight">script_unlock</a><li><a href=#script_syntax_check class="table-of-contents__link toc-highlight">script_syntax_check</a><li><a href=#script_instrumented class="table-of-contents__link toc-highlight">script_instrumented</a><li><a href=#script_delete_all_breakpoints class="table-of-contents__link toc-highlight">script_delete_all_breakpoints</a><li><a href=#step_mode class="table-of-contents__link toc-highlight">step_mode</a><li><a href=#run_mode class="table-of-contents__link toc-highlight">run_mode</a><li><a href=#disconnect_script class="table-of-contents__link toc-highlight">disconnect_script</a><li><a href=#running_script_list class="table-of-contents__link toc-highlight">running_script_list</a><li><a href=#running_script_get class="table-of-contents__link toc-highlight">running_script_get</a><li><a href=#running_script_stop class="table-of-contents__link toc-highlight">running_script_stop</a><li><a href=#running_script_pause class="table-of-contents__link toc-highlight">running_script_pause</a><li><a href=#running_script_retry class="table-of-contents__link toc-highlight">running_script_retry</a><li><a href=#running_script_go class="table-of-contents__link toc-highlight">running_script_go</a><li><a href=#running_script_step class="table-of-contents__link toc-highlight">running_script_step</a><li><a href=#running_script_delete class="table-of-contents__link toc-highlight">running_script_delete</a><li><a href=#completed_script_list class="table-of-contents__link toc-highlight">completed_script_list</a></ul><li><a href=#script-runner-settings class="table-of-contents__link toc-highlight">Script Runner Settings</a><ul><li><a href=#set_line_delay class="table-of-contents__link toc-highlight">set_line_delay</a><li><a href=#get_line_delay class="table-of-contents__link toc-highlight">get_line_delay</a><li><a href=#set_max_output class="table-of-contents__link toc-highlight">set_max_output</a><li><a href=#get_max_output class="table-of-contents__link toc-highlight">get_max_output</a><li><a href=#disable_instrumentation class="table-of-contents__link toc-highlight">disable_instrumentation</a></ul><li><a href=#script-runner-suites class="table-of-contents__link toc-highlight">Script Runner Suites</a><ul><li><a href=#add_group-add_group_setup-add_group_teardown-add_script class="table-of-contents__link toc-highlight">add_group, add_group_setup, add_group_teardown, add_script</a></ul><li><a href=#timelines class="table-of-contents__link toc-highlight">Timelines</a><ul><li><a href=#list_timelines class="table-of-contents__link toc-highlight">list_timelines</a><li><a href=#create_timeline class="table-of-contents__link toc-highlight">create_timeline</a><li><a href=#get_timeline class="table-of-contents__link toc-highlight">get_timeline</a><li><a href=#set_timeline_color class="table-of-contents__link toc-highlight">set_timeline_color</a><li><a href=#delete_timeline class="table-of-contents__link toc-highlight">delete_timeline</a><li><a href=#create_timeline_activity class="table-of-contents__link toc-highlight">create_timeline_activity</a><li><a href=#get_timeline_activity class="table-of-contents__link toc-highlight">get_timeline_activity</a><li><a href=#get_timeline_activities class="table-of-contents__link toc-highlight">get_timeline_activities</a><li><a href=#delete_timeline_activity class="table-of-contents__link toc-highlight">delete_timeline_activity</a></ul><li><a href=#metadata class="table-of-contents__link toc-highlight">Metadata</a><ul><li><a href=#metadata_all class="table-of-contents__link toc-highlight">metadata_all</a><li><a href=#metadata_get class="table-of-contents__link toc-highlight">metadata_get</a><li><a href=#metadata_set class="table-of-contents__link toc-highlight">metadata_set</a><li><a href=#metadata_update class="table-of-contents__link toc-highlight">metadata_update</a><li><a href=#metadata_input class="table-of-contents__link toc-highlight">metadata_input</a></ul><li><a href=#settings class="table-of-contents__link toc-highlight">Settings</a><ul><li><a href=#list_settings class="table-of-contents__link toc-highlight">list_settings</a><li><a href=#get_all_settings class="table-of-contents__link toc-highlight">get_all_settings</a><li><a href=#get_setting-get_settings class="table-of-contents__link toc-highlight">get_setting, get_settings</a><li><a href=#set_setting class="table-of-contents__link toc-highlight">set_setting</a></ul><li><a href=#configuration class="table-of-contents__link toc-highlight">Configuration</a><ul><li><a href=#config_tool_names class="table-of-contents__link toc-highlight">config_tool_names</a><li><a href=#list_configs class="table-of-contents__link toc-highlight">list_configs</a><li><a href=#load_config class="table-of-contents__link toc-highlight">load_config</a><li><a href=#save_config class="table-of-contents__link toc-highlight">save_config</a><li><a href=#delete_config class="table-of-contents__link toc-highlight">delete_config</a></ul><li><a href=#offline-access class="table-of-contents__link toc-highlight">Offline Access</a><ul><li><a href=#initialize_offline_access class="table-of-contents__link toc-highlight">initialize_offline_access</a><li><a href=#offline_access_needed class="table-of-contents__link toc-highlight">offline_access_needed</a><li><a href=#set_offline_access class="table-of-contents__link toc-highlight">set_offline_access</a></ul></ul></div></div></div></div></main></div></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class=footer__title>Homepage</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://openc3.com target=_blank rel="noopener noreferrer" class=footer__link-item>Home</a></ul></div><div class="col footer__col"><div class=footer__title>Docs</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs>Documentation</a></ul></div><div class="col footer__col"><div class=footer__title>Community</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://www.linkedin.com/company/openc3 target=_blank rel="noopener noreferrer" class=footer__link-item>LinkedIn<svg width=13.5 height=13.5 aria-hidden=true viewBox="0 0 24 24" class=iconExternalLink_awgD><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></svg></a></ul></div><div class="col footer__col"><div class=footer__title>More</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://github.com/OpenC3/cosmos target=_blank rel="noopener noreferrer" class=footer__link-item>GitHub<svg width=13.5 height=13.5 aria-hidden=true viewBox="0 0 24 24" class=iconExternalLink_awgD><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></svg></a><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs/privacy>Privacy</a></ul></div></div><div class="footer__bottom text--center"><div class=footer__copyright>Copyright © 2025 OpenC3, Inc.</div></div></div></footer></div>
1512
+ <div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_qZBB><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">set_offline_access</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">offline_access_token</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><br></span></code></pre><div class=buttonGroup_TNwR><button type=button aria-label="Copy code to clipboard" title=Copy class=clean-btn><span class=copyButtonIcons_MVhB aria-hidden=true><svg viewBox="0 0 24 24" class=copyButtonIcon_yxgH><path fill=currentColor d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg><svg viewBox="0 0 24 24" class=copyButtonSuccessIcon_QJLJ><path fill=currentColor d=M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z /></svg></span></button></div></div></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class=col><a href=https://github.com/OpenC3/cosmos/tree/main/docs.openc3.com/docs/guides/scripting-api.md target=_blank rel="noopener noreferrer" class=theme-edit-this-page><svg fill=currentColor height=20 width=20 viewBox="0 0 40 40" class=iconEdit_UohW aria-hidden=true><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"/></g></svg>Edit this page</a></div><div class="col lastUpdated_g62E"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href=/tools/staticdocs/docs/guides/script-writing><div class=pagination-nav__sublabel>Previous</div><div class=pagination-nav__label>Script Writing Guide</div></a><a class="pagination-nav__link pagination-nav__link--next" href=/tools/staticdocs/docs/development><div class=pagination-nav__sublabel>Next</div><div class=pagination-nav__label>Development</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_TN1Q thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href=#concepts class="table-of-contents__link toc-highlight">Concepts</a><ul><li><a href=#programming-languages class="table-of-contents__link toc-highlight">Programming Languages</a><li><a href=#using-script-runner class="table-of-contents__link toc-highlight">Using Script Runner</a><li><a href=#telemetry-types class="table-of-contents__link toc-highlight">Telemetry Types</a></ul><li><a href=#script-runner-api class="table-of-contents__link toc-highlight">Script Runner API</a><ul><li><a href=#migration-from-cosmos-v5-to-v6 class="table-of-contents__link toc-highlight">Migration from COSMOS v5 to v6</a><li><a href=#migration-from-cosmos-v4-to-v5 class="table-of-contents__link toc-highlight">Migration from COSMOS v4 to v5</a></ul><li><a href=#retrieving-user-input class="table-of-contents__link toc-highlight">Retrieving User Input</a><ul><li><a href=#ask class="table-of-contents__link toc-highlight">ask</a><li><a href=#ask_string class="table-of-contents__link toc-highlight">ask_string</a><li><a href=#message_box class="table-of-contents__link toc-highlight">message_box</a><li><a href=#vertical_message_box class="table-of-contents__link toc-highlight">vertical_message_box</a><li><a href=#combo_box class="table-of-contents__link toc-highlight">combo_box</a><li><a href=#get_target_file class="table-of-contents__link toc-highlight">get_target_file</a><li><a href=#put_target_file class="table-of-contents__link toc-highlight">put_target_file</a><li><a href=#delete_target_file class="table-of-contents__link toc-highlight">delete_target_file</a><li><a href=#open_file_dialog class="table-of-contents__link toc-highlight">open_file_dialog</a><li><a href=#open_files_dialog class="table-of-contents__link toc-highlight">open_files_dialog</a></ul><li><a href=#providing-information-to-the-user class="table-of-contents__link toc-highlight">Providing information to the user</a><ul><li><a href=#prompt class="table-of-contents__link toc-highlight">prompt</a></ul><li><a href=#commands class="table-of-contents__link toc-highlight">Commands</a><ul><li><a href=#cmd class="table-of-contents__link toc-highlight">cmd</a><li><a href=#cmd_no_range_check class="table-of-contents__link toc-highlight">cmd_no_range_check</a><li><a href=#cmd_no_hazardous_check class="table-of-contents__link toc-highlight">cmd_no_hazardous_check</a><li><a href=#cmd_no_checks class="table-of-contents__link toc-highlight">cmd_no_checks</a><li><a href=#cmd_raw class="table-of-contents__link toc-highlight">cmd_raw</a><li><a href=#cmd_raw_no_range_check class="table-of-contents__link toc-highlight">cmd_raw_no_range_check</a><li><a href=#cmd_raw_no_hazardous_check class="table-of-contents__link toc-highlight">cmd_raw_no_hazardous_check</a><li><a href=#cmd_raw_no_checks class="table-of-contents__link toc-highlight">cmd_raw_no_checks</a><li><a href=#build_cmd class="table-of-contents__link toc-highlight">build_cmd</a><li><a href=#enable_cmd class="table-of-contents__link toc-highlight">enable_cmd</a><li><a href=#disable_cmd class="table-of-contents__link toc-highlight">disable_cmd</a><li><a href=#send_raw class="table-of-contents__link toc-highlight">send_raw</a><li><a href=#get_all_cmds class="table-of-contents__link toc-highlight">get_all_cmds</a><li><a href=#get_all_cmd_names class="table-of-contents__link toc-highlight">get_all_cmd_names</a><li><a href=#get_cmd class="table-of-contents__link toc-highlight">get_cmd</a><li><a href=#get_param class="table-of-contents__link toc-highlight">get_param</a><li><a href=#get_cmd_buffer class="table-of-contents__link toc-highlight">get_cmd_buffer</a><li><a href=#get_cmd_hazardous class="table-of-contents__link toc-highlight">get_cmd_hazardous</a><li><a href=#get_cmd_value class="table-of-contents__link toc-highlight">get_cmd_value</a><li><a href=#get_cmd_time class="table-of-contents__link toc-highlight">get_cmd_time</a><li><a href=#get_cmd_cnt class="table-of-contents__link toc-highlight">get_cmd_cnt</a><li><a href=#get_cmd_cnts class="table-of-contents__link toc-highlight">get_cmd_cnts</a><li><a href=#critical_cmd_status class="table-of-contents__link toc-highlight">critical_cmd_status</a><li><a href=#critical_cmd_approve class="table-of-contents__link toc-highlight">critical_cmd_approve</a><li><a href=#critical_cmd_reject class="table-of-contents__link toc-highlight">critical_cmd_reject</a><li><a href=#critical_cmd_can_approve class="table-of-contents__link toc-highlight">critical_cmd_can_approve</a></ul><li><a href=#handling-telemetry class="table-of-contents__link toc-highlight">Handling Telemetry</a><ul><li><a href=#check-check_raw-check_formatted-check_with_units class="table-of-contents__link toc-highlight">check, check_raw, check_formatted, check_with_units</a><li><a href=#check_tolerance class="table-of-contents__link toc-highlight">check_tolerance</a><li><a href=#check_expression class="table-of-contents__link toc-highlight">check_expression</a><li><a href=#check_exception class="table-of-contents__link toc-highlight">check_exception</a><li><a href=#tlm-tlm_raw-tlm_formatted-tlm_with_units class="table-of-contents__link toc-highlight">tlm, tlm_raw, tlm_formatted, tlm_with_units</a><li><a href=#get_tlm_buffer class="table-of-contents__link toc-highlight">get_tlm_buffer</a><li><a href=#get_tlm_packet class="table-of-contents__link toc-highlight">get_tlm_packet</a><li><a href=#get_tlm_values class="table-of-contents__link toc-highlight">get_tlm_values</a><li><a href=#get_all_tlm class="table-of-contents__link toc-highlight">get_all_tlm</a><li><a href=#get_all_tlm_names class="table-of-contents__link toc-highlight">get_all_tlm_names</a><li><a href=#get_all_tlm_item_names class="table-of-contents__link toc-highlight">get_all_tlm_item_names</a><li><a href=#get_tlm class="table-of-contents__link toc-highlight">get_tlm</a><li><a href=#get_item class="table-of-contents__link toc-highlight">get_item</a><li><a href=#get_tlm_cnt class="table-of-contents__link toc-highlight">get_tlm_cnt</a><li><a href=#set_tlm class="table-of-contents__link toc-highlight">set_tlm</a><li><a href=#inject_tlm class="table-of-contents__link toc-highlight">inject_tlm</a><li><a href=#override_tlm class="table-of-contents__link toc-highlight">override_tlm</a><li><a href=#normalize_tlm class="table-of-contents__link toc-highlight">normalize_tlm</a><li><a href=#get_overrides class="table-of-contents__link toc-highlight">get_overrides</a></ul><li><a href=#packet-data-subscriptions class="table-of-contents__link toc-highlight">Packet Data Subscriptions</a><ul><li><a href=#subscribe_packets class="table-of-contents__link toc-highlight">subscribe_packets</a><li><a href=#get_packets class="table-of-contents__link toc-highlight">get_packets</a><li><a href=#get_tlm_cnt-1 class="table-of-contents__link toc-highlight">get_tlm_cnt</a><li><a href=#get_tlm_cnts class="table-of-contents__link toc-highlight">get_tlm_cnts</a><li><a href=#get_packet_derived_items class="table-of-contents__link toc-highlight">get_packet_derived_items</a></ul><li><a href=#delays class="table-of-contents__link toc-highlight">Delays</a><ul><li><a href=#wait class="table-of-contents__link toc-highlight">wait</a><li><a href=#wait_tolerance class="table-of-contents__link toc-highlight">wait_tolerance</a><li><a href=#wait_expression class="table-of-contents__link toc-highlight">wait_expression</a><li><a href=#wait_packet class="table-of-contents__link toc-highlight">wait_packet</a><li><a href=#wait_check class="table-of-contents__link toc-highlight">wait_check</a><li><a href=#wait_check_tolerance class="table-of-contents__link toc-highlight">wait_check_tolerance</a><li><a href=#wait_check_expression class="table-of-contents__link toc-highlight">wait_check_expression</a><li><a href=#wait_check_packet class="table-of-contents__link toc-highlight">wait_check_packet</a></ul><li><a href=#limits class="table-of-contents__link toc-highlight">Limits</a><ul><li><a href=#limits_enabled-limits_enabled class="table-of-contents__link toc-highlight">limits_enabled?, limits_enabled</a><li><a href=#enable_limits class="table-of-contents__link toc-highlight">enable_limits</a><li><a href=#disable_limits class="table-of-contents__link toc-highlight">disable_limits</a><li><a href=#enable_limits_group class="table-of-contents__link toc-highlight">enable_limits_group</a><li><a href=#disable_limits_group class="table-of-contents__link toc-highlight">disable_limits_group</a><li><a href=#get_limits_groups class="table-of-contents__link toc-highlight">get_limits_groups</a><li><a href=#set_limits_set class="table-of-contents__link toc-highlight">set_limits_set</a><li><a href=#get_limits_set class="table-of-contents__link toc-highlight">get_limits_set</a><li><a href=#get_limits_sets class="table-of-contents__link toc-highlight">get_limits_sets</a><li><a href=#get_limits class="table-of-contents__link toc-highlight">get_limits</a><li><a href=#set_limits class="table-of-contents__link toc-highlight">set_limits</a><li><a href=#get_out_of_limits class="table-of-contents__link toc-highlight">get_out_of_limits</a><li><a href=#get_overall_limits_state class="table-of-contents__link toc-highlight">get_overall_limits_state</a><li><a href=#get_limits_events class="table-of-contents__link toc-highlight">get_limits_events</a></ul><li><a href=#plugins--packages class="table-of-contents__link toc-highlight">Plugins / Packages</a><ul><li><a href=#plugin_list class="table-of-contents__link toc-highlight">plugin_list</a><li><a href=#plugin_get class="table-of-contents__link toc-highlight">plugin_get</a><li><a href=#package_list class="table-of-contents__link toc-highlight">package_list</a></ul><li><a href=#targets class="table-of-contents__link toc-highlight">Targets</a><ul><li><a href=#get_target_names class="table-of-contents__link toc-highlight">get_target_names</a><li><a href=#get_target class="table-of-contents__link toc-highlight">get_target</a><li><a href=#get_target_interfaces class="table-of-contents__link toc-highlight">get_target_interfaces</a></ul><li><a href=#interfaces class="table-of-contents__link toc-highlight">Interfaces</a><ul><li><a href=#get_interface class="table-of-contents__link toc-highlight">get_interface</a><li><a href=#get_interface_names class="table-of-contents__link toc-highlight">get_interface_names</a><li><a href=#connect_interface class="table-of-contents__link toc-highlight">connect_interface</a><li><a href=#disconnect_interface class="table-of-contents__link toc-highlight">disconnect_interface</a><li><a href=#start_raw_logging_interface class="table-of-contents__link toc-highlight">start_raw_logging_interface</a><li><a href=#stop_raw_logging_interface class="table-of-contents__link toc-highlight">stop_raw_logging_interface</a><li><a href=#get_all_interface_info class="table-of-contents__link toc-highlight">get_all_interface_info</a><li><a href=#map_target_to_interface class="table-of-contents__link toc-highlight">map_target_to_interface</a><li><a href=#interface_cmd class="table-of-contents__link toc-highlight">interface_cmd</a><li><a href=#interface_protocol_cmd class="table-of-contents__link toc-highlight">interface_protocol_cmd</a></ul><li><a href=#routers class="table-of-contents__link toc-highlight">Routers</a><ul><li><a href=#connect_router class="table-of-contents__link toc-highlight">connect_router</a><li><a href=#disconnect_router class="table-of-contents__link toc-highlight">disconnect_router</a><li><a href=#get_router_names class="table-of-contents__link toc-highlight">get_router_names</a><li><a href=#get_router class="table-of-contents__link toc-highlight">get_router</a><li><a href=#get_all_router_info class="table-of-contents__link toc-highlight">get_all_router_info</a><li><a href=#start_raw_logging_router class="table-of-contents__link toc-highlight">start_raw_logging_router</a><li><a href=#stop_raw_logging_router class="table-of-contents__link toc-highlight">stop_raw_logging_router</a><li><a href=#router_cmd class="table-of-contents__link toc-highlight">router_cmd</a><li><a href=#router_protocol_cmd class="table-of-contents__link toc-highlight">router_protocol_cmd</a></ul><li><a href=#tables class="table-of-contents__link toc-highlight">Tables</a><ul><li><a href=#table_create_binary class="table-of-contents__link toc-highlight">table_create_binary</a><li><a href=#table_create_report class="table-of-contents__link toc-highlight">table_create_report</a></ul><li><a href=#stashing-data class="table-of-contents__link toc-highlight">Stashing Data</a><ul><li><a href=#stash_set class="table-of-contents__link toc-highlight">stash_set</a><li><a href=#stash_get class="table-of-contents__link toc-highlight">stash_get</a><li><a href=#stash_all class="table-of-contents__link toc-highlight">stash_all</a><li><a href=#stash_keys class="table-of-contents__link toc-highlight">stash_keys</a><li><a href=#stash_delete class="table-of-contents__link toc-highlight">stash_delete</a></ul><li><a href=#telemetry-screens class="table-of-contents__link toc-highlight">Telemetry Screens</a><ul><li><a href=#display_screen class="table-of-contents__link toc-highlight">display_screen</a><li><a href=#clear_screen class="table-of-contents__link toc-highlight">clear_screen</a><li><a href=#clear_all_screens class="table-of-contents__link toc-highlight">clear_all_screens</a><li><a href=#delete_screen class="table-of-contents__link toc-highlight">delete_screen</a><li><a href=#get_screen_list class="table-of-contents__link toc-highlight">get_screen_list</a><li><a href=#get_screen_definition class="table-of-contents__link toc-highlight">get_screen_definition</a><li><a href=#create_screen class="table-of-contents__link toc-highlight">create_screen</a><li><a href=#local_screen class="table-of-contents__link toc-highlight">local_screen</a></ul><li><a href=#script-runner-scripts class="table-of-contents__link toc-highlight">Script Runner Scripts</a><ul><li><a href=#start class="table-of-contents__link toc-highlight">start</a><li><a href=#goto class="table-of-contents__link toc-highlight">goto</a><li><a href=#load_utility class="table-of-contents__link toc-highlight">load_utility</a><li><a href=#script_list class="table-of-contents__link toc-highlight">script_list</a><li><a href=#script_create class="table-of-contents__link toc-highlight">script_create</a><li><a href=#script_body class="table-of-contents__link toc-highlight">script_body</a><li><a href=#script_delete class="table-of-contents__link toc-highlight">script_delete</a><li><a href=#script_run class="table-of-contents__link toc-highlight">script_run</a><li><a href=#script_lock class="table-of-contents__link toc-highlight">script_lock</a><li><a href=#script_unlock class="table-of-contents__link toc-highlight">script_unlock</a><li><a href=#script_syntax_check class="table-of-contents__link toc-highlight">script_syntax_check</a><li><a href=#script_instrumented class="table-of-contents__link toc-highlight">script_instrumented</a><li><a href=#script_delete_all_breakpoints class="table-of-contents__link toc-highlight">script_delete_all_breakpoints</a><li><a href=#step_mode class="table-of-contents__link toc-highlight">step_mode</a><li><a href=#run_mode class="table-of-contents__link toc-highlight">run_mode</a><li><a href=#disconnect_script class="table-of-contents__link toc-highlight">disconnect_script</a><li><a href=#running_script_list class="table-of-contents__link toc-highlight">running_script_list</a><li><a href=#script_get class="table-of-contents__link toc-highlight">script_get</a><li><a href=#running_script_stop class="table-of-contents__link toc-highlight">running_script_stop</a><li><a href=#running_script_pause class="table-of-contents__link toc-highlight">running_script_pause</a><li><a href=#running_script_retry class="table-of-contents__link toc-highlight">running_script_retry</a><li><a href=#running_script_go class="table-of-contents__link toc-highlight">running_script_go</a><li><a href=#running_script_execute_while_paused class="table-of-contents__link toc-highlight">running_script_execute_while_paused</a><li><a href=#running_script_step class="table-of-contents__link toc-highlight">running_script_step</a><li><a href=#running_script_delete class="table-of-contents__link toc-highlight">running_script_delete</a><li><a href=#completed_script_list class="table-of-contents__link toc-highlight">completed_script_list</a></ul><li><a href=#script-runner-settings class="table-of-contents__link toc-highlight">Script Runner Settings</a><ul><li><a href=#set_line_delay class="table-of-contents__link toc-highlight">set_line_delay</a><li><a href=#get_line_delay class="table-of-contents__link toc-highlight">get_line_delay</a><li><a href=#set_max_output class="table-of-contents__link toc-highlight">set_max_output</a><li><a href=#get_max_output class="table-of-contents__link toc-highlight">get_max_output</a><li><a href=#disable_instrumentation class="table-of-contents__link toc-highlight">disable_instrumentation</a></ul><li><a href=#script-runner-suites class="table-of-contents__link toc-highlight">Script Runner Suites</a><ul><li><a href=#add_group-add_group_setup-add_group_teardown-add_script class="table-of-contents__link toc-highlight">add_group, add_group_setup, add_group_teardown, add_script</a></ul><li><a href=#timelines class="table-of-contents__link toc-highlight">Timelines</a><ul><li><a href=#list_timelines class="table-of-contents__link toc-highlight">list_timelines</a><li><a href=#create_timeline class="table-of-contents__link toc-highlight">create_timeline</a><li><a href=#get_timeline class="table-of-contents__link toc-highlight">get_timeline</a><li><a href=#set_timeline_color class="table-of-contents__link toc-highlight">set_timeline_color</a><li><a href=#delete_timeline class="table-of-contents__link toc-highlight">delete_timeline</a><li><a href=#create_timeline_activity class="table-of-contents__link toc-highlight">create_timeline_activity</a><li><a href=#get_timeline_activity class="table-of-contents__link toc-highlight">get_timeline_activity</a><li><a href=#get_timeline_activities class="table-of-contents__link toc-highlight">get_timeline_activities</a><li><a href=#delete_timeline_activity class="table-of-contents__link toc-highlight">delete_timeline_activity</a></ul><li><a href=#metadata class="table-of-contents__link toc-highlight">Metadata</a><ul><li><a href=#metadata_all class="table-of-contents__link toc-highlight">metadata_all</a><li><a href=#metadata_get class="table-of-contents__link toc-highlight">metadata_get</a><li><a href=#metadata_set class="table-of-contents__link toc-highlight">metadata_set</a><li><a href=#metadata_update class="table-of-contents__link toc-highlight">metadata_update</a><li><a href=#metadata_input class="table-of-contents__link toc-highlight">metadata_input</a></ul><li><a href=#settings class="table-of-contents__link toc-highlight">Settings</a><ul><li><a href=#list_settings class="table-of-contents__link toc-highlight">list_settings</a><li><a href=#get_all_settings class="table-of-contents__link toc-highlight">get_all_settings</a><li><a href=#get_setting-get_settings class="table-of-contents__link toc-highlight">get_setting, get_settings</a><li><a href=#set_setting class="table-of-contents__link toc-highlight">set_setting</a></ul><li><a href=#configuration class="table-of-contents__link toc-highlight">Configuration</a><ul><li><a href=#config_tool_names class="table-of-contents__link toc-highlight">config_tool_names</a><li><a href=#list_configs class="table-of-contents__link toc-highlight">list_configs</a><li><a href=#load_config class="table-of-contents__link toc-highlight">load_config</a><li><a href=#save_config class="table-of-contents__link toc-highlight">save_config</a><li><a href=#delete_config class="table-of-contents__link toc-highlight">delete_config</a></ul><li><a href=#offline-access class="table-of-contents__link toc-highlight">Offline Access</a><ul><li><a href=#initialize_offline_access class="table-of-contents__link toc-highlight">initialize_offline_access</a><li><a href=#offline_access_needed class="table-of-contents__link toc-highlight">offline_access_needed</a><li><a href=#set_offline_access class="table-of-contents__link toc-highlight">set_offline_access</a></ul></ul></div></div></div></div></main></div></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class=footer__title>Homepage</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://openc3.com target=_blank rel="noopener noreferrer" class=footer__link-item>Home</a></ul></div><div class="col footer__col"><div class=footer__title>Docs</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs>Documentation</a></ul></div><div class="col footer__col"><div class=footer__title>Community</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://www.linkedin.com/company/openc3 target=_blank rel="noopener noreferrer" class=footer__link-item>LinkedIn<svg width=13.5 height=13.5 aria-hidden=true viewBox="0 0 24 24" class=iconExternalLink_awgD><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></svg></a></ul></div><div class="col footer__col"><div class=footer__title>More</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://github.com/OpenC3/cosmos target=_blank rel="noopener noreferrer" class=footer__link-item>GitHub<svg width=13.5 height=13.5 aria-hidden=true viewBox="0 0 24 24" class=iconExternalLink_awgD><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></svg></a><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs/privacy>Privacy</a></ul></div></div><div class="footer__bottom text--center"><div class=footer__copyright>Copyright © 2025 OpenC3, Inc.</div></div></div></footer></div>