Code Monkey home page Code Monkey logo

octoprint-3dgeeks's Introduction

3D Geeks: OctoPrint Plugin

This plugin is created as a companion plugin to the 3D Geeks app.

It allows you to connect your OctoPrint instance with the 3D Geeks app for quick one-click configuration. Which removes the needs to manually type in IP addresses en port numbers, which is super error-prone.

The plugin also allows you to receive push notifications with a status update from your OctoPrint instance. It currently supports the following events:

  • Print started
  • Print finished
  • Print failed
  • Print progress
  • Printer connected
  • Printer disconnected
  • Octoprint startup
  • Octoprint shutdown

Setup

Install via the bundled Plugin Manager or manually using this URL:

https://github.com/2BWorks/OctoPrint-3DGeeks/archive/master.zip

Usage

Instance configuration

After installation restart OctoPrint, and go to the Settings tab. You should see a new tab named 3D Geeks, go ahead and click that tab. You should be presented with a QR Code.

On your Android powered device open the 3D Geeks app, go to:

Settings > OctoPrint settings

Press the +-Icon in the bottom-right hand corner.

Press the scan icon, scan the QR code you're being presented. If everything goes well all the nesecary fields will be filled in automatically for you. You can now press Test connection for a quick test of the connection to your OctoPrint instance.

NOTE: Be sure you're Android device is connected to the same network as your OctoPrint instance, as they communicate through the local network. When the test succeeds you can press Create. Your OctoPrint instance is now saved and can receive files from 3D Geeks.

NOTE: You can create as much OctoPrint instances as you desire. When uploading a file, the app will ask you which instance to upload to.

Push notifications

Enable remote notifications from within the app. And press the Send test notification-button from the 3D Geeks OctoPrint settings. If everything is filled in correctly you should receive a test notification on your phone.

Select the push notification categories which you would like to receive.

Don't forget to save your OctoPrint instance on the app.

Disclaimer

Sending push notifications happens via a proxy in the form of an AWS Lambda Function. Which on it's turn triggers an Firebase Message. If you don't want your OctoPrint instance to send requests to AWS, don't install this plugin. The called url is:

https://qx8eve27wk.execute-api.eu-west-2.amazonaws.com/prod/octoprint_push

octoprint-3dgeeks's People

Contributors

2bworks avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

octoprint-3dgeeks's Issues

Updated to One UI 4.0 Android 12 and 3D Geeks app doesn't stay open.

Recently updated my S10+ phone to the One UI 4.0 and I'm on Android 12 and now the 3D Geeks app will not load. I have cleared the cache and data of the apps and that allows me to log back into it and Thingiverse but as soon as I set my 2 printers up, it forces the app to close and will not fully load unless I clear the data again. I have been using this app with the premium key for months now without any issue. The only thing to change has been the OS update. Are there some other steps to take?

Remove unnecessary logging

Hi @2BWorks,

In this plugin there's a lot of unnecessary logging at the INFO level that is unnecessary for the normal operation of OctoPrint. This plugin logs every event and payload to the octoprint.log, which fills up the log files with thousands of unnecessary lines making it harder for us to read it.

Could you remove this logging or set it to DEBUG, so you can ask users to enable it if you need the info from OctoPrint's settings.

The lines of code I'm looking at are below:

self._logger.info("Event: %s" % event)
self._logger.info("Payload: %s " % payload)

Thanks

3D Geeks for iOS is not available on UK app store

I'm posting this here as I cannot find an issue tracker for the iOS app anywhere.
3D Geeks is simply not available on the UK app store. I know I had it once before but it isn't possible to download anymore.
Clicking the link from the website results in an error reading:
App Not Available
This app is currently not available in your country or region.

I note that Chrome extension link is also dead and there appears to be no progress to these repos in a couple of years.
Has the project been abandoned? :(

Enabling notifications

The instructions say, "Enable remote notifications from within the app," but I can't seem to find that anywhere within the Android app. It might be useful to clarify the instructions, because without that, sending the test notification from Octoprint doesn't give me a notification.

Update to python 3

Could someone update this to phyton 3 as it no longer works in octoprint

Error in Logs while booting Octoprint

Hi,

I get this error in the logs each time I boot the Octoprint:

2020-08-11 13:11:37,758 - octoprint.plugin - ERROR - Error while calling plugin geeks3d Traceback (most recent call last): File "/home/pi/oprint/local/lib/python2.7/site-packages/octoprint/plugin/__init__.py", line 230, in call_plugin result = getattr(plugin, method)(*args, **kwargs) File "/home/pi/oprint/local/lib/python2.7/site-packages/octoprint_geeks3d/__init__.py", line 150, in on_event self.event_handler.handle_event( event, payload) File "/home/pi/oprint/local/lib/python2.7/site-packages/octoprint_geeks3d/Geeks3DEventHandler.py", line 65, in handle_event if self._plugin.settings.get_boolean(['push_server_connected']): AttributeError: 'NoneType' object has no attribute 'get_boolean'

It doesn't seem to affect anything that I can tell ... but the error bugs me. I've tried uninstalling and reinstalling the plugin but it seems to persist. Only happens when booting/rebooting.

I checked the config.yaml ... I don't see anything weird under the geeks3d stuff:

geeks3d: plugin_qr: '{"webcam_enabled": true, "color": "default", "host": "192.168.xx.xx", "key": "BA4BxxxxxxxxxxxxxxxxxxxxxxBD78B", "push_token": "ebbaxxxxxxxxxxxxxxxxxxaf6$ "bitrate": "10000k", "port": "", "name": "", "webcam_stream": "/webcam/?action=stream", "version": "v1", "webcam_snapshot": "http://127.0.0.1:8080/?action=snapshot"}' push_print_cancelled: true push_print_paused: true push_print_progress_interval: '25' push_print_resumed: true push_token: ebbaxxxxxxxxxxxxxxxxxxxxxxed33 server_ip: 192.168.xx.xx server_port: '5000'
**intentionly xxxx out sensitive stuff

It's probably something I'm doing wrong.

Thanks
-Bobby

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.