% % create map for tracker % % % install locaters in map % "markmaps" *trakpreh % % get this trackers physical user device data % _Sim.Data execstr _DeviceMode "+++___" log)( !Sim.Sid %%% empty !Sim.PartImei "Status" !Sim.Track *trakstan empty !Sim.Valid 0.0 !Sim.Vlat 0.0 !Sim.Vlon 0 !counter % % tag as first cycle % true !fircyc 100 !Limiter % % forces next value of latitude and longitude to be counted % 0.0 !Trak.Lat 0.0 !Trak.Lon false !needed _Sim.Data execstr _DeviceMode !Sim.Sid "" textwild false !Trak.Hister "Trak\" _IMEI 10 right & ofconn folder( !Trak.Folder empty { % % stack: path seed % /* dup !Sim.Pfile dup noext !Sim.Pmsec */ -Limiter negative ? prevfile ? "data point" log)( _fircyc "firstcyc" log)( { % % do not process new map if no new data point % is there a current map file % "tracker" *trakings "-----------ftrak" log)( "vehicle" *trakings or "-----------fveh" log)( "fence" *trakings or "-----------ffen" log)( { true } { "map" &_Sim.Sid &".html" oflocal "-----------mapr" log)( dup exists "mapexist" log)( { % % prior map file exists, check times against most recent data record % stamp second ^4 stamp "s" Time.Diff positive % % positive difference means new data point % } { % % we need new map file, none exists % pop true } ifelse } ifelse "setneeded" log)( !needed false !fircyc } if _needed "ckneeded" log)( { dup !Sim.File % % next downward in time locater data point file % dup noext !Sim.Msec reading % % stack: path seed seed-content % _Trak.Lat _Trak.Lon rot execstr _Sim.Msec "msec" log)( !Sim.Valid _Trak.Lat hex2asc dup !Trak.Lat !Sim.Vlat _Trak.Lon hex2asc dup !Trak.Lon !Sim.Vlon % % observe deltas in lat and lon % _Trak.Lon sub abs exch _Trak.Lat sub abs add dup !Loc.Diff _Sim.Choke gt { +:counter % % valid previous history point with enough departure % _sumx _Trak.Lat "{{lat1}}" exch replall _Trak.Lon "{{lon1}}" exch replall _Sim.Sid "{{sid}}" exch replall _Sim.UniqueName "{{tracker}}" exch replall !sumx _sumr %%% second *trakfutc %%% *traklalo %%% "timedate" second noext telldate dup !Trak.Date "{{" &_counter &"}}" exch replall _Trak.Lat "{{lat" &_counter &"}}" exch replall _Trak.Lon "{{lon" &_counter &"}}" exch replall !sumr *trakhist } { % % not significant enough departure from original lat and lon % } ifelse _counter _Sim.Marks eq } { true } ifelse ? } loop dup !Trak.Continue filing) _Sim.Valid isnull) _needed not or "simneeded" log)( { % % no significant content for a map file % /* _Time.Thours 60 mul 60 mul !Time.Barrier "LOD_" &_Sim.PartImei &"_" &"" textwild *trakpush */ } { % % valid map basis, get engine battery and user info inserts % empty !Sim.License empty !Sim.Vehicle _Sim.UniqueName "-----------tracker" log)( "Vimages" conntext lookin pop % % insert the user id info attached to tracker % _sumr _Sim.UniqueName "{{sid}}" exch replall %%%%% "Auto Sales Company" empty !Fen.Vios "chk" &_Sim.Sid text ofconn exec$ _Fen.Vios "{{cmpid}}" exch replall "Imei " &_IMEI &"(" &_Sim.UniqueName &")" "{{trin}}" exch replall _IMEI "{{trk1}}" exch replall _Sim.UniqueName "{{trk2}}" exch replall _Sim.Valid "{{trk3}}" exch replall _Sim.Vlat "{{trk4}}" exch replall _Sim.Vlon "{{trk5}}" exch replall _Sim.License "{{trk6}}" exch replall _Sim.Vehicle "{{trk7}}" exch replall _Sim.Bat %%% -1 right trim ^"0" 0 add "{{batA}}" exch replall _Trak.Speed hex2asc trim ^"0" 0 add /* 0.621371 mul */ normint "{{batB}}" exch replall !sumr /* _Description "-----------descr" log)( "[" right$ "]" left$ trim isnull { !sumx } { _sumx "{{fencing}}" rot replall !sumx } ifelse */ % % replace history points with repeat of earliest valid point % _counter "====counter" log)( _Sim.Marks "====marks" log)( eq !Trak.Hister { +counter _Sim.Marks gt ? _sumr %%% "timedate" _Trak.Date "{{" &_counter &"}}" exch replall _Trak.Lat "{{lat" &_counter &"}}" exch replall _Trak.Lon "{{lon" &_counter &"}}" exch replall !sumr } loop % % new map file with valid data point % /* _sumx any? { "fence_Fences_" &_UserID text "____________" log)( ofconn read done in tell &"var UserID = " _UserID quoter & jsend any? { cr prefix "{{fences}}" exch replall *trakmapi "chk" &_Sim.Sid text ofconn del "chk" &_Sim.Sid &".html" oflocal write } { pop "chk" &_Sim.Sid text ofconn del "chk" &_Sim.Sid &".html" oflocal del } ifelse } if */ _sumr "fence_Fences_" &_UserID text "____________" log)( ofconn read &"var UserID = " _UserID quoter & &"; var Sid = " _Sim.Sid quoter & jsend cr prefix "{{fences}}" exch replall *trakmapi "map" &_Sim.Sid &".html" oflocal write } ifelse _Trak.Hister "hister" log)( { _Trak.Continue "ckcont" log)( any? { _Trak.Folder exch "nowcont" log)( { prevfile ? "conting" log)( dup !Sim.File % % next downward in time locater data point file % dup noext !Sim.Msec reading % % stack: path seed seed-content % _Trak.Lat _Trak.Lon rot execstr _Sim.Msec "msec" log)( !Sim.Valid _Trak.Lat hex2asc dup !Trak.Lat !Sim.Vlat _Trak.Lon hex2asc dup !Trak.Lon !Sim.Vlon % % observe deltas in lat and lon % _Trak.Lon sub abs exch _Trak.Lat sub abs add dup !Loc.Diff _Sim.Choke gt { +:counter % % valid previous history point with enough departure % dup noext telldate !Trak.Date *trakhist } if finaled } loop "endcont" log)( filing) } if } if "endmapt" log#