Download: | Version 1.1 |
License: |
Print From Phone is a desktop application for public libraries that aims to simplify the process of printing documents from patrons' smart phones.
Step 1: Patron opens the app and accepts the terms and conditions.
Step 2: Patron is prompted to email the documents they would like to print from their phone to an email account that is under the library's control. This can often by done by opening the document on their phone, and then tapping a "Share" button. They can also forward an existing email.
Step 3: Patron is prompted to enter their email address.
Step 4: The application connects to the library-controlled email account and downloads the files that are attached to the patron's email.
- Print From Phone requires Java 8 or later. You can download Java here: https://java.com
- Download the ZIP file here.
- Extract the contents of the ZIP file to a location of your choice.
- Open the
settings.properties
file with a text editor and edit as needed. This file must be stored in the same place as theprint-from-phone-1.1.jar
file. - Open the
disclaimer.html
file and edit to your liking. This is the "term and conditions" text that the patron sees when they first open the application. - Double-click the
print-from-phone-1.1.jar
file to launch the application.
If you would rather not store your email account credentials in the settings.properties
file, they can also be stored in the Windows Credential Manager.
- Open the Start Menu, search for "Credential Manager", and open it.
- Click "Windows Credentials".
- Click "Add a generic credential".
- In the "Internet or network address" field, type "Print From Phone".
- Enter the email account credentials in the "User name" and "Password" fields.
- In the
settings.properties
file, empty out the "email.username" and "email.password" fields.
- Enable IMAP.
- In the settings, go to "Forwarding and POP/IMAP".
- Select "Enable IMAP".
- Select "Auto-Expunge off"
- Under "When a message is marked as deleted...", select "Immediately delete the message forever". This will force Gmail to permanently delete the email after Print From Email downloads it.
- In the
settings.properties
file, set the "email.server" field to "imap.gmail.com".
- Turn off the spam filter.
- In the settings, go to "Filters and Blocked Addresses".
- Click "Create new filter".
- In the "Has the words" field, type "is:spam".
- Click "Create filter with this search".
- A confirmation dialog will appear. Click OK.
- Check the "Never send it to Spam" checkbox.
- Click "Create filter".
- Make sure "less secure apps" is enabled. Google considers IMAP to be less secure than other protocols.
- Go to https://myaccount.google.com.
- In the search bar, type "less secure app access".
- Enable the "Allow less secure apps" setting.
Since the password to the email account is stored in plain text on the computer, it could potentially be discovered by someone who has the technical skills and motivation to do so. As stated in the license, this program is provided without warranty of any kind.
Print From Phone uses Gradle as its build tool.
Running the gradle build
command will build a fat, executable JAR file and save it to the build/libs
folder.
Adding a --mock
parameter at the command line will force it to use a mock email server and download mock attachments:
java -jar print-from-email-1.1.jar --mock
You may also specify the path to the settings.properties
file at the command line, like so:
java -jar print-from-email-1.1.jar "C:\path\to\settings.properties"
If you would like to contribute to the project, please submit a pull request! The project is particularly in need of a more secure way of storing the email account's login credentials.
Please let me know how Print From Phone is working out for you:
- If you have a feature request or found a bug, please create a ticket on the Issue tracker.
- You can also email me directly if you prefer: [email protected]