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内部是如何管理的呢? 默认情况下 ...
随机推荐
- Laravel跳转回之前页面,并携带错误信息
用Laravel5.1开发项目的时候,经常碰到需要携带错误信息到上一个页面,开发web后台的时候尤其强烈. 直接上: 方法一:跳转到指定路由,并携带错误信息 return redirect('/adm ...
- Vue 不使用Vuex的情况下进行状态管理
在封装自己的Vue ui库的时候,往往要封装一些比较复杂的组件,比如说table,form之类.这些组件由于功能繁杂,还涉及到子组件嵌套及通信,如果没有一套状态管理方案的话很容易导致代码难以阅读.难以 ...
- 关于Promise 简单使用理解
在学一个新的知识的时候,我的总结是首先要具备相关的基础知识,其次就是可以静下心来能看进去去理解,看一两遍不懂,就看四五遍,甚至六七遍,每一遍都认真努力理解,总会学会的. Promise是一个构造函数, ...
- HDU 2162(注意初始化位置!)
Add ‘em Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- noi题库 1.7 字符串
前九题 01:统计数字字符个数 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一行字符,统计出其中数字字符的个数. 输入 一行字符串,总长度不超过255. 输出 输出为1行,输出字 ...
- 22、Flask实战第22天:Flask信号
Flask中的信号使用的是一个第三方插件blinker.通过pip list看一下是否安装,如果没有,则使用如下命令安装 pip install blinker 自定义信号 自定义信号分为3步: ①定 ...
- POJ 3168 Barn Expansion (几何基础)
[题目链接] http://poj.org/problem?id=3168 [题目大意] 给出一些矩形,没有相交和包含的情况,只有相切的情况 问有多少个矩形没有相切或者边角重叠 [题解] 我们将所有的 ...
- 【动态规划】bzoj1613 [Usaco2007 Jan]Running贝茜的晨练计划
#include<cstdio> #include<algorithm> using namespace std; #define N 10001 int n,m,a[N],f ...
- cocos2d 文件系统使用文件内存映射性能对比
//cocos 修改代码 ..... //性能测试代码 extern "C" { #include <time.h> #include <stdlib.h> ...
- linux下查看端口占用情况以及服务启动的目录
1.先介绍几个命令: 1. lsof -i:80 查看80端口的占用情况 命令返回结果: COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME ngin ...