Skip to content

printJOB is software for printing across internet and network. Just execute client and executor and start printing.

License

Notifications You must be signed in to change notification settings

limpapud/printJob

Repository files navigation

printJob GitHub issues GitHub stars GitHub forks GitHub license

Brief information:

printJob is a MS Windows supported software for printing from any PC to any PC across network and internet. It is possible as a result of queeing print job on from first PC , and periodically fetching and printing queued printing jobs from second PC.

Languages and libraries used:

  • Python 3.6 - high-level programming language for general-purpose programming... but I do not think that this language needs any introduction.
  • tkinker - Graphical interface for Python based on Tk GUI.
  • os - module provides a portable way of using operating system dependent functionality.
  • base64 - RFC 3548 based binary data encoding/decoding module.
  • uuid - RFC 4122 based UUID creating module.
  • MySQLdb - MySQL API for Python.
  • schedule - In-process job schedulling module.
  • pythoncom - Module for working with COM based interfaces.
  • threading - high level threading interface.
  • time - various functions for operations with time.
  • pywin32 - Windows Extensions for Python.
  • pyinstaller -Program that freezes (packages) Python programs into stand-alone executables, under Windows, Linux, Mac OS X, FreeBSD, Solaris and AIX.

Tasks accomplished by bot:

  • PDF və Word document print
  • Print over internet and network

Bot features:

  • Execute printJOB Executor.exe and select target PC, then browse file to print. After that filename,target PC name,print status,print job creation timestamp and file itself are placed in MySQL DB.
  • At the same time, executed "prinJOB Client.exe" will periodically (2 min by default) querry DB for jobs on computer runned on and updates branch_list.last_active column, and if there is some job, prints it on default printer.
  • Executed "printJOB Server.exe" with 2 minute period disables PC's what was inactive for more than 5 minutes (branch_list.last_active and "branch_list.a_status").

Planned functionality:

  • image print - by now only ".PDF"/".DOC"/".DOCX" files are supported to print, "JPG/JPEG/BMP/PNG" format files are in planed functionality.
  • workstation verification - client workstation extended verification.

Packing .py to '.exe' with PyInstaller:

  • --noconsole - to hide console at executable execution
  • --onefile - to pack executable in one file

Demo


alt text alt text

Files

Existing filed and descriptions are as below:

Main folder:

  • printJOBClient.py - Client for printing and pooling jobs.
  • config.py - Configuration file.
  • printJOBExecutor.py - CLient for creating print jobs.
  • printJOBServer.py - Server side executable for schedulled jobs execution.
  • FunctionsFile.py - File with essential functions
  • createDB_structure.sql - DB Structure.

Contributions

Want to contribute? That is great! Please Fork and Pull to main branch.

Notes:

  • Author appreciates any size of contribution.
  • Have some Issues or thoughts to share? You can share it via opening Issue or sending an email that is mentioned in the end of page to author.

Usage and Licencing

Project is distributed with MIT licence.

That mean that:

  • This software and derivatives may be used for commercial purposes
  • This software may be modified
  • This software may be distributed
  • This software may be used and modified in private
  • This licence includes a limitation of liability
  • This licence explicitly states that it DOES NOT provide any warranty
  • A copy of the licence and copyright notice must be included with the software.

Contact

You can contact with author through [email protected] mail. Additionaly I am adding links to social network accounts and blog.

Facebook Wordpress LinkedIn

About

printJOB is software for printing across internet and network. Just execute client and executor and start printing.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages