喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 喜悦证交所 | 帮助

RSS 订阅当前论坛  

$5.95 Web Hosting     

上一主题 下一主题
     
标题: 关于在线办公系统,侦测不正常退出的解决办法。  
本帖已经被作者加入个人空间
 
hero913 (文风大侠)
高级会员
Rank: 4
现在穷疯了,没钱


UID 70150
精华 0
积分 924
帖子 958
金钱 924 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2006-3-23
状态 离线
[广告]: 代充Paypal帐号美元
关于在线办公系统,侦测不正常退出的解决办法。

请各位大哥提出更好的解决方案

========================================================
方案1。

工作需求:
当下属传送签署文件到上级时,在上级计算机网页会跳出讯息通知窗口,告知有私人文件送达,如果上级未上线,则传送手机简讯告知。

问题:
1.        当发生未按程序注销时,会造成系统以为使用者还在在线,而发生传送简讯和讯息通知的问题。
2.        讯息通知和手机简讯实时性。

建议:
* 侦测断线:
1.        (web 这种被动的处理模式很难 "立刻" 知道使用者已离线这件事...一般会用以下方法来侦测)---- 在Server端的程序则是建立一个数据表(例如命名为backtime),纪录登入时间、回传的时间、client IP…等信息,。在client网页上,隐藏一个frame或iframe,以javascript的timer定时(例如5分钟)将iframe转址执行一个 php网页 (更新backtime数据表的回传时间)。
2.        以linux的cron排程定时去执行一个php网页,侦测backtime数据表内的每位登入者的回传时间字段是否超过5分钟,如果超过,则删除此登入者。
*        侦测是否有讯息通知:
1.        当网页埋入一个隐藏frame或 iframe,以javascript的timer定时(例如5分钟)去执行一个 php网页时(是否跟更新回传时间同一个php网页,则视系统整体性为主),在此php 里也包含检查是否有讯息通知(当然在数据库内要有此纪录),有的话在此php网页执行javascript的弹出窗口告知有讯息通知。(loading会比较重,但较具实时性,否则只能当使用者reload网页或跳到系统另外的网页时,才能侦测到是否有讯息通知)。
Ps. 以iframe来做会比较类似背景作业。
*        手机简讯通知:
1.        此部份可使用linux的cron排程定时去执行php网页(是否要跟检查登入者回传时间同一张php网页,则视系统整体性为主)。当使用者未登入,有讯息尚未接收、且手机简讯尚未发送,则传送手机简讯。

结论:
        上面方法仍然存在着时间差、实时性、loading是否太重问题。对于时间差和loading问题需详细思考每张网页和server端 cron排程执行时的协调性,时间调太短loading 会加重,但时间差距较小;时间调太长往往会丧失实时性。而实时性则需端看公司能忍受的时间范围,且须告知公司延迟的时间范围。


==========================================================
方案2(这个不知道能不能实现,请各位指点,如果这个能实现的话那就更好了,我也没有试过,只是这样想的)

由服务器端主动发起对客户端浏览器是否仍开启的侦测;
                      譬如由数据库查出对象用户的uid,sid或相关ip等所需数据,再以php或javascript命令查询客户端
                       浏览器版本或浏览器须响应的数据,以查询响应的值决定浏览器是否开启!




MSN:aaron-0913@hotmail.com
skype:chenqiangang
QQ:105915495
php我的最爱,希望志同道合的加我,聊一聊
给我留言
2006-7-3 08:28 AM#1
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
LuckLrj (中国php中的爱因斯坦)
版主
Rank: 7Rank: 7Rank: 7
老会员


UID 64836
精华 0
积分 2323
帖子 3118
金钱 2323 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2005-6-19
状态 离线
[广告]: Enom域名自助付费 自助注册 自助PUSH 主流域名COM等一律57.99元年
2 不行的。

你内网pv不大,设置js 每秒刷一次,问题不是很大。




学习,工作累了,请访问我的小站,娱乐一下。http://www.52sunny.net
2006-7-3 02:48 PM#2
查看资料  Blog  发短消息  顶部
 
hero913 (文风大侠)
高级会员
Rank: 4
现在穷疯了,没钱


UID 70150
精华 0
积分 924
帖子 958
金钱 924 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2006-3-23
状态 离线
[推荐阅读] soap求助
回复 #2 LuckLrj 的帖子


2是不行的,思来想去,怎么可能服务器主动发送命令到客户端呢。呵呵,终于明白了,!!!!!!!!!!!!!




MSN:aaron-0913@hotmail.com
skype:chenqiangang
QQ:105915495
php我的最爱,希望志同道合的加我,聊一聊
给我留言
2006-7-3 07:35 PM#3
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
qh663
版主
Rank: 7Rank: 7Rank: 7
中级会员


UID 30020
精华 0
积分 546
帖子 580
金钱 546 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2004-7-13
来自 河源
状态 离线
[推荐阅读] 求用PHP怎么做这么验证啊?
有些想法,我也不知道好不好
1、应该有选择地通知短信,因为短信是要收费的,而有些文件也不是很急,这类可以不必发短信了。
2、如果可以象聊天室那样,每个人是否在线,打开网页就一清二楚了。




五百多篇PHP学习资料
喜悦村BLOG
php团队接兼职项目QQ:80031807
PHP群:768844
2006-7-4 04:42 PM#4
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
hero913 (文风大侠)
高级会员
Rank: 4
现在穷疯了,没钱


UID 70150
精华 0
积分 924
帖子 958
金钱 924 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2006-3-23
状态 离线
[推荐阅读] 关于SESSION问题
回复 #4 qh663 的帖子

聊天室也是要随时剧新的,而且不正常退出,或乾是掉线的话,也要写入日志

我现在想到一个办法,就是在后台写一个不断运行的程序,根据客户端传回的信息,来作出判断,看有没有新的信

息回传过来,如果没有就自动把session值注销掉,然后根据用户的ID删除那个存放在线人员名字的表中的这个用户

不知道我的这个想法对不对,请各位指教,!!!!谢谢~~~~~~~~




MSN:aaron-0913@hotmail.com
skype:chenqiangang
QQ:105915495
php我的最爱,希望志同道合的加我,聊一聊
给我留言
2006-7-4 09:08 PM#5
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
kitty-cat
新手上路
Rank: 1



UID 74755
精华 0
积分 34
帖子 53
金钱 34 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2006-6-9
状态 离线
[推荐阅读] server on 'localhost' (10055) --什么错误啊,如何改正
那个不断运行的程序,不断在网络中收发消息,网络的开销是不是太大?



欢迎加入PHP在线:18214659
2006-7-5 04:47 PM#6
查看资料  发短消息  顶部
 
xianle
中级会员
Rank: 3Rank: 3
中级会员



UID 14004
精华 0
积分 237
帖子 233
金钱 237 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2002-4-26
状态 离线
[推荐阅读] 关于生成静态页面的问题!帮我解答一下吧!
用模态的方式打开一个新的网页..然后把父网页MOVE 到屏幕上看不到的地方.

用户操作模态网页就行..


当用户关模态网页时.父网页移回原位.并做后期处理.




每天太阳都是新的
2006-8-24 04:51 PM#7
查看资料  发短消息  顶部
 
apo
中级会员
Rank: 3Rank: 3
中级会员


UID 19603
精华 0
积分 240
帖子 243
金钱 240 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2003-4-14
来自 北京
状态 离线
[推荐阅读] js函数问题
7 楼说得有道理,但不太明,能不能讲明白一点
2006-8-29 12:04 AM#8
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
LuckLrj (中国php中的爱因斯坦)
版主
Rank: 7Rank: 7Rank: 7
老会员


UID 64836
精华 0
积分 2323
帖子 3118
金钱 2323 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2005-6-19
状态 离线
[推荐阅读] 大家帮我测试一下啊~BlueShow v1.0
了解一下网吧的网管软件是如何侦察是否有机器不受控制,它是每15秒对整个lan内的机器发一次数据并接受回应
通过这个回应来排除管理机器状态的,

这个php来做就要用到服务器的 push




学习,工作累了,请访问我的小站,娱乐一下。http://www.52sunny.net
2006-8-29 10:10 AM#9
查看资料  Blog  发短消息  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.028782 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP