printer.cups
#
- class platypush.plugins.printer.cups.PrinterCupsPlugin(host: str = 'localhost', printer: str | None = None, **kwargs)[source]#
Bases:
Plugin
A plugin to interact with a CUPS printer server.
Requires:
pycups (
pip install pycups
)
- __init__(host: str = 'localhost', printer: str | None = None, **kwargs)[source]#
- Parameters:
host – CUPS host IP/name (default: localhost).
printer – Default printer name that should be used.
- accept_jobs(printer: str | None = None, host: str | None = None)[source]#
Start accepting jobs on a printer.
- Parameters:
printer – Printer name.
host – CUPS server IP/name (default: default configured
host
).
- add_printer(name: str, ppd_file: str, info: str, location: str | None = None, host: str | None = None)[source]#
Add a printer.
- Parameters:
name – Printer name - alphanumeric + underscore characters only.
ppd_file – Path to the PPD file with the printer information and configuration.
host – CUPS server IP/name (default: default configured
host
).info – Human-readable information about the printer.
location – Human-readable printer location info.
- add_printer_to_class(printer_class: str, printer: str | None = None, host: str | None = None)[source]#
Add a printer to a class.
- Parameters:
printer_class – Class name.
printer – Printer name.
host – CUPS server IP/name (default: default configured
host
).
- cancel_job(job_id: int, purge_job: bool = False, host: str | None = None)[source]#
Cancel a printer job.
- Parameters:
job_id – Job ID to cancel.
purge_job – Also remove the job from the server (default: False).
host – CUPS server IP/name (default: default configured
host
).
- delete_printer(printer: str, host: str | None = None)[source]#
Delete a printer from a CUPS server.
- Parameters:
printer – Printer name.
host – CUPS server IP/name (default: default configured
host
).
- delete_printer_from_class(printer_class: str, printer: str | None = None, host: str | None = None)[source]#
Delete a printer from a class.
- Parameters:
printer_class – Class name.
printer – Printer name.
host – CUPS server IP/name (default: default configured
host
).
- disable_printer(printer: str | None = None, host: str | None = None)[source]#
Disable a printer on a CUPS server.
- Parameters:
printer – Printer name.
host – CUPS server IP/name (default: default configured
host
).
- enable_printer(printer: str | None, host: str | None = None)[source]#
Enable a printer on a CUPS server.
- Parameters:
printer – Printer name.
host – CUPS server IP/name (default: default configured
host
).
- finish_document(printer: str | None = None, host: str | None = None)[source]#
Finish sending a document to a printer.
- Parameters:
printer – Printer name (default: default configured
printer
).host – CUPS server IP/name (default: default configured
host
).
- get_classes(host: str | None = None) Dict[str, Dict[str, Any]] [source]#
Get the list of classes on a CUPS server.
- Parameters:
host – CUPS server IP/name (default: default configured
host
).- Returns:
dict - class_name -> class_info.
- get_jobs(host: str | None = None) Dict[int, Dict[str, Any]] [source]#
Get the list of active jobs.
- Parameters:
host – CUPS server IP/name (default: default configured
host
).- Returns:
A job_id -> job_info dict.
- get_printers(host: str | None = None) PrintersResponse [source]#
Get the list of printers registered on a CUPS server. :param host: CUPS server host IP/name (default: default configured
host
). :return:platypush.message.response.printer.cups.PrintersResponse
, as a name -> attributes dict.
- move_job(job_id: int, source_printer_uri: str, target_printer_uri: str, host: str | None = None)[source]#
Move a job to another printer/URI.
- Parameters:
job_id – Job ID to cancel.
source_printer_uri – Source printer URI.
target_printer_uri – Target printer URI.
host – CUPS server IP/name (default: default configured
host
).
- print_file(filename: str, printer: str | None = None, host: str | None = None, title: str | None = None, options: Dict[str, Any] | None = None) PrinterJobAddedResponse [source]#
Print a file.
- Parameters:
filename – Path to the file to print.
printer – Printer name (default: default configured
printer
).host – CUPS server IP/name (default: default configured
host
).title – Print title.
options – Extra CUPS name->value options.
- print_files(filenames: List[str], printer: str | None = None, host: str | None = None, title: str | None = None, options: Dict[str, Any] | None = None) PrinterJobAddedResponse [source]#
Print a list of files.
- Parameters:
filenames – Paths to the files to print.
printer – Printer name (default: default configured
printer
).host – CUPS server IP/name (default: default configured
host
).title – Print title.
options – Extra CUPS name->value options.