@@ -129,7 +129,16 @@ public function main (string? username = (), // my username
129129 headers [http : AUTH_HEADER ] = string ` Basic ${token }` ;
130130 }
131131
132- http : WebSocketClient wsClientEp = new (wsUrl , config = {callbackService : callbackService , customHeaders : headers });
132+ http : WebSocketClient wsClientEp = new (wsUrl , config = {
133+ callbackService : callbackService ,
134+ customHeaders : headers ,
135+ retryConfig : {
136+ intervalInMillis : 3000 ,
137+ maxCount : 10 ,
138+ backOffFactor : 1.5 ,
139+ maxWaitIntervalInMillis : 20000
140+ }
141+ });
133142
134143 if wsClientEp .isOpen () {
135144 io : println (
@@ -151,6 +160,10 @@ service resultDataOnlyClientService = @http:WebSocketServiceConfig {} service {
151160 resource function onError(http : WebSocketClient conn , error err ) {
152161 log : printError (" Error occurred" , err );
153162 }
163+
164+ resource function onClose(http : WebSocketClient wsEp , int statusCode , string reason ) {
165+ log : printInfo (string ` Connection closed: statusCode: ${statusCode }, reason: ${reason }` );
166+ }
154167};
155168
156169service awaitAndResultDataClientService = @http:WebSocketServiceCon fig {} service {
@@ -174,6 +187,10 @@ service awaitAndResultDataClientService = @http:WebSocketServiceConfig {} servic
174187 resource function onError(http : WebSocketClient conn , error err ) {
175188 log : printError (" Error occurred" , err );
176189 }
190+
191+ resource function onClose(http : WebSocketClient wsEp , int statusCode , string reason ) {
192+ log : printInfo (string ` Connection closed: statusCode: ${statusCode }, reason: ${reason }` );
193+ }
177194};
178195
179196service imageAndResultDataClientService = @http:WebSocketServiceCon fig {} service {
@@ -199,6 +216,10 @@ service imageAndResultDataClientService = @http:WebSocketServiceConfig {} servic
199216 resource function onError(http : WebSocketClient conn , error err ) {
200217 log : printError (" Error occurred" , err );
201218 }
219+
220+ resource function onClose(http : WebSocketClient wsEp , int statusCode , string reason ) {
221+ log : printInfo (string ` Connection closed: statusCode: ${statusCode }, reason: ${reason }` );
222+ }
202223};
203224
204225
@@ -232,6 +253,10 @@ service allClientService = @http:WebSocketServiceConfig {} service {
232253 resource function onError(http : WebSocketClient conn , error err ) {
233254 log : printError (" Error occurred" , err );
234255 }
256+
257+ resource function onClose(http : WebSocketClient wsEp , int statusCode , string reason ) {
258+ log : printInfo (string ` Connection closed: statusCode: ${statusCode }, reason: ${reason }` );
259+ }
235260};
236261
237262function notifyAwait() {
0 commit comments