EProxy的两个web接口 - housekeeper-software/coocare GitHub Wiki

eproxy工作原理图

架构图

eproxy工作机制

1. eproxy启动后,先从下述接口获取需要登录的工程师列表,如果有多台eproxy服务器,则每个服务器有唯一的数字标识,从1开始。
所以,后端需要判断这个标识,需要分配给那组工程师。  
2. eproxy开始登录通讯服务器,在登录过程中,首先进行web登录,如下接口2所示。得到token和通讯服务器地址(内网地址),然后进行通讯登录。   
3. 根据配置启动rabbitmq客户端,对于user_to_web,几个队列,eproxy强行生成队列。反向的几个队列,如果不存在,eproxy会一直尝试,但不会强制  
   生成。这个由后端强制创建。  

获取需要登录的工程师列表

请求地址:
http://xxxx/queryUser?group=1
这里的group=1,2,3分别标识eproxy服务器的标识。可以将工程师分组,分配指派到不同的eproxy服务器。
目前只需要一台,所以,我给group=1,后台可以返回5~10个工程师
返回的格式为json ,如下:
{
   "users":[
      {
         "userId":"E0001",
         "channelId":"huiguanjia_dl"
      },
      {
         "userId":"E0002",
         "channelId":"huiguanjia_dl"
      }
   ]
}
如果token永远不变,可以添加 token字段.否则,token放在下一个接口中

web登录接口

请求方式: https://hp-php.coocare.com/ws/interface/loginForJava?communicationId=E0000000010
返回:
{
   "token":"",
   "communication_server":"内网ip:port",
   "channel_id":""
}