My first Epicor Idea! - Open up API for Edge Agent - Please Vote :)

If anyone is so inclined, please vote for my idea for opening up the API for the Edge Agent.
I think it would be insanely useful.

I had the opportunity to discuss this with some of the bigger players at Epicor Insights,
and while they :safe_harbor: Safe Harbored me to death, they did show some interest in
the idea.

I decided to make an idea so it didn’t get lost with the :wine_glass: & :cheese: .

Idea - Open up API for Edge Agent

2 Likes

You couldn’t get anything from their website?

1 Like

Still need a lot more from the server side.

1 Like

So just to clarify: It is not so much the edge agent itself that is critical to this process. You mention it because you have heard it can get calls from the server in network mode. But the capability it uses to achieve this is one you’d like exposed on our customization toolset somehow to allow you to take advantage of it - correct? if we allowed you to push a notification directly to a browser client you’d be perfectly happy correct?

1 Like

not sure what exactly @klincecum was going for I’ll let him explain but for my money I’d love the ability to signal from server to a client (specific client)

Things like
Progress Reporting on Function calls
Send Refresh Signals from Server Side with new data etc
Send Notifications from Server Side (messages, alerts etc)

Edge Agent doesn’t have to be what we use, though it is a good option.

1 Like

Yes

While that would be welcome as well, no, that would not be what I am after.

I would like direct interaction with client computers/servers that we choose to have the edge
agent on.

A bridge from the browser world, to the local pc. Obviously with appropriate security measures,
not the wild west.

Yes, all of this plus.

The edge agent is a work around for browser sandbox security. As such Epicor is taking responsibility for opening up a potential security hole for a web applications. We are very sensitive to how we are handling security within the edge agent and the capabilities we are adding. In general we think of it as temporary and if a browser develops support for a capability we would remove it from the edge agent.

Just my personal opinion on this today but I think it is a much harder sell to Let customers use our secure tunnel to the operating system to do ‘whatever they want’ vs reversing the communication channel between client and server but staying within the browser sandbox.

I would suggest if you want both you don’t combine them in ideas. I could be wrong of course but that would be my recommendation.

3 Likes

I’m in agreement with Patrick here.

And I personally would not use the Edge client for this. The browser supports this capability already with Progressive Web Apps and Service Workers. When one installs a PWA, a Service Worker is created when the browser loads - not when you go to the site. This opens a channel for the UI and sits in the middle of all communication with the site. If you have accepted Notifications for a site, you may have noticed this already. When you open an empty browser, you will find several tasks already running in the Task Manager. The processes, one per site, can intercept messages and update the UI in an async fashion providing a method for notifications without having have to install a local client.

On the other hand, tasks like server printing would be an excellent use of the Edge client. ALL Epicor users would benefit from this architecture - not just cloud users. Having an Edge client that acts like the current System Agent is a perfectly acceptable way of linking to local resources like printers. An edge client would also be good as a gateway from ERP to download files to a repository like DocStar or SharePoint. Microsoft uses this model for Application Proxy service, Azure Arc, etc., but this is for server-style tasks and not an agent for each and every client for client-based tasks.

Having to install a client of some kind on every computer defeats the purpose of moving to the browser. We might as well go Electron or WebView2 like MS Teams is doing. :person_shrugging:

I know. It’s a different paradigm than our old client server model. I think we may want to look at what other cloud services (Microsoft, SalesForce, etc.) have done instead of trying to make the cloud act like on-prem again.