Skip to main content

XML-RPC openoffice document convertion server

Project description

Install Cloudooo
================

$ python2.6 setup.py install

Warnings:
- you must have installed setuptools>=0.6c11 in this python.

Install Dependencies in Mandriva
================================

$ urpmi xvfb # System Dependencies

Install OpenOffice.org
======================

Was used for testing the package's official openoffice.org. Follow these steps to install:

Download Package from the official site
---------------------------------------

x86_32
----
$ wget http://download.services.openoffice.org/files/stable/3.2.0/OOo_3.2.0_LinuxIntel_install_wJRE_en-US.tar.gz

x86_64
------
$ wget http://download.services.openoffice.org/files/stable/3.2.0/OOo_3.2.0_LinuxX86-64_install_wJRE_en-US.tar.gz

Unpack the tar.gz and Install
-----------------------------
$ tar zxvf OOo_3.2.0_LinuxX86-64_install_wJRE_en-US.tar.gz
$ cd OOO320_m12_native_packed-1_en-US.9483/RPMS
$ rpm -i *.rpm # install all packages together

The instalation is in /opt

Create Configuration File
=========================

The configuration file is used to start the application using paster.
$ cp ./cloudooo/samples/samples.conf . # Copy to current folder

The next step is define some attributes in cloudooo.conf:
- working_path - folder to run the application. This folder need be created.
- uno_path - full path to UNO library;
- soffice_binary_path - full path to soffice.bin;

Run Application
===============

$ paster serve ./cloudooo.conf

or run as a daemon:

$ paster serve ./cloudoo.conf --daemon


Stop Application
===============

$ kill -1 PASTER_PID

Warning: always use SIGHUP because only with this signal all processes are
stopped correctly.

Cloudooo Description
=====================

- XMLRPC + WSGI will be one bridge for easy access OpenOffice.org. This will implement one XMLRPC server into WSGI (Paster).

- PyUno is used to connect to OpenOffice.org stated with open socket. The features will be handled all by pyuno.

- Xvfb is used to run Openoffice.org. This is controlled by Daemon(cloudooo).

- Only a process will have access to OpenOffice.org by time.

- All clients receive the same object(proxy) when connects with XMLRPC Server.

Xvfb and OpenOffice

- configure and start Xvfb;
- Use a single Xvfb;
- the xvfb will be started with the XMLRPC Server;
- When start the Daemon(cloudooo), it configures Xvfb, next opens the openoffice(with pyuno) and start XMLRPC Server;
- control Xvfb;
- start openoffice;
- Pyuno start the openoffice processes and the communication is through sockets;
- Openoffice processes run in brackground and in virtual display;
- control openoffice;
- The socket can't lose the connection, if this occurs should kill the process and submit again the file;

XMLRPC Server - XMLRPC + WSGI
-----------------------------

- Send document to openoffice and return the document converted with metadata;
- XMLRPC receives a file and connects to a openoffice by pyuno;
- The pyuno opens a new openoffice, write, add metadata and returns the document edited or converted to xmlrpc and it return the document to the user;
- When finalize the use of openoffice, should make sure that it was finalized;
- Export to another format;
- Invite document and return metadata only;
- Edit metadata of the document;
- Problems and possible solution
- OpenOffice is stalled;
- finalize the process, start openoffice and submit the document again(without restart the cloudooo);
- Openoffice is crashed;
- finalize the process, verify if all the process was killed, start openoffice and submit the document again(without restart the cloudooo)
- OpenOffice received the document and stalled;
- if openoffice isn't responding, kill the process and start
- The document that was sent is corrupt;
- write in log the error and verify that the process aren't in memory

1.0.10 (unreleased)
===================
- Add getImage for OOGranulate
- Add getImageItemList for OOGranulate
- Add OdfDocument
- Add granulate interface.

1.0.9
=====
- use pkg_resources to get helper scripts.
- move internal scripts to helper folder.
- removed cloudooo as dependency of internal scripts.
- modified way that the filters of OpenOffice.org are passed.

1.0.8
=====
- Remove all attributes that works with cloudooo script paths.
- Use all scripts according to your python eggs.
- Fixed problem when a spreadsheet will be converted to html.

1.0.7
=====
- Remove entry points, treat those as ordinary files.
- Search all script files using pkg_resources.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cloudooo-1.0.9.tar.gz (260.8 kB view details)

Uploaded Source

File details

Details for the file cloudooo-1.0.9.tar.gz.

File metadata

  • Download URL: cloudooo-1.0.9.tar.gz
  • Upload date:
  • Size: 260.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for cloudooo-1.0.9.tar.gz
Algorithm Hash digest
SHA256 a156526e569052856f32d21392d29c183121b4ec7fcd096cca13d4440de7409d
MD5 6d2d8f3a1eb1a2b81b5581369d9bb543
BLAKE2b-256 d2bec9fd726e34c4b7a6cc45aa110bd193fd7ab930e6df5d80cdfe110e37b77c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page