@tak-ps/node-cot
    Preparing search index...

    Class DirectChat

    Convert to and from an XML CoT message

    A string/buffer containing the XML representation or the xml-js object tree

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    metadata: Record<string, unknown>
    path: string
    raw: {
        event: {
            _attributes: {
                access?: string;
                how?: string;
                opex?: string;
                qos?: string;
                stale: string;
                start: string;
                time: string;
                type: string;
                uid: string;
                version: string;
            };
            detail?: {
                __chat?: {
                    _attributes: {
                        chatroom: string;
                        groupOwner?: string;
                        id: string;
                        messageId?: string;
                        parent?: string;
                        senderCallsign: string;
                    };
                    chatgrp: any;
                };
                __forcedelete?: {};
                __geofence?: {
                    _attributes: {
                        boundingSphere?: number;
                        elevationMonitored?: string;
                        maxElevation?: string;
                        minElevation?: string;
                        monitor?: string;
                        tracking?: string;
                        trigger?: string;
                    };
                };
                __group?: { _attributes?: { name: string; role: string } };
                __milsym?: {
                    _attributes: { id: string };
                    unitmodifier?:
                        | { _attributes: { code: string }; _text?: string }
                        | { _attributes: { code: string }; _text?: string }[];
                };
                __routeinfo?: {
                    __navcues: {
                        __navcue: | {
                            _attributes: { id: ...; text: ...; voice: ... };
                            trigger: { _attributes: ... };
                        }[]
                        | {
                            _attributes: { id: string; text: string; voice: string };
                            trigger: { _attributes: { mode: ...; value: ... } };
                        };
                    };
                };
                __video?: {
                    _attributes?: {
                        sensor?: string;
                        spi?: string;
                        uid?: string;
                        url?: string;
                    };
                    ConnectionEntry?: {
                        _attributes: {
                            address: string;
                            alias?: string;
                            bufferTime?: number;
                            ignoreEmbeddedKLV?: boolean;
                            networkTimeout?: number;
                            path?: string;
                            port?: number;
                            protocol?: string;
                            roverPort?: number;
                            rtspReliable?: number;
                            uid: string;
                        };
                    };
                };
                "_flow-tags_"?: any;
                ackrequest?: {
                    _attributes: { ackrequested: boolean; tag: string; uid: string };
                };
                archive?: | { _attributes?: { value?: string } }
                | { _attributes?: { value?: string } }[];
                attachment_list?: { _attributes: { hashes: string } };
                bearing?: { _attributes: { value: number } };
                bearingUnits?: { _attributes: { value: number } };
                color?: { _attributes?: { argb?: number; value?: number } };
                contact?: {
                    _attributes: {
                        callsign?: string;
                        endpoint?: string;
                        name?: string;
                        phone?: string;
                    };
                };
                creator?: {
                    _attributes: {
                        callsign: string;
                        time: string;
                        type: string;
                        uid: string;
                    };
                };
                fileshare?: {
                    _attributes: {
                        filename: string;
                        name: string;
                        senderCallsign: string;
                        senderUid: string;
                        senderUrl: string;
                        sha256: string;
                        sizeInBytes: number;
                    };
                };
                fillColor?: { _attributes?: { value?: number } };
                inclination?: { _attributes: { value: number } };
                labels_on?: { _attributes?: { value?: boolean } };
                link?:
                    | {
                        _attributes: {
                            callsign?: string;
                            mime?: string;
                            parent_callsign?: string;
                            point?: string;
                            production_time?: string;
                            relation?: string;
                            remarks?: string;
                            type?: string;
                            uid?: string;
                            url?: string;
                        };
                    }
                    | {
                        _attributes: {
                            callsign?: string;
                            mime?: string;
                            parent_callsign?: string;
                            point?: string;
                            production_time?: string;
                            relation?: string;
                            remarks?: string;
                            type?: string;
                            uid?: string;
                            url?: string;
                        };
                    }[];
                link_attr?: {
                    _attributes: {
                        color?: number;
                        direction?: "Infil"
                        | "Exfil";
                        method: "Driving" | "Walking" | "Flying" | "Swimming" | "Watercraft";
                        order: "Ascending Check Points" | "Descending Check Points";
                        planningmethod?: "Infil" | "Exfil";
                        prefix: string;
                        routetype: "Primary" | "Secondary";
                        stroke?: string;
                        style?: string;
                        type?: string;
                    };
                };
                marti?: {
                    _attributes?: {};
                    dest?: | {
                        _attributes: {
                            after?: string;
                            callsign?: string;
                            group?: string;
                            mission?: string;
                            "mission-guid"?: string;
                            path?: string;
                            uid?: string;
                        };
                    }
                    | {
                        _attributes: {
                            after?: (...)
                            | (...);
                            callsign?: (...) | (...);
                            group?: (...) | (...);
                            mission?: (...) | (...);
                            "mission-guid"?: (...) | (...);
                            path?: (...) | (...);
                            uid?: (...) | (...);
                        };
                    }[];
                };
                mission?: {
                    _attributes?: {
                        authorUid?: string;
                        guid?: string;
                        name?: string;
                        tool?: string;
                        type?: string;
                    };
                    MissionChanges?: {
                        MissionChange: | {
                            contentUid: { _text: ... };
                            creatorUid: { _text?: ... };
                            details: { _attributes: ...; location?: ... };
                            isFederatedChange: { _text: ... };
                            missionName: { _text: ... };
                            timestamp: { _text: ... };
                            type: { _text: ... };
                        }
                        | {
                            contentUid: ...;
                            creatorUid: ...;
                            details: ...;
                            isFederatedChange: ...;
                            missionName: ...;
                            timestamp: ...;
                            type: ...;
                        }[];
                    };
                    missionLayer?: {
                        name?: { _text: string };
                        parentUid?: { _text: string };
                        type?: { _text: string };
                        uid?: { _text: string };
                    };
                };
                northRef?: { _attributes: { value: number } };
                precisionlocation?: {
                    _attributes: { altsrc?: string; geopointsrc?: string };
                };
                range?: { _attributes: { value: number } };
                rangeUnits?: { _attributes: { value: number } };
                remarks?: {
                    _attributes?: { source?: string; time?: string; to?: string };
                    _text?: string;
                };
                sensor?: {
                    _attributes: {
                        azimuth?: number;
                        displayMagneticReference?: number;
                        elevation?: number;
                        fov?: number;
                        fovAlpha?: number;
                        fovBlue?: number;
                        fovGreen?: number;
                        fovRed?: number;
                        hideFov?: boolean;
                        model?: string;
                        north?: number;
                        range?: number;
                        rangeLines?: number;
                        rangeLineStrokeColor?: number;
                        rangeLineStrokeWeight?: number;
                        roll?: number;
                        strokeColor?: number;
                        strokeWeight?: number;
                        type?: string;
                        version?: string;
                        vfov?: number;
                    };
                };
                shape?: {
                    ellipse?: {
                        _attributes: { angle: number; major: number; minor: number };
                    };
                    polyline?: {
                        _attributes?: {
                            closed?: (...)
                            | (...)
                            | (...);
                            color?: (...) | (...);
                            fillColor?: (...) | (...);
                        };
                        vertex?: | { _attributes: { lat: ...; lon: ... } }
                        | { _attributes: ... }[];
                    };
                };
                status?: { _attributes: { battery?: string; readiness?: string } };
                strokeColor?: { _attributes?: { value?: number } };
                strokeStyle?: { _attributes?: { value?: string } };
                strokeWeight?: { _attributes?: { value?: number } };
                TakControl?: {
                    TakProtocolSupport?: { _attributes?: { version?: (...) | (...) } };
                    TakServerVersionInfo?: {
                        _attributes?: { serverVersion?: (...) | (...) };
                    };
                };
                takv?: {
                    _attributes: {
                        device?: string;
                        os?: string;
                        platform?: string;
                        version?: string;
                    };
                };
                tog?: { _attributes?: { enabled?: string } };
                track?: {
                    _attributes?: {
                        course?: string;
                        eCourse?: string;
                        eSlope?: string;
                        eSpeed?: string;
                        slope?: string;
                        speed?: string;
                    };
                };
                uid?: { _attributes: { Droid: string } };
                usericon?: { _attributes: { iconsetpath: string } };
            };
            point: {
                _attributes: {
                    ce: string
                    | number;
                    hae: number;
                    lat: number;
                    le: string | number;
                    lon: number;
                };
            };
        };
    }

    Raw XML-JS representation of CoT

    Methods

    • Add a given Dest tag to a CoT

      Parameters

      • dest: {
            after?: string;
            callsign?: string;
            group?: string;
            mission?: string;
            "mission-guid"?: string;
            path?: string;
            uid?: string;
        }

      Returns default

    • Parameters

      • link: {
            callsign?: string;
            mime?: string;
            parent_callsign?: string;
            point?: string;
            production_time?: string;
            relation?: string;
            remarks?: string;
            type?: string;
            uid?: string;
            url?: string;
        }

      Returns default

    • Parameters

      • video: { sensor?: string; spi?: string; uid?: string; url?: string }
      • Optionalconnection: {
            address: string;
            alias?: string;
            bufferTime?: number;
            ignoreEmbeddedKLV?: boolean;
            networkTimeout?: number;
            path?: string;
            port?: number;
            protocol?: string;
            roverPort?: number;
            rtspReliable?: number;
            uid: string;
        }

      Returns default

    • Returns or sets the Archived State of the CoT

      Parameters

      • Optionalarchived: boolean

      Returns boolean

    • Returns or sets the Callsign of the CoT

      Parameters

      • Optionalcallsign: string

        Optional Callsign to set

      Returns string

    • Parameters

      • Optionalcreator: { callsign: string; time: undefined | string | Date; type: string; uid: string }

      Returns undefined | { callsign: string; time: string; type: string; uid: string }

    • Return Detail Object of CoT or create one if it doesn't yet exist and pass a reference

      Returns {
          __chat?: {
              _attributes: {
                  chatroom: string;
                  groupOwner?: string;
                  id: string;
                  messageId?: string;
                  parent?: string;
                  senderCallsign: string;
              };
              chatgrp: any;
          };
          __forcedelete?: {};
          __geofence?: {
              _attributes: {
                  boundingSphere?: number;
                  elevationMonitored?: string;
                  maxElevation?: string;
                  minElevation?: string;
                  monitor?: string;
                  tracking?: string;
                  trigger?: string;
              };
          };
          __group?: { _attributes?: { name: string; role: string } };
          __milsym?: {
              _attributes: { id: string };
              unitmodifier?:
                  | { _attributes: { code: string }; _text?: string }
                  | { _attributes: { code: string }; _text?: string }[];
          };
          __routeinfo?: {
              __navcues: {
                  __navcue: | {
                      _attributes: { id: string; text: string; voice: string };
                      trigger: { _attributes: { mode: string; value: string } };
                  }[]
                  | {
                      _attributes: { id: string; text: string; voice: string };
                      trigger: { _attributes: { mode: string; value: string } };
                  };
              };
          };
          __video?: {
              _attributes?: {
                  sensor?: string;
                  spi?: string;
                  uid?: string;
                  url?: string;
              };
              ConnectionEntry?: {
                  _attributes: {
                      address: string;
                      alias?: string;
                      bufferTime?: number;
                      ignoreEmbeddedKLV?: boolean;
                      networkTimeout?: number;
                      path?: string;
                      port?: number;
                      protocol?: string;
                      roverPort?: number;
                      rtspReliable?: number;
                      uid: string;
                  };
              };
          };
          "_flow-tags_"?: any;
          ackrequest?: {
              _attributes: { ackrequested: boolean; tag: string; uid: string };
          };
          archive?: | { _attributes?: { value?: string } }
          | { _attributes?: { value?: string } }[];
          attachment_list?: { _attributes: { hashes: string } };
          bearing?: { _attributes: { value: number } };
          bearingUnits?: { _attributes: { value: number } };
          color?: { _attributes?: { argb?: number; value?: number } };
          contact?: {
              _attributes: {
                  callsign?: string;
                  endpoint?: string;
                  name?: string;
                  phone?: string;
              };
          };
          creator?: {
              _attributes: {
                  callsign: string;
                  time: string;
                  type: string;
                  uid: string;
              };
          };
          fileshare?: {
              _attributes: {
                  filename: string;
                  name: string;
                  senderCallsign: string;
                  senderUid: string;
                  senderUrl: string;
                  sha256: string;
                  sizeInBytes: number;
              };
          };
          fillColor?: { _attributes?: { value?: number } };
          inclination?: { _attributes: { value: number } };
          labels_on?: { _attributes?: { value?: boolean } };
          link?:
              | {
                  _attributes: {
                      callsign?: string;
                      mime?: string;
                      parent_callsign?: string;
                      point?: string;
                      production_time?: string;
                      relation?: string;
                      remarks?: string;
                      type?: string;
                      uid?: string;
                      url?: string;
                  };
              }
              | {
                  _attributes: {
                      callsign?: string;
                      mime?: string;
                      parent_callsign?: string;
                      point?: string;
                      production_time?: string;
                      relation?: string;
                      remarks?: string;
                      type?: string;
                      uid?: string;
                      url?: string;
                  };
              }[];
          link_attr?: {
              _attributes: {
                  color?: number;
                  direction?: "Infil"
                  | "Exfil";
                  method: "Driving" | "Walking" | "Flying" | "Swimming" | "Watercraft";
                  order: "Ascending Check Points" | "Descending Check Points";
                  planningmethod?: "Infil" | "Exfil";
                  prefix: string;
                  routetype: "Primary" | "Secondary";
                  stroke?: string;
                  style?: string;
                  type?: string;
              };
          };
          marti?: {
              _attributes?: {};
              dest?: | {
                  _attributes: {
                      after?: string;
                      callsign?: string;
                      group?: string;
                      mission?: string;
                      "mission-guid"?: string;
                      path?: string;
                      uid?: string;
                  };
              }
              | {
                  _attributes: {
                      after?: string;
                      callsign?: string;
                      group?: string;
                      mission?: string;
                      "mission-guid"?: string;
                      path?: string;
                      uid?: string;
                  };
              }[];
          };
          mission?: {
              _attributes?: {
                  authorUid?: string;
                  guid?: string;
                  name?: string;
                  tool?: string;
                  type?: string;
              };
              MissionChanges?: {
                  MissionChange: | {
                      contentUid: { _text: string };
                      creatorUid: { _text?: string };
                      details: {
                          _attributes: { callsign?: string; color?: string; type: string };
                          location?: { _attributes: { lat: ...; lon: ... } };
                      };
                      isFederatedChange: { _text: string };
                      missionName: { _text: string };
                      timestamp: { _text: string };
                      type: { _text: string };
                  }
                  | {
                      contentUid: { _text: string };
                      creatorUid: { _text?: string };
                      details: {
                          _attributes: {
                              callsign?: (...) | (...);
                              color?: (...) | (...);
                              type: string;
                          };
                          location?: { _attributes: ... };
                      };
                      isFederatedChange: { _text: string };
                      missionName: { _text: string };
                      timestamp: { _text: string };
                      type: { _text: string };
                  }[];
              };
              missionLayer?: {
                  name?: { _text: string };
                  parentUid?: { _text: string };
                  type?: { _text: string };
                  uid?: { _text: string };
              };
          };
          northRef?: { _attributes: { value: number } };
          precisionlocation?: {
              _attributes: { altsrc?: string; geopointsrc?: string };
          };
          range?: { _attributes: { value: number } };
          rangeUnits?: { _attributes: { value: number } };
          remarks?: {
              _attributes?: { source?: string; time?: string; to?: string };
              _text?: string;
          };
          sensor?: {
              _attributes: {
                  azimuth?: number;
                  displayMagneticReference?: number;
                  elevation?: number;
                  fov?: number;
                  fovAlpha?: number;
                  fovBlue?: number;
                  fovGreen?: number;
                  fovRed?: number;
                  hideFov?: boolean;
                  model?: string;
                  north?: number;
                  range?: number;
                  rangeLines?: number;
                  rangeLineStrokeColor?: number;
                  rangeLineStrokeWeight?: number;
                  roll?: number;
                  strokeColor?: number;
                  strokeWeight?: number;
                  type?: string;
                  version?: string;
                  vfov?: number;
              };
          };
          shape?: {
              ellipse?: {
                  _attributes: { angle: number; major: number; minor: number };
              };
              polyline?: {
                  _attributes?: { closed?: boolean; color?: string; fillColor?: string };
                  vertex?:
                      | { _attributes: { lat: number; lon: number } }
                      | { _attributes: { lat: number; lon: number } }[];
              };
          };
          status?: { _attributes: { battery?: string; readiness?: string } };
          strokeColor?: { _attributes?: { value?: number } };
          strokeStyle?: { _attributes?: { value?: string } };
          strokeWeight?: { _attributes?: { value?: number } };
          TakControl?: {
              TakProtocolSupport?: { _attributes?: { version?: string } };
              TakServerVersionInfo?: { _attributes?: { serverVersion?: string } };
          };
          takv?: {
              _attributes: {
                  device?: string;
                  os?: string;
                  platform?: string;
                  version?: string;
              };
          };
          tog?: { _attributes?: { enabled?: string } };
          track?: {
              _attributes?: {
                  course?: string;
                  eCourse?: string;
                  eSlope?: string;
                  eSpeed?: string;
                  slope?: string;
                  speed?: string;
              };
          };
          uid?: { _attributes: { Droid: string } };
          usericon?: { _attributes: { iconsetpath: string } };
      }

    • Determines if the CoT message represents an Element

      Returns boolean

    • Determines if the CoT message represents a Chat Message

      Returns boolean

    • Determines if the CoT message represents a Faker Element

      Returns boolean

    • Determines if the CoT message represents a Friendly Element

      Returns boolean

    • Determines if the CoT message represents a Ground Element

      Returns boolean

    • Determines if the CoT message represents a Joker Element

      Returns boolean

    • Determines if the CoT message represents a UAV Element

      Returns boolean

    • Parameters

      • Optionalposition: number[]

      Returns number[]

    • Parameters

      • Optionalsensor: {
            azimuth?: number;
            displayMagneticReference?: number;
            elevation?: number;
            fov?: number;
            fovAlpha?: number;
            fovBlue?: number;
            fovGreen?: number;
            fovRed?: number;
            hideFov?: boolean;
            model?: string;
            north?: number;
            range?: number;
            rangeLines?: number;
            rangeLineStrokeColor?: number;
            rangeLineStrokeWeight?: number;
            roll?: number;
            strokeColor?: number;
            strokeWeight?: number;
            type?: string;
            version?: string;
            vfov?: number;
        }

      Returns null | { coordinates: number[][][]; type: "Polygon" }

    • Returns or sets the Callsign of the CoT

      Parameters

      • Optionaltype: string

      Returns string

    • Returns or sets the UID of the CoT

      Parameters

      • Optionaluid: string

      Returns string