With Google Cloud Print shutting down today, I decided to try building an app that would auto-print files as they are generated from a workflow.
This is a 2-Part Challenge:
- Getting the cloud file out of AppSheet and onto the local machine
- Auto printing files as they arrive
And each part has a different solution depending on the OS of the device connected to the printer (Mac, Windows, Linux), and which storage provider you’re using (Google Drive, OneDrive, Dropbox, etc.).
This solution is for Mac users, but the same technique could be used on Windows, by replacing the Automator folder action with a VB Script, Power Shell, Auto Hotkey, etc.
- Install Google Backup & Sync (or OneDrive, Dropbox, etc), and login with the same account as you use for AppSheet.
Sync only these foldersand only select the app’s file/image folder (where workflow files are saved).
NOTE: ALL FILES in your root My Drive folder will sync, no matter which settings you choose. Move everything to a new folder FIRST to keep from syncing.
- Run a test workflow and make sure new files are syncing to your local machine.
- Create a new Folder Action in Automator, select the folder, and add the step “Print Finder Items”
In my tests, the files showed up on the local machine at almost the same instant that the sheet change occurred, and printing automatically started just a few seconds later!
This works great for a single app, but I can’t figure out a way to print from multiple apps without monitoring each folder. An app can only save images to a subfolder of the app’s default folder.
Ideally, I’d like to be able to monitor the same one folder, and send all print requests from all apps in my account to that one folder. I tried with webhooks, but you can only send the row data.
You can send a link to the file from one app to another, but that doesn’t create a NEW file in the receiving app’s default folder. I could use Integromat to copy files from other apps into my one “print queue” folder, but I’d prefer to find a native AppSheet solution.
Does anyone have any ideas on how one app could create a file in another app’s folder, without using some external integration?