Printing from a web app



  • Hi everybody

    it's been a while 🙂

    A colleague is looking for a solution for cloud printing.
     
    Situation: +/- 1000 invoices are generated monthly in a web application. These must be sent to the printer in the office via an api to be printed there. According to my colleague, Google Cloud Print is not good enough.

    does anyone have good experiences with other cloud print services?

    Thx in advance.



  • @elegast

    I am sure a dedicated Pi can be used for this. If you have the time and good CUPS driver



  • In theory, web applications can print locally. There is nothing stopping a web page from just printing.

    If you need a remote server to initiate the printing, instead of a local workstation, then you have a very, very complex situation and I am not sure that that is one that has been broadly tackled yet.

    Companies with this requirement that I have dealt with in the past have handled it by creating a VPN and connecting the remote server to a printer-only VLAN and allowing it to print normally.



  • @Emad-R said in Printing from a web app:

    @elegast

    I am sure a dedicated Pi can be used for this. If you have the time and good CUPS driver

    Yes, but how does having a Pi change the communications / API situation? The Pi isn't adding anything that you don't already have without the Pi. And not addressing the issue of getting the data to the printer.



  • @scottalanmiller

    True, but how many VPN clients out there that can be installed on it. A lot thus problem solved. I didn't use Google print, but maybe him using dedicated hardware for this task will solve it.



  • @Emad-R said in Printing from a web app:

    True, but how many VPN clients out there that can be installed on it. A lot thus problem solved.

    Which part? It doesn't solve any. You can do the VPN without it. Unless there is a completely separate need not mentioned, it doesn't do anything. If I was doing this in any business I knew, adding or removing the Pi would not impact anything after it is working.



  • @scottalanmiller said in Printing from a web app:

    In theory, web applications can print locally. There is nothing stopping a web page from just printing.

    You mean, the client initiates the Print command?

    Companies with this requirement that I have dealt with in the past have handled it by creating a VPN and connecting the remote server to a printer-only VLAN and allowing it to print normally.

    the webApp is a third party service .
    Don't think we can get a VPN to it



  • @elegast said in Printing from a web app:

    @scottalanmiller said in Printing from a web app:

    In theory, web applications can print locally. There is nothing stopping a web page from just printing.

    You mean, the client initiates the Print command?

    Companies with this requirement that I have dealt with in the past have handled it by creating a VPN and connecting the remote server to a printer-only VLAN and allowing it to print normally.

    the webApp is a third party service .
    Don't think we can get a VPN to it

    Then pretty much by definition your choices are.... 1) make them solve this or 2) print from the web browser.

    If this is a closed app that you don't control, there is no possibility of anyone providing a solution except for the vendor.



  • @elegast said in Printing from a web app:

    @scottalanmiller said in Printing from a web app:

    In theory, web applications can print locally. There is nothing stopping a web page from just printing.

    You mean, the client initiates the Print command?

    Yes, that's how "all" web app printing works, has since the first web browsers. Print capability has always been an intrinsic component of the web, but it is "always" done from the client side, not the server side. There are exceptions, but they are incredibly rare and require that the server be both written and physically architected for the printing situation. Something that is effectively impossible with a SaaS vendor.



  • @scottalanmiller said in Printing from a web app:

    Which part? It doesn't solve any. You can do the VPN without it. Unless there is a completely separate need not mentioned, it doesn't do anything. If I was doing this in any business I knew, adding or removing the Pi would not impact anything after it is working.

    Okay you caught me, I love the Pi, thus I force it around on others. That said i still think it will fix any issues.



  • @Emad-R said in Printing from a web app:

    @scottalanmiller said in Printing from a web app:

    Which part? It doesn't solve any. You can do the VPN without it. Unless there is a completely separate need not mentioned, it doesn't do anything. If I was doing this in any business I knew, adding or removing the Pi would not impact anything after it is working.

    Okay you caught me, I love the Pi, thus I force it around on others. That said i still think it will fix any issues.

    The Pi is great, nothing against the Pi. It just doesn't have anything to do with the solution here. Anything the Pi can do, you can already have done with a VM, cheaper, easier, faster, and more reliably. The problem with Pi-based solutions is that they never introduce new capabilities, so the Pi itself is really never a solution to any IT problem.



  • If 1000 invoices are generated per month, they are probably not generated with an invoicing program from one person. They are probably generated automatically from something else, like subscriptions or maybe work reports or whatever.

    Nobody would want to use a browser to print those manually one by one. You want those generated automatically and sent from the server to the printer directly.

    IPP has been around for ages but I actually never used it. Basically the printer contains a small embedded webserver that can receive and print jobs. You give it a public IP through your firewall. Not rocket science. Maybe you want a proxy server (http or print server) in between. In either case, the printer is now accessible through ipp://printer:port/... and you can print from anywhere on the planet (with the right credentials and also assuming the firewall lets it trough).

    If the web app has support for IPP I think that would work fine.



  • @Pete-S said in Printing from a web app:

    If the web app has support for IPP I think that would work fine.

    Yes, all of that requires the VPN, though. That was my assumption as to why the VPN would be the solution, you need a way for the printing protocols to reach the printers. I suppose you could use IPP without a VPN, but that seems like a bad idea. But you could just port forward and IP lock.



  • @scottalanmiller said in Printing from a web app:

    @Pete-S said in Printing from a web app:

    If the web app has support for IPP I think that would work fine.

    Yes, all of that requires the VPN, though. That was my assumption as to why the VPN would be the solution, you need a way for the printing protocols to reach the printers. I suppose you could use IPP without a VPN, but that seems like a bad idea. But you could just port forward and IP lock.

    A lot of printers have IPPS support, meaning IPP with SSL and so does CUPS, so there shouldn't be much need for a VPN actually.



  • @Pete-S said in Printing from a web app:

    @scottalanmiller said in Printing from a web app:

    @Pete-S said in Printing from a web app:

    If the web app has support for IPP I think that would work fine.

    Yes, all of that requires the VPN, though. That was my assumption as to why the VPN would be the solution, you need a way for the printing protocols to reach the printers. I suppose you could use IPP without a VPN, but that seems like a bad idea. But you could just port forward and IP lock.

    A lot of printers have IPPS support, meaning IPP with SSL and so does CUPS, so there shouldn't be much need for a VPN actually.

    You feel that IPP directly on the Internet is good enough? I think most shops feel that IPP requires a VPN to be comfortably secure.



  • @scottalanmiller said in Printing from a web app:

    @Pete-S said in Printing from a web app:

    @scottalanmiller said in Printing from a web app:

    @Pete-S said in Printing from a web app:

    If the web app has support for IPP I think that would work fine.

    Yes, all of that requires the VPN, though. That was my assumption as to why the VPN would be the solution, you need a way for the printing protocols to reach the printers. I suppose you could use IPP without a VPN, but that seems like a bad idea. But you could just port forward and IP lock.

    A lot of printers have IPPS support, meaning IPP with SSL and so does CUPS, so there shouldn't be much need for a VPN actually.

    You feel that IPP directly on the Internet is good enough? I think most shops feel that IPP requires a VPN to be comfortably secure.

    I would look at it the same way as a https server. Would you feel the need to use VPN to secure a https server with login?

    BTW, it's a very valid comparison because if I understand correctly IPP uses http and IPPS uses https.



  • @elegast said in Printing from a web app:

    Hi everybody

    it's been a while 🙂

    A colleague is looking for a solution for cloud printing.
     
    Situation: +/- 1000 invoices are generated monthly in a web application. These must be sent to the printer in the office via an api to be printed there. According to my colleague, Google Cloud Print is not good enough.

    does anyone have good experiences with other cloud print services?

    Thx in advance.

    Does this web application have a REST/SOAP API? If so, can you connect to it to retrieve the print jobs from an on-prem PC or server that is connected to the printer? You can simply schedule a PowerShell or Python script (or whatever) on something on-prem to connect to the web app api, get the print jobs, and print them out.

    Or the other way around, have a node.js server running on-prem with an available API, that allow the web app to connect to via API with functions that print.



  • @Pete-S said in Printing from a web app:

    BTW it's a valid comparison because if I understand correctly IPP uses http and IPPS uses https.

    It is valid and you are correct (at least as far as my understanding as well.)



  • @Pete-S said in Printing from a web app:

    I would look at it the same way as a https server. Would you feel the need to use VPN to secure a https server with login?

    If I had IPPS and it had a login, then I'd be fine with it under all but the craziest circumstances. Do they support IPPS and logins though, that would be the question? I think most systems do not, so the VPN would cover that. But if you had both of those things, then sure, I'd be on board with that.



  • @scottalanmiller said in Printing from a web app:

    @Pete-S said in Printing from a web app:

    I would look at it the same way as a https server. Would you feel the need to use VPN to secure a https server with login?

    If I had IPPS and it had a login, then I'd be fine with it under all but the craziest circumstances. Do they support IPPS and logins though, that would be the question? I think most systems do not, so the VPN would cover that. But if you had both of those things, then sure, I'd be on board with that.

    It seems IPPS is common. At least I have it on the small HP MFP sitting next to me.

    Or you could set up a VM with a CUPS server. Let the webapp print to the CUPS server using IPPS and then the CUPS server can send the job to the printer however you like.

    PS. Looked at the specs on a few printers from other brands and it looks like they all have IPPS support.



  • Thx for your help, you all.

    I will check the possibilities!