07-22-2022 07:21 AM
Customer have their own CRM and built their own CTI Toolbar. It has been working for years on Finesse 11.6 / ucce 11.6
The source code for their connection is as following:
boshConfigBuilder.setResource("smack");
boshConfigBuilder.setXmppDomain("<fqdn>");
boshConfigBuilder.setHost("<fqdn>");
boshConfigBuilder.setPort(7071);
boshConfigBuilder.setFile("/http-bind/");
this.xmppboshConnection = new XMPPBOSHConnection(boshConfigBuilder.build());
xmppboshConnection.connect();
Upgrading to UCCE 12.6 / Finesse 12.6, we enabled Port 5222 / 7071 according to the guide with the following command:
utils finesse set_property webservices enableInsecureOpenfirePort true
The same source code that used to work before no longer works. They now receive the following:
No supported and enabled SASL Mechanism provided by server. Server announced mechanisms: []. Registered SASL mechanisms with Smack: [SASL Mech: GSSAPI, Prio: 100, SASL Mech: SCRAM-SHA-1-PLUS, Prio: 100, SASL Mech: SCRAM-SHA-1, Prio: 110, SASL Mech: DIGEST-MD5, Prio: 200, SASL Mech: CRAM-MD5, Prio: 300, SASL Mech: PLAIN, Prio: 400, SASL Mech: X-OAUTH2, Prio: 410, SASL Mech: EXTERNAL, Prio: 500, SASL Mech: ANONYMOUS, Prio: 500]. Enabled SASL mechanisms for this connection: null. Blacklisted SASL mechanisms: [SCRAM-SHA-1-PLUS]
Is 7071 no longer working?
Solved! Go to Solution.
07-25-2022 04:49 AM
Hi oabulaban,
Currently Finesse does not listen to 7071 even after the CLI , utils finesse set_property webservices enableInsecureOpenfirePort true is executed.
There is a bug created for this.(CSCwc53379)
Please use port 8445 which is a tls enabled secure port for the connection.
Regards,
Ravi
08-10-2022 10:10 AM
Hi Omar,
Once the login is done, we are pinging the server once in 25 seconds to keep the session active using conn.sendPacket.
conn.sendPacket(new Packet() {
public String toXML() {
return "<iq type='get'><ping xmlns='urn:xmpp:ping' /></iq>
}
});
Can you try the same and let us know if it works?
Thanks,
Ravi
07-25-2022 04:49 AM
Hi oabulaban,
Currently Finesse does not listen to 7071 even after the CLI , utils finesse set_property webservices enableInsecureOpenfirePort true is executed.
There is a bug created for this.(CSCwc53379)
Please use port 8445 which is a tls enabled secure port for the connection.
Regards,
Ravi
07-27-2022 05:28 AM
Hi Ravi
Thanks for your feedback. Unfortunately the bug seems to be an internal bug and I have no access to see it
Is there already a fix in progress? if yes, for what version / ES ?
Another point -> we switched the code to use the secure layer (tried with both 7443 and 8445). The connection works, however after 120 seconds or so the client stops receiving notifications from Finesse. This precents agents from receiving calls or properly switching states.
Any ideas?
Thanks
Omar
08-01-2022 04:19 AM
Hi oabulaban,
The defect is made visible now. Please reach out to the TAC for the defect fix timeline.
Regarding the issue you are facing, sending an xmpp ping message to the server keeps the connection alive.
Could you please try this and let us know if it works?
Thanks,
Ravi
08-01-2022 11:43 PM
Hi Ravi
The BOSH method does not include an xmpp ping in the protocol
The client sends an "http-bind". According to the documentation, in 30 seconds will finesse send back an empty response, to which the client will send a new http-bind request. In case during those 30 seconds a notification is available, it is pushed directly
Is xmpp ping with BOSH http-bind now also a requirement?
08-03-2022 07:06 AM - edited 08-04-2022 01:55 AM
Hi Oabulaban,
Sorry for the miscommunication. I suggested ping assuming you are using websocket connection.
The support for notifications over BOSH (long polling) and usage of port 7443 are deprecated starting 12.6.
Instead, Applications should use websockets.
From the release notes of 12.6(1),
Deprecated Features
Notifications over BOSH (Long Polling)
In this release, support for notifications over BOSH (long polling) is deprecated. Applications that require notifications are recommended to use WebSocket-based notifications (Finesse desktop) or notifications over direct XMPP (over TCP).
The usage of port 7443 is deprecated and the port 8445 should be used instead.
Thanks,
Ravi
08-03-2022 07:12 AM
Hi Ravi
So, what does deprecated really stand for?
According to the developers guide, the usage of Long Polling and Port 7443 are still defined and available. We understand the need to switch to websockets or XMPP over TCP (5223), however we could not find in the documentation any mentioning that Long Polling is no longer available. Our assumption is, it should still work, however in a coming release (minor or major) it could be totally gone.
Thanks
Omar
08-04-2022 11:02 AM - edited 08-04-2022 11:03 AM
Hi Omar,
I have tested BOSH with 12.6 on the finesse desktop & it works fine. I have also tested with another custom xmpp client using the smackx, smack-bosh, smack libraries. In both the cases, the client is receiving notifications without any interruption. Since the openfire is also upgraded to 4.4.4 in 12.6 version, Could you please check if the client library being used has any issues with the openfire ?
Thanks,
Ravi
08-09-2022 02:15 AM
Hi Ravi
Thanks for your test. I too was able to test via Pidgin (BOSH URL Configuration), however the smack library being used is still having the issue described.
Any tips or special configuration that you had to do for your custom xmpp client smackx/smack-bosh/smack ?
Thanks for your feedback
08-10-2022 10:10 AM
Hi Omar,
Once the login is done, we are pinging the server once in 25 seconds to keep the session active using conn.sendPacket.
conn.sendPacket(new Packet() {
public String toXML() {
return "<iq type='get'><ping xmlns='urn:xmpp:ping' /></iq>
}
});
Can you try the same and let us know if it works?
Thanks,
Ravi
11-02-2022 12:16 AM
Hi Ravi
Thanks - the ping seems to work
This doesn't seem to be documented anywhere - in 11.6 PING was not a requirement
Thanks
Omar
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide