I am receiving a protobuff message from ATAK device which I desrialized using takprotobuf package from python and looks like below:
takControl { } cotEvent { type: "b-m-r" uid:
"bc3464f1-6711-4eab-a257-9b00f243cccb" sendTime: 1662761401195
startTime: 1662761401195 staleTime: 1662847801195 ce: 9999999.0
le: 9999999.0 detail { xmlDetail: " <link uid="c2ddd7ad-eb62-4726-a898-db7171afa177" callsign="Route 1 SP" type="b-m-p-w" point="52.474645,-0.757536,78.284" remarks="" relation="c"/> <link uid="a94fcebc-0951-4f57-b2c8-ecd40bd2d8b9" callsign="" type="b-m-p-c" point="51.229,-0.720766,61.425" remarks="" relation="c"/> <link uid="a8836bff-ec09-4b67-a7d5-71a97b2a7848" callsign="" type="b-m-p-c" point="51.017455,-2.017906,63.404" remarks="" relation="c"/> <link uid="b1e7fa5c-3fd3-4bf0-91a1-e03e78179db0" callsign="" type="b-m-p-c" point="51.590548,-2.627882,111.193" remarks="" relation="c"/> <link uid="fd68d97f-11bd-46b1-bdb6-d5464ad45ad8" callsign="" type="b-m-p-c" point="52.040579,-2.011704,79.741" remarks="" relation="c"/> <link uid="c11c067c-e432-46b2-9934-e931f55dbc6e" callsign="" type="b-m-p-c" point="52.101931,-1.0306,78.403" remarks="" relation="c"/> <link uid="08dfb4a1-5ea9-4e12-92b3-f12f910d0223" callsign="TGT" type="b-m-p-w" point="52.389471,-1.495847,64.314" remarks="" relation="c"/> <link_attr planningmethod="Infil" color="-35072" method="Flying" prefix="CP" type="Vehicle" stroke="3" direction="Infil" routetype="Primary" order="Ascending Check Points"/> <labels_on value="false"/> <strokeColor value="-35072"/> <strokeWeight value="3.0"/> <color value="-35072"/> <__routeinfo> <__navcues/> </__routeinfo>" contact { callsign: "Route 1" } } }
Could anyone suggest best possible way to extract "point" field under xmlDetail(cotEvent->detail->xmlDetail)? I need to extract list of points(latitude, longitude,altitude) and write on socket.