Upload, track, and share your Spot X's coordinates.
https://github.com/johnthegreat/SpotXTracker
- Because... integrations are cool!
- Spot's online mapping / tracking software is too bloated and complicated.
- Fun little side project.
- Google Maps API Key
- Twilio Phone Number
- Spot X or other compatible device
- Clone or download the repo.
- Run
npm install
. - Configure environment variables in
.env
. See.env.example
for configuration options. - Run
npm start
ornode bin/www
. For additional debugging information, tryDEBUG=* node bin/www
. The application will automatically set up the database for you.
Like many other Node projects, this web app listens on port 3000
by default.
Change this in .env
or pass in a PORT
as the environment variable on startup.
- Add your Twilio phone number to your Spot X's predefined contacts and sync it with your Spot account.
- Configure your Twilio phone number to point to the endpoint provided by this project (
/twilio
).- For example, if your server is running on
http://example.com
, the endpoint for Twilio would behttp://example.com/twilio
. - Use POST, not GET, when setting up the webhook in Twilio.
- For example, if your server is running on
- Start the program.
- Login to the app using the
authToken
you specified in the.env
configuration file. - From the Devices menu, create a new device. Enter a device name, device description, and your Spot X's phone number.
- Create a new message to your Twilio contact on your Spot X device.
- Go to Messages, Predefined Messages and use any Predefined Message that you would like.
- Include Altitude (optional) and Geolocation.
- Send the predefined message.
- You can also set up the Twilio phone number to receive check-in messages in your Spot account.
- This program should receive the Spot X's coordinates via the Twilio endpoint if everything is working properly.
See API Endpoints.md
.
- Proper user authentication and roles-based management
- Proper username / password login
- Currently anyone with the
authToken
can make changes to the registered devices
Copyright © 2020-2021 John Nahlen.
Released under AGPL 3.0.
See LICENSE.md
.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.