背景
使用虚拟人+RPA来实现智能办公场景。
- 用户与虚拟人形象进行交互获取流程所需相应信息。
- 虚拟人调用流程启动的API,让RPA完成特定操作。
实现
因为UiPath提供了标准的API接口,所以实现过程中调用接口的顺序为:
1.调用认证接口获取认证权限。
接口地址:https://ocserver(oc地址)/api/Account/Authenticate
请求方式:POST
请求参数:{
"tenancyName": "default",(租户名称)
"usernameOrEmailAddress": "admin",(账号)
"password": "123"(密码)
}
返回结果:
{
"result": "result",
"targetUrl": null,
"success": true,
"error": null,
"unAuthorizedRequest": false,
"__abp": true
}
其中,result为认证API返回的验证码,几乎所有接口的调用都需要填写这个Bearer认证,默认是30分钟过期,也就是说认证30分钟后,再调用接口就需要重新认证再次获取新的验证码。
2.调用文件夹接口,获取流程所在文件夹ID。
接口地址:https://ocserver(oc地址)/odata/Folders
请求方式:GET
记得加Bearer授权认证,后边不再赘述。
返回结果:
3.调用机器人接口,获取流程执行机器人的ID。
接口地址:https://ocserver(oc地址)/odata/Robots
请求方式:GET
返回结果:
4.调用流程查询接口,获取流程的唯一key。
接口地址:https://ocserver(oc地址)/odata/Releases?filter=name eq "测试_API启动流程"
请求方式:GET
返回结果:
5.调用流程启动接口,启动流程
接口地址:https://ocserver(oc地址)/odata/Jobs/UiPath.Server.Configuration.OData.StartJobs
请求方式:POST
参数:
{
"startInfo": {
"ReleaseKey": "String",(与流程关联的版本的唯一键。)
"Strategy": "Specific",(策略, [All, Specific, RobotCount, JobsCount, ModernJobsCount])
"RobotIds": [
174(机器人ID)
],
"NoOfRobots": 0,(已弃用。为当前进程在环境中创建的待处理作业数。仅当启动策略为 RobotCount 时,此数字必须大于 0。)
"JobsCount": 0,(为当前进程在环境中创建的待处理作业数。仅当启动策略为 JobsCount 时,此数字必须大于 0。)
"Source": "Manual",(启动当前进程的作业的来源。)
"JobPriority": "Normal"(执行优先级。如果为 null,则默认为其发布的 JobPriority。)
}