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.
================
$ 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)
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | a156526e569052856f32d21392d29c183121b4ec7fcd096cca13d4440de7409d |
|
MD5 | 6d2d8f3a1eb1a2b81b5581369d9bb543 |
|
BLAKE2b-256 | d2bec9fd726e34c4b7a6cc45aa110bd193fd7ab930e6df5d80cdfe110e37b77c |