cancel
Showing results for 
Search instead for 
Did you mean: 

Personal project - web-based Control Room

MaksimKazlou
Level 3

Hi BP community,

I'd like to share my results of work on a personal project - web-based Control Room for Blue Prism. Will welcome any feedback or advice.

The benefits are:
*Browser-based: no need to install Blue Prism software on client machines. A good option for skilled business users who just want to monitor bot work progress.
*Security:
    -Access to API is granted only to authorized Blue Prism users.
    -API access control is based on JWT bearer authentication.
    -Access to BP database views is controlled by a specially created service account with limited 'read' rights.
    -Nothing is being written or changed in BP database directly.
*Easier deployment (vs BP official components): Run SQL scripts; deploy 2 components, API and client (optionally), to IIS; adjust config and settings.
*Version-agnostic: one client can connect to BP environments of different versions. No need to install several separate versions of BP to connect to different environments.
*Old versions support: is compatible with BP v7.0+ and v6.0+ (that are not compatible with official Blue Prism API). Older versions were not tested.
*Familiar friendly interface: html client mimics desktop control room well known to everyone working with BP.
*Self-sufficient client: written in vanilla JS, it is well-portable incorporating HTML, CSS and JS in one file. Doesn't link to any external resources.
*Extendable: open for adding new functionality.

Sources: github

Demo (8min): 



------------------------------
Maksim Kazlou
Lead Software Engineer
EPAM
Europe/Warsaw|Minsk
------------------------------
Maksim Kazlou Lead Software Engineer EPAM Europe/Warsaw|Minsk
1 BEST ANSWER

Best Answers

This is pretty cool brother. What BP is not able to do you have done it 😛

Definitely will give a try.



------------------------------
Amlan Sahoo
Senior RPA Consultant
WonderBotz
------------------------------
Regards,
Amlan Sahoo

View answer in original post

15 REPLIES 15

LeonardoSQueiroz
Level 10

Thanks for sharing Maksim,

Regards,



------------------------------
Leonardo Soares
RPA Developer
------------------------------
Leonardo Soares RPA Developer América/Brazil

Mukeshh_k
MVP

@MaksimKazlou - This looks pretty neat and promising, thanks for sharing !!



------------------------------

Regards,

Mukesh Kumar - Senior Automation Developer

NHS, England, United Kingdom, GB
------------------------------

Regards,

Mukesh Kumar

This is pretty cool brother. What BP is not able to do you have done it 😛

Definitely will give a try.



------------------------------
Amlan Sahoo
Senior RPA Consultant
WonderBotz
------------------------------
Regards,
Amlan Sahoo

Hi, Maksim,

this is really cool!!! Have you done any measurement of performance impact and response time in the web based Control Room?

Regards

Zdenek



------------------------------
Zdeněk Kabátek
Head of Professional Services
NEOOPS
http://www.neoops.com/
Europe/Prague
------------------------------

Hi Zdanek,

I didn't do any benchmarks, just observed it visually. This is clear that API performance will depend on VM characteristics where it will be hosted. On large environments the amount of sessions data theoretically can slow down the system bc it returns all sessions within last month by default, but there is room for optimizations and customization there. Also, parallel usage of automatec.exe can be a bottleneck, but usually on large environments the most of sessions are run through scheduler, not manually.

It's worth mentioning that like with BP server it's possible to scale out the system by deploying this API on several VMs and applying load balancing. Then the point of attention will be the DB server and its performance. Anyway, I don't think it will significantly differ with proprietary Blue Prism in terms of performance.



------------------------------
Maksim Kazlou
Lead Software Engineer
EPAM
Europe/Minsk
------------------------------
Maksim Kazlou Lead Software Engineer EPAM Europe/Warsaw|Minsk

harish.m
Level 12

Thanks for sharing Maksim. Its definitely one of the thing to try.



------------------------------
-----------------------
If I answered your query. Please mark it as the "Best Answer"

Harish Mogulluri
Lead developer
America/New_York TX
------------------------------
----------------------- If I answered your query. Please mark it as the "Best Answer" [FirstName] [LastName] [Designation] [JobTitle] [City] [State] [Phone]

chris.strong
Staff
Staff

Bravo @MaksimKazlou, well done.

 

It is great to see members of the community create and share innovative solutions.

 

When we launched Version 7 with the published API back in 2021, we anticipated (and hoped for) clever people would consume it to build interesting things, and you have, congratulations!

 

Some personal thoughts:

  1. The Blue Prism 7.2 API has a lot more capabilities than the initial 7.0 release, so if you targeted that version (or above), I don't think you would require your AutomateC cmd triggers.

    • It includes Work Queue management, sessions management and other operational things that are not naturally under Control Room, such as Environment Variables and Calendar management.

  2. We surfaced the Schedule setup and triggering capability to enable Schedule workflows to be triggered programmatically, you may find it interesting to explore the triggering of Schedule definitions (processes chained together via a schedule tasks) by events such as items pending in a Work Queue.

 

I look forward to seeing how far you take this.

 

 

Kind regards

Chris Strong

Senior Product Manager

SS&C | Blue Prism



------------------------------
Chris Strong
Product Manager
Blue Prism
------------------------------

Hi @chris.strong,

Thanks for the feedback. 

You might not notice it, but I didn't leverage Blue Prism API, instead I created my own, though minimalistic and comprising of 7-8 endpoints but having all required functionality. And it let running this control room not only in BP environments 7.0+, but also on older versions that cannot be matched to modern BP cloud products like BP API (btw I see that a number of companies aren't migrating to v7 yet and are staying on older ones).

The concept of this solution is "do not change anything in BP database directly, only read; all changes can be done through automatec.exe". And it imposes some functional limitations, so its capabilities are limited by capabilities of automateC tool.



------------------------------
Maksim Kazlou
Lead Software Engineer
EPAM
Europe/Minsk
------------------------------
Maksim Kazlou Lead Software Engineer EPAM Europe/Warsaw|Minsk

Hi @MaksimKazlou

 

Thank you, I didn't notice.  Your approach to the API is the same as we landed on.  The Blue Prism API also leverages the built in Blue Prism users +  JWT bearer tokens for authentication and is also hosted on IIS.

I'd recommend leveraging the published Blue Prism API, but it you your call of course how you choose to interface to the platform and balance the trade off between supporting older versions or going straight to the newer capabilities which not everyone is on yet.

 

Your demo is still impressive and I suspect this will be a popular thread. 



------------------------------
Chris Strong
Senior Product Manager
SS&C | Blue Prism
------------------------------