Hello community,

 

There are many business cases where a live update/refresh is needed on the Web client whenever an update happens on the server (say via API integration). This article explains how to send a message to all users or a specific user from the server to the client.

 

Would love a way to send a message to all users of a functional or organizational role. Right now, we will need to programmatic fetch all SysAdminUnitIds of that role and send a message to all users in a loop.

 

Aside, Say there are 10 users (out of 100 total) belonging to a specific user role. Is it/ How much of a performance disadvantage is to send the message to all the 100 users (We can filter the rest 90 on the UI) as against identifying and sending to the specific 10? This depends on the underlying WebSocket implementation and how it is managed by Creatio. 

3 comments

Hello Shrikanth,

 

Thank you for this idea! Yes to send the socket message to the client for a specific role the list of SysAdminUnit Ids should be formed and processed one by one on the server-side. I will share this idea with the core R&D team so they could develop an additional method that could post a message to a user role separately. Thank you for helping us in making the application better!

 

Best regards.

Oscar

Oscar Dylan,

Thanks Oscar. Can you also clarify on my other question at the end? - 



Aside, Say there are 10 users (out of 100 total) belonging to a specific user role. Is it/ How much of a performance disadvantage is to send the message to all the 100 users (We can filter the rest 90 on the UI) as against identifying and sending to the specific 10? This depends on the underlying WebSocket implementation and how it is managed by Creatio.

M Shrikanth,

 

This is a question that is not easy to answer. Perform tests and compare the application performance using different scenarios of sending a message to 10, 50 and 100 users and see how it influences the system.

 

Best regards,

Oscar

Show all comments

Hello Community!



We use a Creatio Service enterprise on-premises installation. I have a requirement where an external system needs to integrate with the Creatio server via web socket. Few questions below in this regard - 

  1. I am aware that there is an out-of-the-box WebSocket exposed by the Creatio Server which is used to send messages (Notifications, Telephone related etc) to the Creatio Client. Can an external system connect to this WebSocket? If Yes, How does one listen for new messages sent to this socket? 
  2. Can we expose another Web Socket on a different port on the Creatio server side and use it to receive connections form external systems? If Yes, How? Anything that we need to keep in mind from a security or performance perspective? Are there any additional configuration/setup related steps needed to enable this?

Thanks in advance

Shrikanth

Like 0

Like

1 comments

Hello Shrikanth,

 

Our core R&D team has a task to create an SDK for WebSocket connection and this task is in the accepted status so it is planned to create a separate SDK in one of the nearest releases. As for now all available methods that can be called for WebSocket connection are stored in the MsgChannelUtilities module and in case you need to integrate the Creatio app with a 3rd party service via WebSocket you need to use methods stored there. Unfortunately we have no practical examples of WebSocket integration with 3rd party services and you need to analyze the MsgChannelUtilities module directly.

 

Best regards,

Oscar

Show all comments

Hello community!



The following article describes how to send a message from the Creatio server to the client via the WebSocket established out-of-the-box. Can we use the same WebSocket to send back messages to the server from the client?? If Yes, How?

Like 0

Like

1 comments

Hello,

 

We don't have a possibility to send the Websocket message from the client to server since there is nothing to handle this message on the server. In this case you can create your custom configuration service and send requests via this service - here is an example of such a service https://academy.creatio.com/documents/technic-sdk/7-16/creating-configuration-service-0

 

Best regards,

Oscar

Show all comments

I am facing issues with the console flooded with the web-socket errors.

I don't know which element is bugging it.

Because of this sometimes I have to hard reload (empty cache) 3 to 5 times to do my configurations of view any record after some changes in section wizard or in any object.

Like 0

Like

2 comments
Best reply

This is due to the telephony integration being turned on by default in new systems, but not set up to connect to a phone system. To get rid of all that chatter in the console, go into your profile (by clicking the person icon in the top right corner, then select "Your profile". Once there, click the "Call center parameters setup" button and check the box to "Disable phone integration". Once you log out and back in again, all of that chatter and WebSocket errors in the console will be gone.

Ryan

This is due to the telephony integration being turned on by default in new systems, but not set up to connect to a phone system. To get rid of all that chatter in the console, go into your profile (by clicking the person icon in the top right corner, then select "Your profile". Once there, click the "Call center parameters setup" button and check the box to "Disable phone integration". Once you log out and back in again, all of that chatter and WebSocket errors in the console will be gone.

Ryan

Hey Ryan,

It worked.

Thanks for the help.

Show all comments