This module is based on the socket.io real time implementation. It inherit Of the modules web_longpolling and web_socketio on bitbucket.

How Install the module web_im

Make your Nginx/Apache conf

example conf for nginx:

worker_processes  1;

events {
worker_connections 1024;
} http {
server {
listen 80;
server_name www.myopenerp.fr;
location /socket.io {
proxy_pass http://127.0.0.1:8068;
proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https; proxy_redirect off;
}
location / {
proxy_pass http://127.0.0.1:8069;
}
}
}

/etc/hosts:

127.0.0.1       www.myopenerp.fr

the port:

8069: the OpenERP server
8068: the SocketIO server

/socketio is the default path to dispatch the poll

With buildout

Example of buildout configuration:

[buildout]
parts = openerp
versions = versions
extensions = gp.vcsdevelop
vcs-extend-develop = git+http://github.com/buildout/buildout.git#egg=zc.buildout
vcs-update = true
develop = web_socketio/oe_web_socketio [openerp]
recipe = anybox.recipe.openerp[bzr]:server
version = bzr lp:openobject-server/7.0 openerp-server last:1
addons = bzr lp:openobject-addons/7.0 openerp-addons last:1
bzr lp:openerp-web/7.0 openerp-web last:1 subdir=addons
hg http://bitbucket.org/anybox/web_socketio web_socketio default
hg http://bitbucket.org/anybox/web_im web_im default eggs = oe.web.socketio openerp_scripts = nosetests=nosetests command-line-options=-d
oe_web_socketio=oe_web_socketio [versions]
lxml = 2.3.3
docutils = 0.9
collective.recipe.sphinxbuilder = 0.7.3
pyparsing = 1.5.6
Werkzeug = 0.8.3

Build the buildout:

bin/buildout -c buildout.cfg

Run the OpenERP server in the first shell:

bin/start_openerp -d mydb -i web_im

Run the Gevent SocketIO server in the second shell:

./bin/oe_web_socketio -d mydb

Without buildout

You must get the modules web_socketio, web_longpolling and web_im:

hg clone http://bitbucket.org/anybox/web_socketio
hg clone http://bitbucket.org/anybox/web_im

Install the python eggs needed for gevent_socketio:

pip install gevent
pip install gevent_psycopg2
pip install gevent_socketio

Run the OpenERP server in the first shell:

oe -d mydb -i web_im

Run the Gevent SocketIO server in the second shell:

python web_socketio/web_socketio/server.py -d mydb

Configuration

In the web client the Instant Massaging is loaded only if the user is connected and this user has got a IM user linked.

By administrator

Only the administrator can add new IM user. You can configure IM user in Instant Messaging/Setting/Users`. Filled the name and the user linked.

In the consiguration of the user, in the page Instant Messaging of the notebook. You can configure the advanced configuration for this user:

  • Group of Instant Messaging: The IM group for the IM user, If no group are selected then the user will have the No group group

  • Display the other Instant Messaging user (default ALL):
    • All: All the user are display in the user list
    • Ònly connected: Display the connected or busy user.
  • Filter (default None): Apply a domain to filter the user in user list
    • None: See all the user
    • User List: Selected the user to see
    • List of user groups: See all the user come from the selected res.groups
    • List from Instant Messaging groups: Sell all the user come from the selected im.group
    • Custom configuration: Need to write a function which return a domain on im.user

The administrator can also create new IM group in Instant Messaging/Setting/Groups.

By user

TODO

Web client interface

Connectio state

TODO

Users list

TODO

Rooms

TODO

ROADMAP

Version: 0.1

  • Add documentation to configure and use web_im

Version: 0.2

Refactor the user list:

  • Sort the user by connection state

  • Add an icon to show the state of the connection of the user list

  • let the color of the user in black

  • replace the select html by ul and li node

  • move the advanced configuration from res.user to im.user

  • add image on im.user, if not filled then take on the res.users

  • Make 2 view for the im.user
    • Complete: only state is readonly
    • user own configuration: Can change only the name and the image

Update the documentation

Version: 0.3

Add multichater room notion

Update the documentation

Version: 0.4

  • Add action bar on the user in user's list and room menu
  • Add action webcan, use the webcam module which already exist

Update the documentation

Instant Messaging for OpenERP v7的更多相关文章

  1. ubuntu server激活即时通讯IM服务 Instant Messaging is not activated on this server

    转自:http://shine-it.net/index.php/topic,16469.msg28364.html ubuntu server 下 odoo激活及时通讯功能im OpenERP IM ...

  2. Instant Messaging for Business: Your 10 Best Options

    Instant Messaging for Business: Your 10 Best Options By Iaroslav Kudritskiy It's probably not a surp ...

  3. A tutorial that will show you how to build an instant messaging app with Sinch.

    http://stackoverflow.com/questions/26247986/unsatisfiedlinkerror-couldnt-load-sinch-android-rtc-from ...

  4. OpenERP在哪储存附件?

    我们知道对OpenERP中的每个内部对象(比如:业务伙伴,采购订单,销售订单,发货单,等等)我们都可以添加任意的附件,如图片,文档,视频等.那么这些附件在OpenERP内部是如何管理的呢? 默认情况下 ...

  5. openerp 常见问题 OpenERP在哪储存附件?(转载)

    OpenERP在哪储存附件? 原文地址:http://cn.openerp.cn/where_to_store_attachement_in_openerp_7/ 我们知道对OpenERP中的每个内部 ...

  6. openerp 经典收藏 通过view实现字段的只读、隐藏操作(转载)

    通过view实现字段的只读.隐藏操作 原文地址:http://cn.openerp.cn/view_groups/ 在OpenERP V7视图(ir.ui.view)多了一个非常有用的字段(group ...

  7. openerp 经典收藏 Openerp开发进销存系统完毕总结(转载)

    原文地址:http://blog.csdn.net/heartrude/article/details/9142463 Openerp开发进销存系统完毕总结 分类: 代码历程 OpenERP 工程思想 ...

  8. xmpp 协议之可扩展消息(messaging)与状态(presence)协议核心: RFC 3920

    附:asmack已经不需要了,4.1以后的smack已经可以在android上使用了. XMPP Clients:   http://xmpp.org/software/clients.html An ...

  9. Openerp 7.0 附件存储位置

    我们知道对OpenERP中的每个内部对象(比如:业务伙伴,采购订单,销售订单,发货单,等等)我们都可以添加任意的附件,如图片,文档,视频等.那么这些附件在OpenERP内部是如何管理的呢? 默认情况下 ...

随机推荐

  1. django学习随笔:ManagementUtility

    ManagementUtility类,位于django.core.management目录下的__init__.py文件. 这个类,在其init中: def __init__(self, argv=N ...

  2. Redis 源码走读(二)对象系统

    Redis设计了多种数据结构,并以此为基础构建了多种对象,每种对象(除了新出的 stream 以外)都有超过一种的实现. redisObject 这个结构体反应了 Redis 对象的内存布局 type ...

  3. scrapy snippet

    1. spider文件 from scrapy.contrib.spiders import CrawlSpider, Rule from scrapy.contrib.linkextractors. ...

  4. php中parse_url函数的源码及分析(scheme部分)

    前言 看师傅们的文章时发现,parse_url出现的次数较多,单纯parse_url解析漏洞的考题也有很多,在此研究一下源码(太菜了看不懂,待日后再补充Orz) 源码 在ext/standard/ur ...

  5. DFS之奇偶剪枝

    问题描述: 给定一个 N * M的迷宫+起点+终点 ,迷宫中有一些障碍无法穿过,问能否不重复也不停留地在刚好一共走 t 步出迷宫. 先上结论: 在理想情况下,s到e需要的最小步数为m=|ex-sx|+ ...

  6. 一个Sqrt函数引发的血案

    源码下载地址:http://diducoder.com/sotry-about-sqrt.html 好吧,我承认我标题党了,不过既然你来了,就认真看下去吧,保证你有收获. 我们平时经常会有一些数据运算 ...

  7. 为何jsp 在resin下乱码,但在tomcat下却工作良好的问题

    关于JSP页面中的pageEncoding和contentType两种属性的区别:       pageEncoding是jsp文件本身的编码       contentType的charset是指服 ...

  8. 【数论】【欧拉函数】bzoj2190 [SDOI2008]仪仗队

    由图可知,一个人无法被看到时,当且仅当有 人与原点 的斜率与他相同,且在他之前. ∴一个人可以被看到,设其斜率为y/x,当且仅当y/x不可再约分,即gcd(x,y)=1. 考虑将图按对角线划分开,两部 ...

  9. 【点分治】【乘法逆元】hdu4812 D Tree

    思路比较裸,但是要把答案存到哈希表里面,这里需要一定技巧,否则会被K=1且点权全是1的数据卡飞.预处理乘法逆元.TLE了一天.换了种点分治的姿势…… #pragma comment(linker,&q ...

  10. [JOISC2014]JOIOJI

    题目大意: 给你一串仅包含'J''O''I'的字符串,问满足三种字符出现次数相等的最大字串是多少? 思路: 用map存一下出现次数前缀和两两之差出现的最早位置,每次看一下当前的两两之差最早的出现位置是 ...