inrcot


Nameinrcot JSON
Version 5.2.0 PyPI version JSON
download
home_pagehttps://github.com/ampledata/inrcot
SummaryinReach Cursor on Target Gateway.
upload_time2023-01-28 07:46:47
maintainer
docs_urlNone
authorGreg Albrecht
requires_python
licenseApache License, Version 2.0
keywords satellite sar search and rescue cursor on target atak tak cot wintak itak tak server
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Garmin inReach to Cursor on Target Gateway
******************************************

.. image:: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/az-ccso-sar.jpg
   :alt: Screenshot of INRCOT being used on a Search & Rescue mission in Arizona.
   :target: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/az-ccso-sar.jpg

* Pictured: Screenshot of INRCOT being used on a Search & Rescue mission in Arizona.

The inReach to Cursor on Target Gateway (INRCOT) transforms Garmin inReach
position messages into Cursor on Target (CoT) for display on TAK Products such as 
ATAK, WinTAK, iTAK, et al. Single or multi-device feeds are supported.

Other situational awareness products, including as RaptorX, TAKX & COPERS have been 
tested.

INRCOT requires a `Garmin inReach <https://discover.garmin.com/en-US/inreach/personal/>`_ 
device with service.

.. image:: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/inrcot-conop.png
   :alt: Diagram of INRCOT's Concept of Operations (CONOP).
   :target: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/inrcot-conop.png

* Pictured: Diagram of INRCOT's Concept of Operations (CONOP).


Support Development
===================

.. image:: https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png
    :target: https://www.buymeacoffee.com/ampledata
    :alt: Support Development: Buy me a coffee!


Use Cases
=========

There are numerous applications for satellite based position location information, 
including:

1. Wildland fire unit tracking
2. Blue Force Tracking
3. Search & Rescue (SAR)
4. Partner Forces PLI
5. Asset Tracking
6. Data diode, CDS & cybersecurity considerations

See also Section 1114.d of the `Dingell Act <https://www.congress.gov/bill/116th-congress/senate-bill/47/text>`_::

    Location Systems for Wildland Firefighters.--
    (1) In general.--Not later than 2 years after the date of
        enactment of this Act, subject to the availability of
        appropriations, the Secretaries, in coordination with State
        wildland firefighting agencies, shall jointly develop and
        operate a tracking system (referred to in this subsection as the
        ``system'') to remotely locate the positions of fire resources
        for use by wildland firefighters, including, at a minimum, any
        fire resources assigned to Federal type 1 wildland fire incident
        management teams.


Requirements
============

INRCOT uses the Garmin Explore "MapShare" feature.

1. Login to Garmin Explore: https://explore.garmin.com/
2. Browse to the "MY INFO" page: https://explore.garmin.com/Inbox
3. Click "Social".
4. Under MapShare > Enable MapShare click to enable 'MapShare: On'.
5. Click "Feeds" and note the "Raw KML Data" URL, we'll use this URL, write it down.

For more information on inReach KML Feeds see: https://support.garmin.com/en-US/?faq=tdlDCyo1fJ5UxjUbA9rMY8


Install
=======

INRCOT functionality is provided via a command-line tool named ``inrcot``. 
To install ``inrcot``:

Debian, Ubuntu, Raspbian, Raspberry OS::
    
    $ sudo apt update
    $ wget https://github.com/ampledata/pytak/releases/latest/download/python3-pytak_latest_all.deb
    $ sudo apt install -f ./python3-pytak_latest_all.deb
    $ wget https://github.com/ampledata/inrcot/releases/latest/download/python3-inrcot_latest_all.deb
    $ sudo apt install -f ./python3-inrcot_latest_all.deb

CentOS, et al::

    $ sudo python3 -m pip install inrcot

Install from source::
    
    $ git clone https://github.com/ampledata/inrcot.git
    $ cd inrcot/
    $ python3 setup.py install


Usage
=====

The ``inrcot`` program has two command-line arguments::

    $ inrcot -h
    usage: inrcot [-h] [-c CONFIG_FILE] [-p PREF_PACKAGE]

    optional arguments:
    -h, --help            show this help message and exit
    -c CONFIG_FILE, --CONFIG_FILE CONFIG_FILE
                            Optional configuration file. Default: config.ini
    -p PREF_PACKAGE, --PREF_PACKAGE PREF_PACKAGE
                            Optional connection preferences package zip file (aka data package).


Configuration
=============

Configuration parameters can be specified either via environment variables or in
a INI-stile configuration file. An example configuration file, click here for an 
example configuration file `example-config.ini <https://github.com/ampledata/inrcot/blob/main/example-config.ini>`_.

Global Config Parameters:

* **POLL_INTERVAL**: How many seconds between checking for new messages at the Spot API? Default: ``120`` (seconds).
* **COT_STALE**: How many seconds until CoT is stale? Default: ``600`` (seconds)
* **COT_TYPE**: CoT Type. Default: ``a-f-g-e-s``

For each feed (1 inReach = 1 feed, multiple feeds supported), these config params can be set:

* **FEED_URL**: URL to the MapShare KML.
* **COT_STALE**: How many seconds until CoT is stale? Default: ``600`` (seconds)
* **COT_TYPE**: CoT Type. Default: ``a-f-g-e-s``
* **COT_NAME**: CoT Callsign. Defaults to the MapShare KML Placemark name.
* **COT_ICON**: CoT User Icon. If set, will set the CoT ``usericon`` element, for use with custom TAK icon sets.
* **FEED_USERNAME**: MapShare username, for use with protected MapShare.
* **FEED_PASSWORD**: MapShare password, for use with protected MapShare.

TLS & other configuration parameters available via `PyTAK <https://github.com/ampledata/pytak#configuration-parameters>`_.


Example Configurations
======================

An example config::

    [inrcot]
    COT_URL = tcp://takserver.example.com:8088
    POLL_INTERVAL = 120

    [inrcot_feed_aaa]
    FEED_URL = https://share.garmin.com/Feed/Share/aaa

Multiple feeds can be added by creating multiple `inrcot_feed` sections::

    [inrcot]
    COT_URL = tcp://takserver.example.com:8088
    POLL_INTERVAL = 120

    [inrcot_feed_xxx]
    FEED_URL = https://share.garmin.com/Feed/Share/xxx

    [inrcot_feed_yyy]
    FEED_URL = https://share.garmin.com/Feed/Share/yyy

Individual feeds CoT output can be customized as well::

    [inrcot]
    COT_URL = tcp://takserver.example.com:8088
    POLL_INTERVAL = 120

    [inrcot_feed_zzz]
    FEED_URL = https://share.garmin.com/Feed/Share/zzz
    COT_TYPE = a-f-G-U-C
    COT_STALE = 600
    COT_NAME = Team Lead
    COT_ICON = my_package/team_lead.png

Protected feeds are also supported::

    [inrcot]
    COT_URL = tcp://takserver.example.com:8088
    POLL_INTERVAL = 120

    [inrcot_feed_ppp]
    FEED_URL = https://share.garmin.com/Feed/Share/ppp
    FEED_USERNAME = secretsquirrel
    FEED_PASSWORD = supersecret



Source
======
INRCOT Source can be found on Github: https://github.com/ampledata/inrcot


Author
======
INRCOT is written and maintained by Greg Albrecht W2GMD oss@undef.net

https://ampledata.org/


Copyright
=========
INRCOT is Copyright 2023 Greg Albrecht


License
=======
Copyright 2023 Greg Albrecht <oss@undef.net>

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ampledata/inrcot",
    "name": "inrcot",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "Satellite,SAR,Search and Rescue,Cursor on Target,ATAK,TAK,CoT,WinTAK,iTAK,TAK Server",
    "author": "Greg Albrecht",
    "author_email": "oss@undef.net",
    "download_url": "https://files.pythonhosted.org/packages/47/50/7f9aaf33d0e69c9d987d31554f31b99034714777c01460343508df6e49ac/inrcot-5.2.0.tar.gz",
    "platform": null,
    "description": "Garmin inReach to Cursor on Target Gateway\n******************************************\n\n.. image:: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/az-ccso-sar.jpg\n   :alt: Screenshot of INRCOT being used on a Search & Rescue mission in Arizona.\n   :target: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/az-ccso-sar.jpg\n\n* Pictured: Screenshot of INRCOT being used on a Search & Rescue mission in Arizona.\n\nThe inReach to Cursor on Target Gateway (INRCOT) transforms Garmin inReach\nposition messages into Cursor on Target (CoT) for display on TAK Products such as \nATAK, WinTAK, iTAK, et al. Single or multi-device feeds are supported.\n\nOther situational awareness products, including as RaptorX, TAKX & COPERS have been \ntested.\n\nINRCOT requires a `Garmin inReach <https://discover.garmin.com/en-US/inreach/personal/>`_ \ndevice with service.\n\n.. image:: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/inrcot-conop.png\n   :alt: Diagram of INRCOT's Concept of Operations (CONOP).\n   :target: https://raw.githubusercontent.com/ampledata/inrcot/main/docs/inrcot-conop.png\n\n* Pictured: Diagram of INRCOT's Concept of Operations (CONOP).\n\n\nSupport Development\n===================\n\n.. image:: https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png\n    :target: https://www.buymeacoffee.com/ampledata\n    :alt: Support Development: Buy me a coffee!\n\n\nUse Cases\n=========\n\nThere are numerous applications for satellite based position location information, \nincluding:\n\n1. Wildland fire unit tracking\n2. Blue Force Tracking\n3. Search & Rescue (SAR)\n4. Partner Forces PLI\n5. Asset Tracking\n6. Data diode, CDS & cybersecurity considerations\n\nSee also Section 1114.d of the `Dingell Act <https://www.congress.gov/bill/116th-congress/senate-bill/47/text>`_::\n\n    Location Systems for Wildland Firefighters.--\n    (1) In general.--Not later than 2 years after the date of\n        enactment of this Act, subject to the availability of\n        appropriations, the Secretaries, in coordination with State\n        wildland firefighting agencies, shall jointly develop and\n        operate a tracking system (referred to in this subsection as the\n        ``system'') to remotely locate the positions of fire resources\n        for use by wildland firefighters, including, at a minimum, any\n        fire resources assigned to Federal type 1 wildland fire incident\n        management teams.\n\n\nRequirements\n============\n\nINRCOT uses the Garmin Explore \"MapShare\" feature.\n\n1. Login to Garmin Explore: https://explore.garmin.com/\n2. Browse to the \"MY INFO\" page: https://explore.garmin.com/Inbox\n3. Click \"Social\".\n4. Under MapShare > Enable MapShare click to enable 'MapShare: On'.\n5. Click \"Feeds\" and note the \"Raw KML Data\" URL, we'll use this URL, write it down.\n\nFor more information on inReach KML Feeds see: https://support.garmin.com/en-US/?faq=tdlDCyo1fJ5UxjUbA9rMY8\n\n\nInstall\n=======\n\nINRCOT functionality is provided via a command-line tool named ``inrcot``. \nTo install ``inrcot``:\n\nDebian, Ubuntu, Raspbian, Raspberry OS::\n    \n    $ sudo apt update\n    $ wget https://github.com/ampledata/pytak/releases/latest/download/python3-pytak_latest_all.deb\n    $ sudo apt install -f ./python3-pytak_latest_all.deb\n    $ wget https://github.com/ampledata/inrcot/releases/latest/download/python3-inrcot_latest_all.deb\n    $ sudo apt install -f ./python3-inrcot_latest_all.deb\n\nCentOS, et al::\n\n    $ sudo python3 -m pip install inrcot\n\nInstall from source::\n    \n    $ git clone https://github.com/ampledata/inrcot.git\n    $ cd inrcot/\n    $ python3 setup.py install\n\n\nUsage\n=====\n\nThe ``inrcot`` program has two command-line arguments::\n\n    $ inrcot -h\n    usage: inrcot [-h] [-c CONFIG_FILE] [-p PREF_PACKAGE]\n\n    optional arguments:\n    -h, --help            show this help message and exit\n    -c CONFIG_FILE, --CONFIG_FILE CONFIG_FILE\n                            Optional configuration file. Default: config.ini\n    -p PREF_PACKAGE, --PREF_PACKAGE PREF_PACKAGE\n                            Optional connection preferences package zip file (aka data package).\n\n\nConfiguration\n=============\n\nConfiguration parameters can be specified either via environment variables or in\na INI-stile configuration file. An example configuration file, click here for an \nexample configuration file `example-config.ini <https://github.com/ampledata/inrcot/blob/main/example-config.ini>`_.\n\nGlobal Config Parameters:\n\n* **POLL_INTERVAL**: How many seconds between checking for new messages at the Spot API? Default: ``120`` (seconds).\n* **COT_STALE**: How many seconds until CoT is stale? Default: ``600`` (seconds)\n* **COT_TYPE**: CoT Type. Default: ``a-f-g-e-s``\n\nFor each feed (1 inReach = 1 feed, multiple feeds supported), these config params can be set:\n\n* **FEED_URL**: URL to the MapShare KML.\n* **COT_STALE**: How many seconds until CoT is stale? Default: ``600`` (seconds)\n* **COT_TYPE**: CoT Type. Default: ``a-f-g-e-s``\n* **COT_NAME**: CoT Callsign. Defaults to the MapShare KML Placemark name.\n* **COT_ICON**: CoT User Icon. If set, will set the CoT ``usericon`` element, for use with custom TAK icon sets.\n* **FEED_USERNAME**: MapShare username, for use with protected MapShare.\n* **FEED_PASSWORD**: MapShare password, for use with protected MapShare.\n\nTLS & other configuration parameters available via `PyTAK <https://github.com/ampledata/pytak#configuration-parameters>`_.\n\n\nExample Configurations\n======================\n\nAn example config::\n\n    [inrcot]\n    COT_URL = tcp://takserver.example.com:8088\n    POLL_INTERVAL = 120\n\n    [inrcot_feed_aaa]\n    FEED_URL = https://share.garmin.com/Feed/Share/aaa\n\nMultiple feeds can be added by creating multiple `inrcot_feed` sections::\n\n    [inrcot]\n    COT_URL = tcp://takserver.example.com:8088\n    POLL_INTERVAL = 120\n\n    [inrcot_feed_xxx]\n    FEED_URL = https://share.garmin.com/Feed/Share/xxx\n\n    [inrcot_feed_yyy]\n    FEED_URL = https://share.garmin.com/Feed/Share/yyy\n\nIndividual feeds CoT output can be customized as well::\n\n    [inrcot]\n    COT_URL = tcp://takserver.example.com:8088\n    POLL_INTERVAL = 120\n\n    [inrcot_feed_zzz]\n    FEED_URL = https://share.garmin.com/Feed/Share/zzz\n    COT_TYPE = a-f-G-U-C\n    COT_STALE = 600\n    COT_NAME = Team Lead\n    COT_ICON = my_package/team_lead.png\n\nProtected feeds are also supported::\n\n    [inrcot]\n    COT_URL = tcp://takserver.example.com:8088\n    POLL_INTERVAL = 120\n\n    [inrcot_feed_ppp]\n    FEED_URL = https://share.garmin.com/Feed/Share/ppp\n    FEED_USERNAME = secretsquirrel\n    FEED_PASSWORD = supersecret\n\n\n\nSource\n======\nINRCOT Source can be found on Github: https://github.com/ampledata/inrcot\n\n\nAuthor\n======\nINRCOT is written and maintained by Greg Albrecht W2GMD oss@undef.net\n\nhttps://ampledata.org/\n\n\nCopyright\n=========\nINRCOT is Copyright 2023 Greg Albrecht\n\n\nLicense\n=======\nCopyright 2023 Greg Albrecht <oss@undef.net>\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
    "bugtrack_url": null,
    "license": "Apache License, Version 2.0",
    "summary": "inReach Cursor on Target Gateway.",
    "version": "5.2.0",
    "split_keywords": [
        "satellite",
        "sar",
        "search and rescue",
        "cursor on target",
        "atak",
        "tak",
        "cot",
        "wintak",
        "itak",
        "tak server"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e27ae256206e4a0e34ccee4892a8deb05dba678051752f66a5b1f176c4446b15",
                "md5": "87c36c97e64cd7ed95d83b161c9b1be0",
                "sha256": "9196dfe674e4a57c781f995e5850e12f94adaca078149ce234234f970d9f7869"
            },
            "downloads": -1,
            "filename": "inrcot-5.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "87c36c97e64cd7ed95d83b161c9b1be0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 11907,
            "upload_time": "2023-01-28T07:46:46",
            "upload_time_iso_8601": "2023-01-28T07:46:46.239495Z",
            "url": "https://files.pythonhosted.org/packages/e2/7a/e256206e4a0e34ccee4892a8deb05dba678051752f66a5b1f176c4446b15/inrcot-5.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "47507f9aaf33d0e69c9d987d31554f31b99034714777c01460343508df6e49ac",
                "md5": "200592c0fa062218f67ff1b8888fd64d",
                "sha256": "20272440a232ce213433e2af60a2ef9ffe2ec58563be9e27dd32d11791656633"
            },
            "downloads": -1,
            "filename": "inrcot-5.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "200592c0fa062218f67ff1b8888fd64d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 11457,
            "upload_time": "2023-01-28T07:46:47",
            "upload_time_iso_8601": "2023-01-28T07:46:47.326423Z",
            "url": "https://files.pythonhosted.org/packages/47/50/7f9aaf33d0e69c9d987d31554f31b99034714777c01460343508df6e49ac/inrcot-5.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-28 07:46:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "ampledata",
    "github_project": "inrcot",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "inrcot"
}
        
Elapsed time: 0.03428s