Necesito realizar la impresión de un ticket de cocina utilizando ODOO 8 en el módulo TPV a través de pos_restaurant sin embargo solo dispongo de una impresora serial y el sistema utiliza USB para dicha impresión lo que he hecho es adquirir un convertidor SERIAL a USB pero tengo el siguiente inconveniente al intentar acceder a la impresora he simulado en el siguiente script de python el acceso a la impresora:
import usb class FindUsbClass(object): def __init__(self, usb_class): self._class = usb_class def __call__(self, device): # first, let's check the device if device.bDeviceClass == self._class: return True # transverse all devices and look through their interfaces to # find a matching class for cfg in device: intf = usb.util.find_descriptor(cfg, bInterfaceClass=self._class) if intf is not None: return True return False printers = usb.core.find(find_all=True, custom_match=FindUsbClass(0)) for printer in printers: if hex(printer.idVendor) == '0x67b': print hex(printer.idVendor) print hex(printer.idProduct) print usb.util.get_string(printer, 256, printer.iManufacturer) Pero al intentar ejecutar con el usuario openerp da el sigueinte error: 0x67b 0x2303 Traceback (most recent call last): File "prueba.py", line 26, in <module> print usb.util.get_string(printer, 256, printer.iManufacturer) File "/home/openerp/.local/lib/python2.7/site-packages/usb/util.py", line 271, in get_string langid File "/home/openerp/.local/lib/python2.7/site-packages/usb/control.py", line 173, in get_descriptor data_or_wLength = desc_size) File "/home/openerp/.local/lib/python2.7/site-packages/usb/core.py", line 955, in ctrl_transfer self._ctx.managed_open() File "/home/openerp/.local/lib/python2.7/site-packages/usb/core.py", line 105, in managed_open self.handle = self.backend.open_device(self.dev) File "/home/openerp/.local/lib/python2.7/site-packages/usb/backend/libusb1.py", line 722, in open_device return _DeviceHandle(dev) File "/home/openerp/.local/lib/python2.7/site-packages/usb/backend/libusb1.py", line 600, in __init__ _check(_lib.libusb_open(self.devid, byref(self.handle))) File "/home/openerp/.local/lib/python2.7/site-packages/usb/backend/libusb1.py", line 552, in _check raise USBError(_strerror(ret), ret, _libusb_errno[ret]) usb.core.USBError: [Errno 13] Access denied (insufficient permissions) He agregado al usuario "openerp" a los grupos: "dialout", "tty", "lp", "lpadmin". Pero sigo sin poder ejecutar con éxito. Al ejecutar con sudo python prueba.py se realiza correctamente es decir el script funciona, pero no puedo ejecutar con "sudo" desde ODOO. Su ayuda por favor, Saludos -- Ing. Alcides Rivera *JEFE DE SISTEMAS, DESARROLLO Y TECNOLOGÍA* *VIRTUALSAMI CIA. LTDA.* *Dirección:* Carlos Elías Almeida 7-29 y Gabriela Mistral Tras el Centro Comercial Laguna Mall, Barrio Pilanquí del IESS, Ibarrra - Imbabura - Ecuador *Teléfonos:* 065002485, 062953199, 0991463145 *Correos Electrónicos:* alci...@virtualsami.com.ec, alcides.river...@gmail.com *Sitio Web:* http://www.virtualsami.com.ec
_______________________________________________ Lista de Correo Asociacion@listas.asle.ec Visite http://listas.asle.ec/mailman/listinfo/asociacion para modificar las opciones de suscripción (suscribirse, retirarse, etc). Participa en las listas y próximo foro, como socio de ASLE http://www.asle.ec/portal2/node/7 Visita el canal IRC #asle en irc.freenode.org para consultas en tiempo real. Todo mensaje que sea enviado a esta lista es público (especialmente los que contengan una nota de confidencialidad) y cualquiera puede hacer el uso que desee de él.