定位光标目标网关。

spotcot的Python项目详细描述


Screenshot of Spots in ATAK-Div Developer Edition.

spotcot是一个命令行实用程序,用于将Spot消息转换为 光标在目标(CoT)事件上。然后将事件转发到指定的UDP 主机:端口配对。在

可用于在ATAK、WinTAK&;等工具中显示Spot设备PLI; 雷普托克斯。见https://www.civtak.org/

需要Spot设备 需要Spot服务的XML提要功能。见https://login.findmespot.com/spot-main-web/myaccount/xmlfeed/create.html

安装

要求:

  1. 定位XML源ID('API密钥')
  2. 这个包裹。在

步骤:

命令行守护程序spotcot可以从此源树(A)安装,也可以从 Python包索引(PyPI)(B)。在

  1. 要从此源树安装:

    $ git checkout https://github.com/ampledata/spotcot.git
    $ cd spotcot/
    $ python setup.py install
    
  2. 要从PyPI安装:

    ^{pr2}$ 在

使用

spotcot守护程序有几个运行时参数:

$ spotcot -h
usage: spotcot [-h] -k API_KEY [-i INTERVAL] -C COT_HOST

optional arguments:
  -h, --help            show this help message and exit
  -k API_KEY, --api_key API_KEY
                        Spot API Key ("XML Feed Id")
  -i INTERVAL, --interval INTERVAL
                        Spot API Query Interval
  -C COT_HOST, --cot_host COT_HOST
                        Cursor-on-Target Host or Host:Port

对于最小操作,需要-kapi_KEY&;-C COT_HOST。在

生成状态

主人:

https://travis-ci.com/ampledata/spotcot.svg?branch=master

发展:

https://travis-ci.com/ampledata/spotcot.svg?branch=develop

作者

格雷格·阿尔布雷希特W2GMDoss@undef.net

http://ampledata.org/

许可证

Apache许可证,2.0版。有关详细信息,请参阅许可证。在

在目标上调试光标

公开可用的ATAK源代码是一些解析的很好的参考 ATAK Civ开发构建给我的错误,即无效CoT 收到的消息:丢失或无效的CoT事件和/或点属性。很多 很遗憾,错误被捕获到一个try/catch块中:

https://github.com/deptofdefense/AndroidTacticalAssaultKit-CIV/blob/6dc1941f45af3f9716e718dccebf42555a8c08fd/commoncommo/core/impl/cotmessage.cpp#L448

调试点消息

回答示例:

{
  "response": {
    "feedMessageResponse": {
      "count": 2,
      "feed": {
        "id": "0DHc3pHDeJlq4kz6bHx5jW1QfzKlsWt7W",
        "name": "spotcot",
        "description": "spotcot",
        "status": "ACTIVE",
        "usage": 0,
        "daysRange": 7,
        "detailedMessageShown": true,
        "type": "SHARED_PAGE"
      },
      "totalCount": 2,
      "activityCount": 0,
      "messages": {
        "message": [
          {
            "@clientUnixTime": "0",
            "id": 1480220691,
            "messengerId": "0-3032366",
            "messengerName": "gba Spot Gen 3",
            "unixTime": 1601691600,
            "messageType": "UNLIMITED-TRACK",
            "latitude": 37.7599,
            "longitude": -122.49768,
            "modelId": "SPOT3",
            "showCustomMsg": "Y",
            "dateTime": "2020-10-03T02:20:00+0000",
            "batteryState": "GOOD",
            "hidden": 0,
            "altitude": 23
          },
          {
            "@clientUnixTime": "0",
            "id": 1480218901,
            "messengerId": "0-3032366",
            "messengerName": "gba Spot Gen 3",
            "unixTime": 1601691300,
            "messageType": "UNLIMITED-TRACK",
            "latitude": 37.75999,
            "longitude": -122.49779,
            "modelId": "SPOT3",
            "showCustomMsg": "Y",
            "dateTime": "2020-10-03T02:15:00+0000",
            "batteryState": "GOOD",
            "hidden": 0,
            "altitude": -103
          }
        ]
      }
    }
  }
}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JList侦听器找不到符号   多点触摸跨平台java应用程序(Windows、Mac和Linux(Ubuntu)(可能是Android))   在UnitTest中找不到java类加载器资源   java当我尝试在Eclipse中运行我的minecraft mod时,我总是遇到这个错误,这是什么意思?   内部有一个同步块的静态方法,在java中阻止整个类?   不支持java操作:具有BillableStatus的费用在采购中应具有AccountBasedExpenseLineDetail行的CustomerRef   java运行时常量池GC集合   java无法解析配置“:app:\u debugApk”的所有依赖项。找不到名为“default”的配置   在GCP计算引擎中托管Neo4j的java   java如何从BroadcastReceiver更新片段选项卡?   线程“main”组织中的java异常。冬眠注释异常:@org。冬眠注释。表引用未知表:ProductForPractice   在Java/Groovy中嵌入处理   java Android REST教程/示例项目   java我可以在同一测试中在一个模拟器上启动应用程序,在另一个模拟器上启动移动浏览器吗?   java如何更改通知横幅的方向?   安卓 Java帮助实现Firebase授权   if else之后的rs.next()中出现java错误?