Gerry Posted January 27, 2017 Share Posted January 27, 2017 I thought I would post a quick preview of an upcoming feature of our business process tool. We are expanding its capability to include a new "Web Call" node. This new node will enable you to make calls to other systems or cloud services applications via restful API's which significantly expands your options for automation of business processes that need to interact with other systems. My goal as the architect for our platform technology has always been to keep the BPM 100% code free so that process managers do not have to have a programming background in order to make effective use of our BPM, but thats always a play-off, and this is one example where the absence of code limits absolute flexibility because there are so many different shapes and sizes of API's out there, code is the only "glue" that will give you ultimate flexibility. To solve that problem we are also developing an "API bridge" service that can contain and run glue code required while still keeping the BPM clean and code free for simpler day to day use. Once this feature is rolled out (expected to be in the next 2-3 weeks max) we will be exploring options for achieving the same for on-premise IT infrastructure and operations type orchestration and automation which I hope to be announcing in the coming weeks. This initial implementation is only the first step on our journey for much greater expansion of our BPM integration capability broadening our scope of IT Service Management into IT Operations Management for which there has been a significant demand for. Gerry 8 Link to comment Share on other sites More sharing options...
Lyonel Posted January 27, 2017 Share Posted January 27, 2017 @Gerry you made my day Sir!!! And probably month This is a great feature to add for people like me. And a game changer too. Quick question: does the URL has to be HTTPS? (like for images and links in some settings) 2 Link to comment Share on other sites More sharing options...
Gerry Posted January 27, 2017 Author Share Posted January 27, 2017 @Lyonel Lol you are welcome, glad to oblige I would really love to hear about the kinds of integrations you would like to make using this functionality if you care to share? No the URL can be any HTTP or HTTPS GET or POST request. You should keep in mind that it will be our servers making the actual web call so whatever URL you use has to be reachable on the public Internet. With regards to using HTTPS, while we will not enforce HTTPS we would of course strongly recommend that you do use it because of the traffic being transmitted over public networks Gerry Link to comment Share on other sites More sharing options...
Gerry Posted January 27, 2017 Author Share Posted January 27, 2017 Relevant to this thread is this previous conversation: Link to comment Share on other sites More sharing options...
Alex8000 Posted January 27, 2017 Share Posted January 27, 2017 Hi @Gerry, Thank you (and the team!) so much! This will really help us. As Lyonel said, this really is a game changer. Have a nice weekend, Alex 3 Link to comment Share on other sites More sharing options...
samwoo Posted January 30, 2017 Share Posted January 30, 2017 Hi, I'm not very technical when it comes to API's and Webhooks (though I understand what they are)... i'm sure I can ask someone in my department but just wondering if anyone can provide examples of what sort of things could be done with this new feature? Sorry for my ignorance! Thanks, Samuel Link to comment Share on other sites More sharing options...
Martyn Houghton Posted January 30, 2017 Share Posted January 30, 2017 @samwoo To give you one of our examples we are looking to use this for is to automate Software Patch deployment. Our aim is for our external customers to raise a Service Request via the Customer Portal requesting specific patch. The BPM for this service would then make an Web call to our file distribution server which would then send a secure download link to the customer via email for them to download the patch. This way we have a record of which customers have downloaded patches and the process is automated fully from beginning to end. Cheers Martyn Link to comment Share on other sites More sharing options...
Gerry Posted January 30, 2017 Author Share Posted January 30, 2017 @samwoo As a general rule, if you want to make use of API's or integrate two or more systems you need some basic programming skills - this is why I am not totally comfortable with adding this to the BPM because it turns the BPM into a programming environment - which is bad for both the BPM and the people (like yourself who do not have programming skills) because it starts to turn the BPM into a programming environment. This is where a lot of vendors get it wrong, its a mistake we also made with Supportworks so I am not too keen on re-creating those past problems. However, in the absence of anything else this is a good interim feature to support those that have the technical/development skills to make use of it. Once introduced we will always support it, but only as an *advanced* feature. This advanced feature will ultimately be superseded with something better. High on our agenda is integration and we are working on a number of things to make it possible for people without programming experience to achieve a high degree of integration and automation orchestration within your IT department which can be driven from the BPM - so watch this space in the coming months. Gerry Link to comment Share on other sites More sharing options...
Gerry Posted January 30, 2017 Author Share Posted January 30, 2017 @Martyn Houghton Just curious to know, what file distribution tool do you use/would you intend to integrate with? Gerry Link to comment Share on other sites More sharing options...
Martyn Houghton Posted January 30, 2017 Share Posted January 30, 2017 @Gerry At the moment I am still trying to find one that fits all my needs, we currently use MailExpress from Globalscape for manual user initiated file transport, but this does not have an API to achieve what I need it to do, so looking at their other products as well as the other suppliers. It appear that my my requirements (never ) are somewhat unique! Cheers Martyn Link to comment Share on other sites More sharing options...
Gerry Posted January 30, 2017 Author Share Posted January 30, 2017 @Martyn Houghton Oh ok, thanks. Maybe if you have the time you could write up what you are trying to achieve, it would be interesting to understand the full scope of what your file distribution requirements are, I am not sure I fully understand the need. Gerry Link to comment Share on other sites More sharing options...
Martyn Houghton Posted January 30, 2017 Share Posted January 30, 2017 @Gerry Thanks, I have sent you a direct email with a bit more detail on what we are attempting to achieve. Cheers Martyn Link to comment Share on other sites More sharing options...
Gerry Posted February 6, 2017 Author Share Posted February 6, 2017 Just a quick update on this. We are adding this node but in the design phase we are running into problems with how to deal with input and results to/from WebCalls and the only way to make this flexible enough is to provide some form of basic coding interface to glue stuff together. This is not ideal, i do not want to morph the BPM into any kind of programming environment so although I will continue to progress this and add it as an experimental feature, I would not recommend it for production use. I need to find a better way of adding this capability without the need for customers having to code in the BPM. This will almost certainly mean some form of integration bridge to host the "glue" code and present the BPM with something that is usable by non-techs. As an interim we can use the webcall node but as I say without us providing a way for you to write glue code its use will be very limited I think. Anyway, please watch this space, integration approaches are high on our agenda at the moment and I have no doubt that whatever solution(s) we do come up with should be pretty awesome. Gerry 3 Link to comment Share on other sites More sharing options...
Gerry Posted February 17, 2017 Author Share Posted February 17, 2017 All, Further update, this new feature has been implemented and is now working. As I mentioned above my biggest concern with this is how one maps input and output data to web calls, really the only flexible way to do that is with code and we specifically do not want our customers to have to "code" inside the BPM, because not only does that make it more complicated for less technical people but it makes it more difficult for us to guarantee customisations will keep on working. We are rolling this out as an experimental feature in order to solicit feedback and suggestions so keep in mind this behaviour may change or might even be replaced with something more rounded in the future. Here is the latest screenshot This will be available in the next platform build 2693 (or higher) which will be some time before the end of next week. If you want to use it you will need to enable the experimental flag in the advanced settings, just search for "WebCall" and you should find it. Gerry 4 Link to comment Share on other sites More sharing options...
carlt Posted May 26, 2017 Share Posted May 26, 2017 @Gerry Looks like a great feature. I've enabled experimental.feature.bpm.webcalls in advance settings but I'm not getting 'Web Call' as a node option in BPM. Is this feature still available? Thanks Carl Link to comment Share on other sites More sharing options...
Gerry Posted May 26, 2017 Author Share Posted May 26, 2017 HI Carl, We have disabled the feature at the moment, its been superseded with something all together better which I am going to be announcing very soon. The problem with the web call is dealing with the complexity of "gluing" the inputs and outputs together. When we designed the BPM I laid down and absolute mandate that outside of simple browsable (point and clickable) "expressions" there will be NO programming skills required to use the BPM. Now while the WebCall concept is a real game changer for automation its also entirely impractical because the only possible way of getting the flexibility is to use some sort of glue code to pass params into the web call, there are options like URL encoded, form encoded, URL params, headers and so on. Now we could almost deal with this using expressions although it would be messy it could be made to work, but the bigger, MUCH BIGGER problem is how to handle return values and map that back into something useful that the BPM can use for onward processing - this is where it basically gets impossible, the only way we could make this work would be to expose some form of scripting programming in the BPM so despite some early experiments our conclusion its just not really workable. The WebCall may still get put into production but with very limited capability, but right now, after experimenting and playing with it, the good and very competent folks here at Hornbill did not think we would be doing our customers any favours by releasing this. We have an infinitely better solution which we are working on right now, in fact its almost finished and I will be covering it in great detail at our next Hornbill INSIGHT event which is in June 28th. So watch this space, we have goodness coming very soon. Gerry 1 Link to comment Share on other sites More sharing options...
carlt Posted May 26, 2017 Share Posted May 26, 2017 OK thanks @Gerry An 'Infinitely better solution' sounds interesting. I look forward to the announcement. Thanks Carl Link to comment Share on other sites More sharing options...
Joanne Posted January 15, 2019 Share Posted January 15, 2019 Web Calls looks like exactly what i'm after to link my BPM to my deployment tool, was there an alternative to this implemented after? Link to comment Share on other sites More sharing options...
Gerry Posted January 15, 2019 Author Share Posted January 15, 2019 @Joanne Yes, we are looking at a number of options in this area. As above, we have disabled this capability because the BPM is designed to be used by non-technical/business people, and its to technically complicated to deal with web calls, specifically in relation to input/output parameter mapping. This is why we created the iBridge, but that's generally better for cloud-based integrations, although in some circumstances it can be used to integrate this behind-the-firewall deployed tools and systems. What is your deployment tool? is that cloud on on-premise based? What are you trying to achieve? Thanks, Gerry Link to comment Share on other sites More sharing options...
Victor Posted January 23, 2019 Share Posted January 23, 2019 On 1/15/2019 at 9:45 PM, Gerry said: What is your deployment tool? is that cloud on on-premise based? What are you trying to achieve? This is now being discussed on a separate thread here: Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now