站点管理
站点密匙、连接和设置管理
1 使用场景
桌面助手主要是通过浏览器发起任务,发送给桌面助手去执行。
但也有如下几种情况,是需要在桌面主动发起任务的:
- 桌面助手消息通知
- 映射盘:在桌面进行文件管理
- 同步盘:可以在桌面文件管理器中发起同步操作
这时候要求桌面助手预先建立和站点的连接,包括站点的信息,当前用户等:
- 每个站点只能建立一个链接
- 在首次发起任务的时候建立连接
- 如果需要切换用户,需要登出现有连接,再重新建立连接
2 站点管理器 SiteManager
2.1 得到站点管理器 get_site_manager
sm = get_site_manager()
2.2 添加站点 add_site
site = sm.add_site( oc_url, account, instance, instance_url, instance_name, username, pid, token )
2.3 查看全部站点 list_sites
sites = sm.list_sites()
返回一组site对象
2.4 得到某个站点 get_site
site = sm.get_site(oc_url, account, instance)
2.5 删除某个站点 remove_site
sm.remove_site(site)
3 站点 Site
3.1 登录管理
3.1.1 站点登录 login
site.login(token)
3.1.2 站点登出 logout
site.logout()
3.1.3 站点登录状态 has_token
site.has_token()
3.2 设置管理
3.2.1 设置站点配置 set_config
设置键值对:
site.set_config(key, value)
比如站点是否接收消息通知:
site.set_config('notification', True)
比如设置是否直接运行站点下发的联机脚本:
site.set_config('allow_script', True)
3.2.2 得到站点配置 get_config
site.get_config(key)
3.3 得到站点访问客户端 get_client
用于某个服务的Open API(短连接):
site.get_client(app_name)
app_name可以是workonline/oc/message
3.4 消息线程管理 get_message_thread
只有主进程能够获取到消息线程:
thread = site.get_message_thread()
4 消息线程
4.1 消息线程状态 state
消息连接的状态,有 offline 和 online 两种状态:
thread.state
4.2 建立连接 connect
thread.connect()
4.3 断开连接 disconnect
thread.disconnect()