openc3-cosmos-tool-docs 6.0.2 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/tools/staticdocs/404.html +1 -1
  3. data/tools/staticdocs/assets/css/{styles.839a3ee9.css → styles.1de6b959.css} +1 -1
  4. data/tools/staticdocs/assets/images/arrayplot-ab4963f7ad4eb1d7ecc646065dd43b4816a06367fa5e07d58b8cf520deff931e.png +0 -0
  5. data/tools/staticdocs/assets/js/{26b8abb2.a9f9025d.js → 26b8abb2.7f8d4cb0.js} +1 -1
  6. data/tools/staticdocs/assets/js/{5205.07e5caf3.js → 5205.c6f31e57.js} +1 -1
  7. data/tools/staticdocs/assets/js/{5e3ed378.cc5e2748.js → 5e3ed378.8b51f7c0.js} +1 -1
  8. data/tools/staticdocs/assets/js/5fe211ef.63b46202.js +1 -0
  9. data/tools/staticdocs/assets/js/72c6d8a8.b6fcfc30.js +1 -0
  10. data/tools/staticdocs/assets/js/9424f0b3.5385d87f.js +1 -0
  11. data/tools/staticdocs/assets/js/{9d6e81d0.141ccd61.js → 9d6e81d0.28913d59.js} +1 -1
  12. data/tools/staticdocs/assets/js/a677c089.2512b608.js +1 -0
  13. data/tools/staticdocs/assets/js/aa6b6c1b.40e48e37.js +1 -0
  14. data/tools/staticdocs/assets/js/main.d3e77dd5.js +36 -0
  15. data/tools/staticdocs/assets/js/{runtime~main.91337aca.js → runtime~main.92ff792a.js} +1 -1
  16. data/tools/staticdocs/docs/configuration/accessors.html +1 -1
  17. data/tools/staticdocs/docs/configuration/command.html +11 -1
  18. data/tools/staticdocs/docs/configuration/format.html +1 -1
  19. data/tools/staticdocs/docs/configuration/interfaces.html +5 -1
  20. data/tools/staticdocs/docs/configuration/plugins.html +1 -1
  21. data/tools/staticdocs/docs/configuration/protocols.html +1 -1
  22. data/tools/staticdocs/docs/configuration/ssl-tls.html +1 -1
  23. data/tools/staticdocs/docs/configuration/table.html +11 -1
  24. data/tools/staticdocs/docs/configuration/target.html +1 -1
  25. data/tools/staticdocs/docs/configuration/telemetry-screens.html +60 -25
  26. data/tools/staticdocs/docs/configuration/telemetry.html +1 -1
  27. data/tools/staticdocs/docs/configuration.html +1 -1
  28. data/tools/staticdocs/docs/development/curl.html +1 -1
  29. data/tools/staticdocs/docs/development/developing.html +1 -1
  30. data/tools/staticdocs/docs/development/json-api.html +1 -1
  31. data/tools/staticdocs/docs/development/log-structure.html +1 -1
  32. data/tools/staticdocs/docs/development/roadmap.html +1 -1
  33. data/tools/staticdocs/docs/development/streaming-api.html +1 -1
  34. data/tools/staticdocs/docs/development/testing.html +1 -1
  35. data/tools/staticdocs/docs/development.html +1 -1
  36. data/tools/staticdocs/docs/getting-started/generators.html +1 -1
  37. data/tools/staticdocs/docs/getting-started/gettingstarted.html +1 -1
  38. data/tools/staticdocs/docs/getting-started/installation.html +1 -1
  39. data/tools/staticdocs/docs/getting-started/key_concepts.html +1 -1
  40. data/tools/staticdocs/docs/getting-started/podman.html +1 -1
  41. data/tools/staticdocs/docs/getting-started/requirements.html +1 -1
  42. data/tools/staticdocs/docs/getting-started/upgrading.html +1 -1
  43. data/tools/staticdocs/docs/getting-started.html +1 -1
  44. data/tools/staticdocs/docs/guides/bridges.html +1 -1
  45. data/tools/staticdocs/docs/guides/cfs.html +1 -1
  46. data/tools/staticdocs/docs/guides/custom-widgets.html +1 -1
  47. data/tools/staticdocs/docs/guides/exposing_microservices.html +1 -1
  48. data/tools/staticdocs/docs/guides/little-endian-bitfields.html +1 -1
  49. data/tools/staticdocs/docs/guides/local-mode.html +1 -1
  50. data/tools/staticdocs/docs/guides/logging.html +1 -1
  51. data/tools/staticdocs/docs/guides/monitoring.html +1 -1
  52. data/tools/staticdocs/docs/guides/performance.html +1 -1
  53. data/tools/staticdocs/docs/guides/raspberrypi.html +1 -1
  54. data/tools/staticdocs/docs/guides/script-writing.html +1 -1
  55. data/tools/staticdocs/docs/guides/scripting-api.html +496 -125
  56. data/tools/staticdocs/docs/guides.html +1 -1
  57. data/tools/staticdocs/docs/meta/contributing.html +1 -1
  58. data/tools/staticdocs/docs/meta/licenses.html +1 -1
  59. data/tools/staticdocs/docs/meta/philosophy.html +1 -1
  60. data/tools/staticdocs/docs/meta/xtce.html +1 -1
  61. data/tools/staticdocs/docs/meta.html +1 -1
  62. data/tools/staticdocs/docs/privacy.html +1 -1
  63. data/tools/staticdocs/docs/tools/admin.html +1 -1
  64. data/tools/staticdocs/docs/tools/autonomic.html +1 -1
  65. data/tools/staticdocs/docs/tools/bucket-explorer.html +1 -1
  66. data/tools/staticdocs/docs/tools/calendar.html +1 -1
  67. data/tools/staticdocs/docs/tools/cmd-sender.html +1 -1
  68. data/tools/staticdocs/docs/tools/cmd-tlm-server.html +1 -1
  69. data/tools/staticdocs/docs/tools/command_history.html +1 -1
  70. data/tools/staticdocs/docs/tools/data-extractor.html +1 -1
  71. data/tools/staticdocs/docs/tools/data-viewer.html +1 -1
  72. data/tools/staticdocs/docs/tools/handbooks.html +1 -1
  73. data/tools/staticdocs/docs/tools/limits-monitor.html +1 -1
  74. data/tools/staticdocs/docs/tools/packet-viewer.html +1 -1
  75. data/tools/staticdocs/docs/tools/script-runner.html +1 -1
  76. data/tools/staticdocs/docs/tools/table-manager.html +1 -1
  77. data/tools/staticdocs/docs/tools/tlm-grapher.html +1 -1
  78. data/tools/staticdocs/docs/tools/tlm-viewer.html +1 -1
  79. data/tools/staticdocs/docs/tools.html +1 -1
  80. data/tools/staticdocs/docs.html +1 -1
  81. data/tools/staticdocs/img/telemetry_viewer/widgets/arrayplot.png +0 -0
  82. data/tools/staticdocs/index.html +1 -1
  83. data/tools/staticdocs/lunr-index-1738736939408.json +1 -0
  84. data/tools/staticdocs/lunr-index.json +1 -1
  85. data/tools/staticdocs/markdown-page.html +1 -1
  86. data/tools/staticdocs/search-doc-1738736939408.json +1 -0
  87. data/tools/staticdocs/search-doc.json +1 -1
  88. metadata +18 -16
  89. data/tools/staticdocs/assets/js/5fe211ef.5a6390e4.js +0 -1
  90. data/tools/staticdocs/assets/js/72c6d8a8.10f0f9ec.js +0 -1
  91. data/tools/staticdocs/assets/js/9424f0b3.bc60f3d9.js +0 -1
  92. data/tools/staticdocs/assets/js/a677c089.7caa32f6.js +0 -1
  93. data/tools/staticdocs/assets/js/aa6b6c1b.72eac29d.js +0 -1
  94. data/tools/staticdocs/assets/js/main.ed84fc7e.js +0 -36
  95. data/tools/staticdocs/lunr-index-1736455916496.json +0 -1
  96. data/tools/staticdocs/search-doc-1736455916496.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/script-writing" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.7.0"><title data-rh=true>Script Writing 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/script-writing><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="Script Writing Guide | OpenC3 Docs"><meta data-rh=true name=description content="Key concepts and best practices for script writing"><meta data-rh=true property=og:description content="Key concepts and best practices for script writing"><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/script-writing><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing hreflang=x-default><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.839a3ee9.css><script src=/tools/staticdocs/assets/js/runtime~main.91337aca.js defer></script><script src=/tools/staticdocs/assets/js/main.ed84fc7e.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><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/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 menu__link--active" aria-current=page 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 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>Script Writing 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>Script Writing Guide</h1></header><h2 class="anchor anchorWithStickyNavbar_fF9Z" id=introduction>Introduction<a href=#introduction class=hash-link aria-label="Direct link to Introduction" title="Direct link to Introduction">​</a></h2>
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/script-writing" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.7.0"><title data-rh=true>Script Writing 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/script-writing><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="Script Writing Guide | OpenC3 Docs"><meta data-rh=true name=description content="Key concepts and best practices for script writing"><meta data-rh=true property=og:description content="Key concepts and best practices for script writing"><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/script-writing><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing hreflang=x-default><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1de6b959.css><script src=/tools/staticdocs/assets/js/runtime~main.92ff792a.js defer></script><script src=/tools/staticdocs/assets/js/main.d3e77dd5.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/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 menu__link--active" aria-current=page 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 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>Script Writing 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>Script Writing Guide</h1></header><h2 class="anchor anchorWithStickyNavbar_fF9Z" id=introduction>Introduction<a href=#introduction class=hash-link aria-label="Direct link to Introduction" title="Direct link to Introduction">​</a></h2>
2
2
  <p>This guide aims to provide the best practices for using the scripting capabilities provided by COSMOS. Scripts are used to automate a series of activities for operations or testing. The goal of this document is to ensure scripts are written that are simple, easy to understand, maintainable, and correct. Guidance on some of the key details of using the COSMOS Script Runner is also provided.</p>
3
3
  <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>
4
4
  <p>COSMOS supports both Ruby and Python for writing scripts. Ruby and Python are very similar scripting languages and most of this guide applies directly to both. Where examples are used, both a Ruby and Python example are given.</p>