Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plugins #1540

Open
1 task done
kylecorry31 opened this issue Nov 16, 2022 · 13 comments
Open
1 task done

Plugins #1540

kylecorry31 opened this issue Nov 16, 2022 · 13 comments
Labels
p4 Priority 4 plugin

Comments

@kylecorry31
Copy link
Owner

kylecorry31 commented Nov 16, 2022

These would all be standalone apps, optional app download that requires Trail Sense be installed. The provider plugins can probably be merged into a single package. The goal of the standalone apps would be to provide functionality that Trail Sense itself can't do - things like Internet, texting, and packaging large amounts of data (to keep Trail Sense's core APK size small). All plugins can be accessed from within Trail Sense (not sure how exactly - maybe they'll start a new activity or communicate via Intents - more research is needed)

Some may show up as additional tools rather than extending existing tools. Not sure if they could be opened in TS (maybe the UI lives in TS and communication is done via services).

Research Google Play policies on cross app communication where different permissions are allowed.

Potential plugins

Providers

Adds additional data sources to tools in Trail Sense, can use the Internet.

  • Weather: Downloads current weather conditions and forecasts
  • Tides: Downloads tide tables / harmonics
  • Map tiles: Downloads map tiles
  • DEM: Download a digital elevation model for a given region
  • Geocoder: Get the name of the location. This doesn't require the Internet permission - it is built into Android - but it does use the Internet.

Comms

Local communication can happen via bluetooth, wifi direct, audio?, or QR (may be part of TS itself). There will be the ability to add and connect to trusted devices.

  • Emergency beacon: Sends out a text to selected contacts at a set frequency containing your location (texts are more reliable than an Internet connection while in areas of spotty connection).
  • Walkie talkie / chat: Can communicate with nearby users/people you've connected with. Support text to speech as well.
  • Offline file share: Similar to Google Files offline share feature.
  • Shared navigation: Share navigation details with trusted devices nearby (ex. location of each user shown in Trail Sense)

Health

  • Heart Rate Sensor: A heart rate sensor which uses your camera
  • Sound Amplifier: Amplifies sound, with options to boost certain frequencies

Experiments / research

@michaelblyons
Copy link

Sync a common packing list with file share? 😅

@kylecorry31
Copy link
Owner Author

kylecorry31 commented Aug 7, 2023

@michaelblyons can you clarify what you mean?

Do you mean just the ability to import/export a packing list? In that case, that is something I could implement without a plugin - and then the plugin could be used to share the exported file while offline

@michaelblyons
Copy link

michaelblyons commented Aug 7, 2023

That's pretty close. I think I saw that you're planning export/import to CSV for packing lists. The file could be synced with Bluetooth, yes.

I coordinate with my partner: "Did we already pack enough X?" to prepare a vehicle for 1-day, 3-day, or 7-day trips together. When we get there and set up, every adult manages their own list for excursions, which is more like the normal packing list behavior. If TS is not the right tool for shared packing, we can surely find something else.

If people use packing lists to track stocks of consumables on distance hikes as well, having a merge algorithm for intelligent incr/decr might be helpful. But I am not personally doing that in the backcountry.

@kylecorry31
Copy link
Owner Author

Thanks! I'll consider adding that along with the offline file share plugin

@kylecorry31
Copy link
Owner Author

More ideas for the comms plugin (shared navigation): #1911 (comment)

@MikaelaLovett
Copy link

MikaelaLovett commented Mar 26, 2024

That walkie-talkie feature would be so useful for me 🙈 Sorry for "spamming" with comments, but I found your app yesterday and I'm very excited about it, haha

I'm disabled and we use Zello with my dad (when I need help getting out of the shower, can't get up, my heart rate is too high etc.) and he can't hear me through the closed door. But Zello is WiFi only, so if the internet goes out (happens frequently) he needs to pick up my call first without hearing my message immediately and he can miss it if his phone's on mute (media sound is always on) ✨
Edit: I also struggle to talk loudly or at all in certain situations due to trauma, so that'd be great during medical emergencies or even when we're out and about geocaching 🗺️

@kylecorry31
Copy link
Owner Author

That walkie-talkie feature would be so useful for me 🙈 Sorry for "spamming" with comments, but I found your app yesterday and I'm very excited about it, haha

I'm disabled and we use Zello with my dad (when I need help getting out of the shower, can't get up, my heart rate is too high etc.) and he can't hear me through the closed door. But Zello is WiFi only, so if the internet goes out (happens frequently) he needs to pick up my call first without hearing my message immediately and he can miss it if his phone's on mute (media sound is always on) ✨ Edit: I also struggle to talk loudly or at all in certain situations due to trauma, so that'd be great during medical emergencies or even when we're out and about geocaching 🗺️

I'll have to take a look at Zello - my hope is that the walkie talkie will support both wifi (direct connection) and bluetooth (maybe even at the same time, using whichever has the best signal). It could even have the option of sending a message and having it read out load on the receiving device (using text to speech).

@MikaelaLovett
Copy link

That walkie-talkie feature would be so useful for me 🙈 Sorry for "spamming" with comments, but I found your app yesterday and I'm very excited about it, haha

I'm disabled and we use Zello with my dad (when I need help getting out of the shower, can't get up, my heart rate is too high etc.) and he can't hear me through the closed door. But Zello is WiFi only, so if the internet goes out (happens frequently) he needs to pick up my call first without hearing my message immediately and he can miss it if his phone's on mute (media sound is always on) ✨ Edit: I also struggle to talk loudly or at all in certain situations due to trauma, so that'd be great during medical emergencies or even when we're out and about geocaching 🗺️

I'll have to take a look at Zello - my hope is that the walkie talkie will support both wifi (direct connection) and bluetooth (maybe even at the same time, using whichever has the best signal). It could even have the option of sending a message and having it read out load on the receiving device (using text to speech).

Oh my, thank you for considering it, the text to speech feature would be life changing! 💗

@kylecorry31
Copy link
Owner Author

kylecorry31 commented May 13, 2024

Initial experimentation with the comms plugin can be found here (extremely work in progress - basically an experimentation project at this point): https://github.com/kylecorry31/Trail-Sense-Comms

Still have not determined what the plugin architecture will look like / what is allowed on Google Play Store

@MikaelaLovett
Copy link

Initial experimentation with the comms plugin can be found here (extremely work in progress - basically an experimentation project at this point): https://github.com/kylecorry31/Trail-Sense-Comms

Still have not determined what the plugin architecture will look like / what is allowed on Google Play Store

Thank you for working on it! 🍀

@kylecorry31
Copy link
Owner Author

Possible architecture:

image

Under this model, the tool would live in Trail Sense and the comms plugin just adds the ability to talk with nearby devices.

Example flow of the walkie talkie:

  1. User installs comms plugin, "Local Talk" tool shows up in TS
  2. User opens the tool and is prompted to connect to a device
  3. User clicks connect button which launches the comms plugin activity to select a device
  4. The comms plugin requests bluetooth permission
  5. User selects the device they want to connect to and a foreground service is started
  6. User is returned to Trail Sense where they interact with the tool - TS uses AIDL to communicate with the comms plugin
  7. User stops communication -> TS uses AIDL to stop the comms plugin
  8. User returns to app and selects an existing connection -> TS starts comms activity with pre-selected device -> process repeats

This will also allow other tools to leverage the plugin, such as the ability to see nearby devices on the navigation/photo map tools or to send notes/files.

@leavenode
Copy link

METAR/TAF functionality would be useful as far as weather plugins go. Perhaps the ability to translate raw data as well? How about a database of all known airports? A METAR/TAF widget perhaps?

@kylecorry31
Copy link
Owner Author

METAR/TAF functionality would be useful as far as weather plugins go. Perhaps the ability to translate raw data as well? How about a database of all known airports? A METAR/TAF widget perhaps?

Thank you for the suggestion, I will consider that as part of the Provider plugin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p4 Priority 4 plugin
Projects
None yet
Development

No branches or pull requests

4 participants