OllisGit / OctoPrint-SpoolManager

Plugin for managing Spools
168 stars 59 forks source link

Support for MQTT #246

Closed notenoughtech closed 2 years ago

notenoughtech commented 2 years ago

Hi,

I wonder if it would be possible to add the MQTT option to share the writes to the database? It would enable logging externally without reading the DB or hosting it on another server.

Thanks

OllisGit commented 2 years ago

Hi @notenoughtech,

in combination with this plugin MQTT and the checkbox "Unclassified events" , it should be easy to implement. I just need to fire an event.

These are the events that could be helpful:

Did I miss something?

notenoughtech commented 2 years ago

I couldn't see it on the list of events so I skipped it. I wrote a small python scraper last night that hooks up directly to the SQL file and sends the updates.

I'll think about the event approach now as well. I want to use some NFC to inject the spools to the database. Are you anticipating any issues caused by duplicating DB entries?

On Thu, 17 Feb 2022, 08:23 OllisGit, @.***> wrote:

Hi @notenoughtech https://github.com/notenoughtech,

in combination with this plugin MQTT https://github.com/OctoPrint/OctoPrint-MQTT and the checkbox "Unclassified events" , it should be easy to implement. I just need to fire an event.

These are the events that could be helpful:

  • updateSelectedSpoolWeight
  • selectedSpool
  • removeSelection
  • updatedSpoolData
  • addedSpool
  • deletedSpool

Did I miss something?

— Reply to this email directly, view it on GitHub https://github.com/OllisGit/OctoPrint-SpoolManager/issues/246#issuecomment-1042686852, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKDRL23PBCSFACFMURSAX3LU3SV6TANCNFSM5ORQ6XZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

OllisGit commented 2 years ago

Hi @notenoughtech,

in the latest RC-Version 1.7.0rc1 I implemented the event-mechanism. Please test and give feedback

If you update/create the database by your own, it could go wrong and the plugin stops working ;-)

Thx, in advance Olli

notenoughtech commented 2 years ago

I'll live my life dangerously :) I'll check it out thanks for the heads up

On Thu, 17 Feb 2022, 19:29 OllisGit, @.***> wrote:

Hi @notenoughtech https://github.com/notenoughtech,

in the latest RC-Version 1.7.0rc1 I implemented the event-mechanism. Please test and give feedback

If you update/create the database by your own, it could go wrong and the plugin stops working ;-)

Thx, in advance Olli

— Reply to this email directly, view it on GitHub https://github.com/OllisGit/OctoPrint-SpoolManager/issues/246#issuecomment-1043336630, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKDRL2Y32JYLUYIOMBIHDOTU3VEBBANCNFSM5ORQ6XZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

notenoughtech commented 2 years ago

Last tiny request, I know I can pull that info from the MQTT events now but it would be nice to have "isLoaded" in the DB to indicate which spool is currently loaded onto the printer. This would also allow me to share the spool db across multiple octoprint instances without having a completely external DB. Cheers Mat Zolnierczyk

Maker, Robotics Engineer

Owner | NotEnoughTech @.*** notenoughtech.com Teesside, North Yorkshire, UK [image: facebook] https://www.facebook.com/NotEnoughTECH/ [image: twitter] https://twitter.com/NotEnoughTECH [image: linkedin] https://www.linkedin.com/in/mat-zolnierczyk/ [image: instagram] https://www.instagram.com/notenoughtech/

On Thu, Feb 17, 2022 at 7:37 PM Mat Zolnierczyk @.***> wrote:

I'll live my life dangerously :) I'll check it out thanks for the heads up

On Thu, 17 Feb 2022, 19:29 OllisGit, @.***> wrote:

Hi @notenoughtech https://github.com/notenoughtech,

in the latest RC-Version 1.7.0rc1 I implemented the event-mechanism. Please test and give feedback

If you update/create the database by your own, it could go wrong and the plugin stops working ;-)

Thx, in advance Olli

— Reply to this email directly, view it on GitHub https://github.com/OllisGit/OctoPrint-SpoolManager/issues/246#issuecomment-1043336630, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKDRL2Y32JYLUYIOMBIHDOTU3VEBBANCNFSM5ORQ6XZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

OllisGit commented 2 years ago

Hi @notenoughtech, currently the selected spools were stored in the local octoprint plugin-settings (see <op>/config.yml image These information will be move into the database (feature "external db")...will take some time.

OllisGit commented 2 years ago

Hi @notenoughtech, new Version 1.7.0 is released and include the MQTT feature.

Please test and give feedback.

Thx, in advance Olli

notenoughtech commented 2 years ago

Awesome. I'll give it a go 😍

On Fri, 18 Mar 2022, 16:21 OllisGit, @.***> wrote:

fyi: New Version 1.7.0 is released and include the MQTT feature.

— Reply to this email directly, view it on GitHub https://github.com/OllisGit/OctoPrint-SpoolManager/issues/246#issuecomment-1072572138, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKDRL27HZOLVQ5C4K4KLHLTVASUPVANCNFSM5ORQ6XZQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

notenoughtech commented 2 years ago

Hi, My apologies for the late reply. Other projects got in the way before I could jump on this with the feedback.

It's nice to see the events share the details with MQTT, thank you. I have a couple of suggestions:

Spool deselected: databaseId = null; - would be cleaner to retain the ID of the active spool otherwise, I have to keep track of the spoolId assigned to the toolId

spool object - any chance to expose all details from spool added event? (brand, cost comments all shebang)

edits to spools - no event is being fired. That would be ok, if either whole spool object is shared via MQTT on load, or perhaps drop the array of spools with manual refresh in the plugin page?

Thank you for the changes made so far.

notenoughtech commented 2 years ago

I came up with a workaround for now (cloning the db file). Not the prettiest way but it works. If you want to see what I made with that - check out this: https://notenoughtech.com/3dprint/smart-filament-storage/

github-actions[bot] commented 2 years ago

This issue has been automatically marked for closing, because it has not had activity in 30 days. It will be closed if no further activity occurs in 10 days.

github-actions[bot] commented 2 years ago

This issue was closed, because it has been already marked for 10 days with no activity.