Friday 12 April 2013

Etherpad configuration with OpenERP, run ehterpad at your own instance and configure it with OpenERP.

Install Etherpad client from one of following link.

http://etherpad.org/#download
https://github.com/ether/etherpad-lite#installation

For Windows

Prebuilt windows package

This package works out of the box on any windows machine, but it's not very useful for developing purposes...
  1. Download the latest windows package
  2. Extract the folder
Now, run start.bat and open http://localhost:9001 in your browser.

Fancy install

You'll need node.js and (optionally, though recommended) git.
  1. Grab the source, either
  2. start bin\installOnWindows.bat
Now, run start.bat and open http://localhost:9001 in your browser.
Update to the latest version with git pull origin, then run bin\installOnWindows.bat, again.


Note:- nodejs is required for etherpad installation.

Ubuntu

For Ubuntu download tar.gz extract it and run run.sh script, thie may ask you to install some other packages so install that first and then rung sh file again.

ehterpad client requires nodejs, to install nodejs at your end run follwing command.


sudo apt-get install python g++ make
mkdir ~/nodejs && cd $_
wget -N http://nodejs.org/dist/node-latest.tar.gz
tar xzvf node-latest.tar.gz && cd `ls -rd node-v*`
./configure
make install

When you run run.sh of ehterpad you will get following message

[2013-04-12 15:11:16.946] [WARN] console - You need to set a sessionKey value in settings.json, this will allow your users to reconnect to your Etherpad Instance if your instance restarts
[2013-04-12 15:11:16.949] [WARN] console - DirtyDB is used. This is fine for testing but not recommended for production.
[2013-04-12 15:11:19.316] [INFO] console - Installed plugins: ep_etherpad-lite
[2013-04-12 15:11:19.351] [WARN] console - Can't get git version for server header
ENOENT, no such file or directory '/home/msh/Downloads/ether-etherpad-lite-069319f/.git/HEAD'
[2013-04-12 15:11:19.352] [INFO] console - Report bugs at https://github.com/ether/etherpad-lite/issues
[2013-04-12 15:11:19.562] [INFO] console -    info  - 'socket.io started'
[2013-04-12 15:11:19.917] [INFO] console - You can access your Etherpad-Lite instance at http://0.0.0.0:9001/
[2013-04-12 15:11:19.917] [WARN] console - Admin username and password not set in settings.json.  To access admin please uncomment and edit 'users' in settings.json

See the first message which shows you have to set a session key inside settings.json

Also read log You can access your Etherpad-Lite instance at http://0.0.0.0:9001/, your Etherpad is running on your system on port 9001.

No You can go to Etherpad folder wherever your etherpad resides and open api.txt file, copy the api key and add it in OpenERP -> Settings -> Companies -> open company and in configurations tab add api key and also add your host:port in Pad Server.

So install pad_project module and just open Task, see desccription field is widget="pad", so you will get etherpad view for that field it comes from your Etherpad client running on your system.

Wee have used Python API for Etherpad, you can download that
HTTP API client libraries from

https://github.com/ether/etherpad-lite/wiki/HTTP-API-client-libraries

Embed this API into your code as we did in standar pad module of OpenERP.

Very Important Note: This API's only works with HTTP, as the name of library suggests, so you can not run your Etherpad client on HTTPS, if you run it on HTTPS so it may create issues, like whenever your open your pad widget from task and write something in it, it sends HTTP request to your Etherpad server which is running on HTTPS, so it will give Bad Gateway error.