Hibou Odoo Suite: Tools + Settings Modules: Boxes: PrintBox

Purpose

This documentation covers the installation, configuration, and functionality of Hibou's PrintBox module for Odoo. This module allows you to have numerous printers configured for your Odoo database, and provides the creation of profiles to grant permission for users to access and print to specific printers.

Important!

PrintBox requires a preconfigured Raspberry Pi. Please contact us for further details.

If you have already received the Raspberry Pi and need help connecting to it, please refer to our Boxes page for more information.

Getting Started

The first step is to install the module. To do so, navigate to the Apps application.


Once there, remove the 'Apps' filter, then search for 'PrintBox'. When you're ready, click install.


Good to Know!

The PrintBox module requires the Hibou Box - Base. However, if you do not already have this module installed, Odoo will install it for you during this module's installation. 

Process

To get started, navigate to the Boxes app. This opens up the Boxes application on the Locations page.

Locations

To create a new Location, click NEW. This opens a form where you'll enter the following details:

  • Location: Enter the name for your location.

Smart Buttons

  • Boxes: Allows you to create and view all boxes associated with this location.
  • User Profiles: Allows you to create and view user profiles associated with this location.
  • Printers: Allows you to create and view printers.

Admins

Under the Admin tab, this will allow you to indicate which users will receive a raised hand notification from box users.

Boxes

To configure a new box, click the Boxes smart button and click NEW.

  • Name: Name your box.

  • Location: Select which location this box is associated with.
  • Endpoint: Enter the endpoint for box with protocol, host, and port (e.g. https://127.0.0.1)
  • External Endpoint: This is the URL Odoo will use to connect. It must include the protocol, host, and port (e.g. https://https://127.0.0.1)
  • Use BoxMesh Protocol: Use external endpoint with boxmesh proxy protocal
    • BoxMesh Token: Token to authenticate boxmesh service
    • BoxMesh Pool: Specify which boxmesh to communicate with
    • Override Internal Endpoint to https://localhost: Useful only in debug situations where you do not know the correct IP.
  • Use External Endpoint: Use only when your Odoo database is communicating directly with the box.

  • Communication TimeoutThe number of seconds befor the print process times out. 
  • Skip SSL ValidationSelect when your Odoo database is directly communicating with the Box.


Box Configuration Options

There are currently 3 different configuration options to use to connect to your box; directly to the endpoint, using an external endpoint, or used the BoxMesh feature. Choose an option:

Option 1: Endpoint
  • Name: Name your box.

  • Location: Select which location this box is associated with.
  • Endpoint: Enter the endpoint for box with protocol, host, and port (e.g. https://127.0.0.1)

Option 2: External Endpoint

This configuration option will require you to open a port on your network, this will be end up being your external endpoint, which will point to your box on your internal network.

  • Name: Name your box.

  • Location: Select which location this box is associated with.
  • EndpointEnter the endpoint for box with protocol, host, and port (e.g. https://127.0.0.1)
  • External Endpoint: This is the URL Odoo will use to connect. It must include the protocol, host, and port (e.g. https://https://127.0.0.1)

    • Use External Endpoint: enable this option

Option 3: BoxMesh
  • Endpoint: Enter the endpoint for box with protocol, host, and port (e.g. https://127.0.0.1)
  • External Endpoint: This is the URL Odoo will use to connect. It must include the protocol, host, and port (e.g. https://https://127.0.0.1)
  • Use BoxMesh Protocol: Use external endpoint with boxmesh proxy protocal
    • BoxMesh Token: Token to authenticate boxmesh service
    • BoxMesh Pool: Specify which boxmesh to communicate with
    • Override Internal Endpoint to https://localhost: Useful only in debug situations where you do not know the correct IP.
  • Use External Endpoint: Use only when your Odoo database is communicating directly with the box.

Add A Printer

To add a printer from the box configuration page, navigate to the Printer tab and click Add a Line, then fill in the following:

  • Name: Name your printer.
  • Queue: This queue name is obtained from CUPS, the printer server software on the raspberry pi.

Printers

While we can manually add the printer from the box itself, you can also do the same by going to the Printer menu. This will show you all existing printers, as well as which location and box they are associated with and even run test prints to verify that everything is connected properly.

Click New, to make a new printer.

Then fill out the following:

  • Name: Name you printer
  • QueueThis queue name is obtained from CUPS, the printer server software on the raspberry pi.
  • Box: Select a box to associate the printer with.
  • Location: This is a read only field, and will show you which location the box you selected is associated with.

Test Your Printer

You will notice that right above, you have a couple buttons. These are used to test your printers depending on how  you configured your box.

User Profiles

Navigate over to the User Profile, and click NEW, then fill in the following:

  • Profile: Enter a name for the profile.

  • User: Select the user.
  • Current Profile: Check this box if this is an active profile for this user.
  • Use Endpoint External: Use only when your Odoo database is communicating directly with the box.

  • Icon: Choose an icon class to visually identify the user profile.

  • Icon Color: An HTML color attribute to help identify the profile.

PrintBox

  • Letter Printer: Select a pdf printer
  • Label Printer: Select a label printer.


Activate / Disable Profile

Users may have multiple profiles depending on which location they need to print to. To activate a profile, click the  icon on the top-right of the screen, then click on the profile to activate it. 


To disable the profile, again click the  icon on the top-right of the screen, then click on the profile to deactivate it.

Important!

In order for User to be able to print in Odoo, they will need to visit the Main Endpoint in their browser to accept the SSL.

This can be done by entering Debug mode, clicking on the Boxes icon in the menu bar, and then clicking the endpoint/IP link.

PrintBox in Action!

By navigating to a Sale Order and using the Print action and then Quotation/Order, if you have a letter printer enabled on the active user profile, this SO will now print to that printer.

If you navigate to the Delivery or an OUT transfer and use the Print action, you can then select an option that will print a label with the related information, be it a Picking Operations slip or a Delivery Slip.