35 | For security reasons, only accounts with administrator access can interact with the AstroPrint Plugin.
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
AstroPrint Plugin
53 |
Hello AstroUser!
54 |
55 | In order to use this OctoPrint device with your AstroPrint account, you need to give this device access
56 | to your account. You can log out from your AstroPrint account at any time, or revoke the access from your
57 | AstroPrint Cloud account.
58 |
59 |
60 |
61 |
62 |
63 | Enter your Astroprint Access Key (you can find it here),
64 | and authorize the plugin access to your account.
65 |
66 |
67 |
68 | Link AstroPrint Account
69 |
70 |
71 |
72 | Your Astroprint account will be linked to this OctoPrint device. Any of its administrators could download, print your designs, and unlink/logout your account.
73 |
Please specify the name this device will have in Astroprint cloud and Astroprint mobile application.
486 |
487 |
488 |
489 |
490 |
491 | Invalid Device Name: use letters, numbers or dashes(-) only.
492 |
493 |
494 |
495 |
496 |
500 |
501 |
502 |
503 |
504 |
505 |
Confirm that print platform is clean
506 |
507 |
508 |
The controller can’t start a new print job until you confirm that the platform is clean.
509 |
510 |
514 |
515 |
--------------------------------------------------------------------------------
/octoprint_astroprint/util/AstroprintGCodeAnalyzer:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AstroPrint/OctoPrint-AstroPrint/bee4f3fd666f8a3a78b9442b15881d6ce5486dfe/octoprint_astroprint/util/AstroprintGCodeAnalyzer
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | ###
2 | # This file is only here to make sure that something like
3 | #
4 | # pip install -e .
5 | #
6 | # works as expected. Requirements can be found in setup.py.
7 | ###
8 |
9 | .
10 | ws4py==0.3.4
11 | requests_toolbelt==0.8.0
12 | Pillow==3.1.0
13 |
--------------------------------------------------------------------------------
/setup.py:
--------------------------------------------------------------------------------
1 | # coding=utf-8
2 |
3 | ########################################################################################################################
4 | ### Do not forget to adjust the following variables to your own plugin.
5 |
6 | # The plugin's identifier, has to be unique
7 | plugin_identifier = "astroprint"
8 |
9 | # The plugin's python package, should be "octoprint_", has to be unique
10 | plugin_package = "octoprint_astroprint"
11 |
12 | # The plugin's human readable name. Can be overwritten within OctoPrint's internal data via __plugin_name__ in the
13 | # plugin module
14 | plugin_name = "AstroPrint"
15 |
16 | # The plugin's version. Can be overwritten within OctoPrint's internal data via __plugin_version__ in the plugin module
17 | plugin_version = "1.7.0"
18 |
19 | # The plugin's description. Can be overwritten within OctoPrint's internal data via __plugin_description__ in the plugin
20 | # module
21 | plugin_description = "Wirelessly manage and monitor your OctoPi powered printer from the AstroPrint Platform (AP Mobile Apps, AP Desktop Software, & AP Web Portal)."
22 |
23 | # The plugin's author. Can be overwritten within OctoPrint's internal data via __plugin_author__ in the plugin module
24 | plugin_author = "AstroPrint Product Team"
25 |
26 | # The plugin's author's mail address.
27 | plugin_author_email = "product@astroprint.com"
28 |
29 | # The plugin's homepage URL. Can be overwritten within OctoPrint's internal data via __plugin_url__ in the plugin module
30 | plugin_url = "https://github.com/AstroPrint/OctoPrint-AstroPrint"
31 |
32 | # The plugin's license. Can be overwritten within OctoPrint's internal data via __plugin_license__ in the plugin module
33 | plugin_license = "AGPLv3"
34 |
35 | # Any additional requirements besides OctoPrint should be listed here
36 | plugin_requires = ["ws4py== 0.3.4","requests_toolbelt==0.10.1", "Pillow", "urllib3<2.0.0"]
37 |
38 | ### --------------------------------------------------------------------------------------------------------------------
39 | ### More advanced options that you usually shouldn't have to touch follow after this point
40 | ### --------------------------------------------------------------------------------------------------------------------
41 |
42 | # Additional package data to install for this plugin. The subfolders "templates", "static" and "translations" will
43 | # already be installed automatically if they exist. Note that if you add something here you'll also need to update
44 | # MANIFEST.in to match to ensure that python setup.py sdist produces a source distribution that contains all your
45 | # files. This is sadly due to how python's setup.py works, see also http://stackoverflow.com/a/14159430/2028598
46 | plugin_additional_data = [
47 | ]
48 |
49 | # Any additional python packages you need to install with your plugin that are not contained in .*
50 | plugin_additional_packages = [
51 | ]
52 |
53 | # Any python packages within .* you do NOT want to install with your plugin
54 | plugin_ignored_packages = []
55 |
56 | # Additional parameters for the call to setuptools.setup. If your plugin wants to register additional entry points,
57 | # define dependency links or other things like that, this is the place to go. Will be merged recursively with the
58 | # default setup parameters as provided by octoprint_setuptools.create_plugin_setup_parameters using
59 | # octoprint.util.dict_merge.
60 | #
61 | # Example:
62 | # plugin_requires = ["someDependency==dev"]
63 | # additional_setup_parameters = {"dependency_links": ["https://github.com/someUser/someRepo/archive/master.zip#egg=someDependency-dev"]}
64 |
65 | additional_setup_parameters = {}
66 | ########################################################################################################################
67 |
68 | from setuptools import setup
69 |
70 | try:
71 | import octoprint_setuptools
72 | except:
73 | print("Could not import OctoPrint's setuptools, are you sure you are running that under "
74 | "the same python installation that OctoPrint is installed under?")
75 | import sys
76 | sys.exit(-1)
77 |
78 | setup_parameters = octoprint_setuptools.create_plugin_setup_parameters(
79 | identifier=plugin_identifier,
80 | package=plugin_package,
81 | name=plugin_name,
82 | version=plugin_version,
83 | description=plugin_description,
84 | author=plugin_author,
85 | mail=plugin_author_email,
86 | url=plugin_url,
87 | license=plugin_license,
88 | requires=plugin_requires,
89 | additional_packages=plugin_additional_packages,
90 | ignored_packages=plugin_ignored_packages,
91 | additional_data=plugin_additional_data
92 | )
93 |
94 | if len(additional_setup_parameters):
95 | from octoprint.util import dict_merge
96 | setup_parameters = dict_merge(setup_parameters, additional_setup_parameters)
97 |
98 | setup(**setup_parameters)
99 |
--------------------------------------------------------------------------------
/translations/README.txt:
--------------------------------------------------------------------------------
1 | Your plugin's translations will reside here. The provided setup.py supports a
2 | couple of additional commands to make managing your translations easier:
3 |
4 | babel_extract
5 | Extracts any translateable messages (marked with Jinja's `_("...")` or
6 | JavaScript's `gettext("...")`) and creates the initial `messages.pot` file.
7 | babel_refresh
8 | Reruns extraction and updates the `messages.pot` file.
9 | babel_new --locale=
10 | Creates a new translation folder for locale ``.
11 | babel_compile
12 | Compiles the translations into `mo` files, ready to be used within
13 | OctoPrint.
14 | babel_pack --locale= [ --author= ]
15 | Packs the translation for locale `` up as an installable
16 | language pack that can be manually installed by your plugin's users. This is
17 | interesting for languages you can not guarantee to keep up to date yourself
18 | with each new release of your plugin and have to depend on contributors for.
19 |
20 | If you want to bundle translations with your plugin, create a new folder
21 | `octoprint_astroprint/translations`. When that folder exists,
22 | an additional command becomes available:
23 |
24 | babel_bundle --locale=
25 | Moves the translation for locale `` to octoprint_astroprint/translations,
26 | effectively bundling it with your plugin. This is interesting for languages
27 | you can guarantee to keep up to date yourself with each new release of your
28 | plugin.
29 |
--------------------------------------------------------------------------------