Instant Messaging for OpenERP v7
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的更多相关文章
- 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 ...
- 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 ...
- 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 ...
- OpenERP在哪储存附件?
我们知道对OpenERP中的每个内部对象(比如:业务伙伴,采购订单,销售订单,发货单,等等)我们都可以添加任意的附件,如图片,文档,视频等.那么这些附件在OpenERP内部是如何管理的呢? 默认情况下 ...
- openerp 常见问题 OpenERP在哪储存附件?(转载)
OpenERP在哪储存附件? 原文地址:http://cn.openerp.cn/where_to_store_attachement_in_openerp_7/ 我们知道对OpenERP中的每个内部 ...
- openerp 经典收藏 通过view实现字段的只读、隐藏操作(转载)
通过view实现字段的只读.隐藏操作 原文地址:http://cn.openerp.cn/view_groups/ 在OpenERP V7视图(ir.ui.view)多了一个非常有用的字段(group ...
- openerp 经典收藏 Openerp开发进销存系统完毕总结(转载)
原文地址:http://blog.csdn.net/heartrude/article/details/9142463 Openerp开发进销存系统完毕总结 分类: 代码历程 OpenERP 工程思想 ...
- xmpp 协议之可扩展消息(messaging)与状态(presence)协议核心: RFC 3920
附:asmack已经不需要了,4.1以后的smack已经可以在android上使用了. XMPP Clients: http://xmpp.org/software/clients.html An ...
- Openerp 7.0 附件存储位置
我们知道对OpenERP中的每个内部对象(比如:业务伙伴,采购订单,销售订单,发货单,等等)我们都可以添加任意的附件,如图片,文档,视频等.那么这些附件在OpenERP内部是如何管理的呢? 默认情况下 ...
随机推荐
- Fedora27安装宝塔linux面板出现/usr/lib/rpm/redhat/redhat-hardened-cc1找不到的错误
执行下面的命令: sudo dnf install redhat-rpm-config 就可以解决你的问题了
- Hydra--密码破解的神器
原来不止burpsuit.sqlmap是神器,还有Hydra. 虽久闻大名,却未曾使用,今天偶然用到,发现支持的服务那真是多,ftp.ssh.smtp.imap.http...,而且支持ssl 可以想 ...
- Dart类
Dart中没有访问控制符,无论类还是方法默认都是public 1.构造函数 构造函数可以没有方法体,并且this可以直接在传参时直接对实例赋值 Bicycle(this.cadence, this.s ...
- [BZOJ 2006] 超级钢琴
Link: https://www.lydsy.com/JudgeOnline/problem.php?id=2006 Algorithm: 对于此类区间最值类问题,我们可以通过控制一端不变来寻找当前 ...
- [Contest20180314]数列
数据范围告诉我们要写两档的分 第一档:$M\leq200,N\leq10^9$,可以枚举$m$计算答案 直接矩阵快速幂:$O\left(M^4\log_2N\right)$,会超时,所以我们需要某些“ ...
- 【动态规划】【记忆化搜索】CODEVS 1010 过河卒 2002年NOIP全国联赛普及组
f(i,j)=f(i-1,j)+f(i,j-1),显然可以暴力递归求解,但是很多重复的状态,所以可以记忆下来. 注意障碍点和边界的特判. #include<cstdio> #include ...
- python3开发进阶-Django框架中的ORM的常用操作的补充(F查询和Q查询,事务)
阅读目录 F查询和Q查询 事务 一.F查询和Q查询 1.F查询 查询前的准备 class Product(models.Model): name = models.CharField(max_leng ...
- Scala实战高手****第5课:零基础实战Scala函数式编程及Spark源码解析
Scala函数式编程 ----------------------------------------------------------------------------------------- ...
- Asp.Net MVC part1
路由简介在Global中注册了路由数据包括:默认Controller,默认Action,请求地址匹配路由规则 约定大于配置为了尽量少的配置,于是将常用的配置作为默认约定,如果不同则进行少量配置主要从存 ...
- [转][译] 分分钟学会一门语言之 Python 篇
Python was created by Guido Van Rossum in the early 90's. It is now one of the most popularlanguages ...