Forum Replies Created

Viewing 15 replies - 106 through 120 (of 415 total)
  • Plugin Author tinuzz

    (@tinuzz)

    My guess would be that you have a plugin conflict. Do you have any other plugins installed that hook into the parse_request hook?

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Hi,

    If the ‘Full custom URL’ is what Trackserver shows in the profile, then there must be something weird with your setup.

    Trackserver tries to find out what the ‘blog URL’ is, which it seems to do correctly (https://excessiveweaving.com.au/). It then tries to match all incoming requests against the configured ‘slug’ for the endpoint for location updates (‘mapmytracks’). This is where things seem to fail, as this results in a 404. Unfortunately, I cannot explain this.

    If you’re comfortable with PHP, you should add some debugging code to the parse_request() function (file: class-trackserver.php, line 1425 in Trackserver v4.3.2).

    The MapMyTracks handling code starts at line 1485:

    https://github.com/tinuzz/wp-plugin-trackserver/blob/7fa62a6c1b0d7b5dd3d1a85603c8344a3f172e59/class-trackserver.php#L1485

    I would be interested in the values of $request_uri and $uri on line 1488. These should be the same, and in your setup they apparently are not.

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    To be clear, if your WordPress only listens on localhost on the machine that it runs on, there is no way that your Android app can reach it. You need to have WordPress available over the network. I feel kind of silly saying this because it’s so obvious, but just to be sure.

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Hi,

    ‘localhost:8888’ could never work, you need to fill in the name of your WordPress server.

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    In the mean time, could you send me a GPX export of the track that crosses the 180E/W boundary, so I can use it for testing a fix?

    My email is m@rtijn.net.

    I’m still interested in the buggy GPX from OsmAnd too, if you can share it.

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Hi @ewsatsea,

    That’s some incredible journey you’re making.

    Regarding the tools you’re using, I’m not quite sure what to advise. It seems you are better informed on satnav applications than I am 😉 In general, I can think of two ways to achieve what you want, both of which are supported by Trackserver:

    • GPX (or other file format) upload
    • Live tracking

    For live tracking, you obviously need an internet connection that is mostly available. OsmAnd had never been my favorite for live tracking. It is difficult to configure and it drains my battery in no time at all. OruxMaps and TrackMe are the reliable choices for the Android platform.

    GPX files with extension should be handled by Trackserver without problems, as long as they conform to the spec. That means that the extensions should be properly namespaced. You can find more information on validating GPX files here: https://www.topografix.com/gpx_validation.asp

    Regarding the ‘jump’ around the globe when crossing from 180E to 180W: this happens because that’s how Leaflet (the JS mapping library) works. Leaflet supports coordinates < -180 and > 180 to accomodate for this. It will then draw the lines on adjacent ‘copies’ of the world. Trackserver does not implement this yet.

    So if you cross the boundary in westward direction, like you did, all the longitudes from that point on should be corrected with -360 degrees (so you’d go from -180 to -181).

    This can probably be fixed quite easily for tracks that are served from Trackserver’s database. I’m not sure it can be fixed for external GPX / KML files.

    Unfortunately, fixing this would require a new release of Trackserver, and I’m in the middle of quite a big code restructuring effort which kind of makes that impossible right now. I’ll see what I can do.

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Hi,

    @tallhat:

    I can’t answer your questions about Garmin Explore. I can only tell you that there is no artificial limit in the number of nodes in a KML file in Trackserver. I do think that very large KML files will pose challenges when read in the browser in an application like Leaflet (especially since we’re using Leaflet-omnivore, which converts the KML to GeoJSON in memory before displaying it). Performance might not be fantastic.

    @leivo:

    Yes, your assessment is correct. Trackserver can display external files (like KMLs from a different service) but it does not import those into the Trackserver database. They are displayed as-is. So if the file at the given URL is updated with just a single point, that is all that Trackserver can display.

    If your want to combine these updates into a track, you can do it in two ways: 1) like you said, construct a new KML file every time there’s an update, or 2) write an importer that adds the points from the KML to the Trackserver database, using one of the available live tracking protocols, OsmAnd being the easiest to implement with tools like cURL or wget.

    Regarding the map centering on Eindhoven: this might be a bug. Trackserver tries hard to find the bounding box of the loaded tracks and center the view on the center of the box, but there are reasons this could fail. I could have a look, if you can direct me to the page that you’re hosting this on.

    Best regards,
    Martijn.

    • This reply was modified 6 years, 2 months ago by tinuzz.
    Plugin Author tinuzz

    (@tinuzz)

    Hi,

    Your question isn’t entirely clear. In your first sentence, you write “Seems to work fine.”. What exactly works fine?

    I assume you are using the Online tracking feature of the GPX plugin for live tracking. Are your location updates appearing in Trackserver? You write “there is no tracks uploaded”, so I assume they are not?

    You should check your webserver access and/or error log to see what OsmAnd is sending to the server and why that doesn’t work.

    Are you using the Full URL as displayed in your Trackserver profile in the OsmAnd settings, including the ‘username’ and ‘key’ parameters?

    Regarding the error that you’re getting with uploading the GPX file, I’m not sure why that happens. I just tried it with a GPX from OsmAnd 3.4.8, and it worked fine. Can you send me one of your GPX files so I can have a look to see what is wrong with it?

    To be clear: Trackserver validates the uploaded XML file against the GPX specification (version 1.1 first, version 1.0 second). If this gives an error, there is most likely something wrong with the file. I have seen many many applications that generate non-conforming GPX files, that why the check is there in the first place. It could be anything from self-invented or missing tags, to an inappropriately formatted timestamp field. I can’t say without looking at the actual file.

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Interesting. A 500 error usually means something is wrong at the PHP level. If this is a conflict with another plugin, it’s kind of strange. Unfortunately, I won’t have any time to look into this until mid-March at the earliest, but I’m curious what it was, so I’ll check it out.

    I’m glad it’s working for you now.

    Best regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Hi,

    From your post, it is not entirely clear what exactly doesn’t work. Is it the collection of location data (creation of tracks), or the display of tracks on a map?

    I suspect it is the former, since you write about changing the username in “the app”. What app is that? Are you aware that different users have different passwords? And that some apps (TrackMe, OsmAnd) use a ‘secret’ which is set in the Trackserver user profile, and that other apps (OruxMaps, OwnTracks) should use the user’s WordPress password?

    But I’m confused since you also write that you can get the map to show a live location. Is that for any user? That would mean that data collection /does/ work.

    Can you be a little more specific in the problem description?

    Regards,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Great!

    Cheers,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    In class-trackserver.php, look for a function named ‘validate_user_ids’.

    It checks if a list of user-ids exist in the database, but if the author of the page isn’t allowed to publish other users’ tracks (i.e. s/he’s an admin), all user-ids except the author id are removed from the list before the check:

    if ( ! user_can( $author_id, 'trackserver_publish' ) ) {
    	$user_ids = array_intersect( $user_ids, array( $author_id ) );
    }
    

    If you wrap this code in something like:

    if ( $author_id != null ) {}

    It will probably work. You should check the actual value of $author_id in your case, because I don’t know if it is null or something else.

    Good luck,
    Martijn.

    Plugin Author tinuzz

    (@tinuzz)

    Most likely, the reason is that the page you are doing this on doesn’t have an author. If author ID is not known, Trackserver cannot check the ownership of the page against the ownership of the track and refuses to serve it. It’s a security measure.

    You would have to change the code and disable the check to make it work.

    Best regards,
    Martijn.

    • This reply was modified 6 years, 5 months ago by tinuzz.
    Plugin Author tinuzz

    (@tinuzz)

    What have you tried?
    What didn’t work?

    Forum: Plugins
    In reply to: [Trackserver] Map Language
    Plugin Author tinuzz

    (@tinuzz)

    Hi,

    You will have to configure a different tile server, that serves map tiles in the language of your preference.

    You can do that on the options page.

    Best regards,
    Martijn.

Viewing 15 replies - 106 through 120 (of 415 total)