Closed ericschdt closed 4 years ago
aTalk seems to use ZRTP, but Conversations uses DTLS for a audio / video call. Would you mind to implement the latter to make both (a little bit more) compatible?
Do you mean this Conversations ? It does not support audio/video call actually.
They are implemented. https://github.com/siacs/Conversations/tree/jingle
Hi MilanKral,
Would you able to help. I have disabled DTLS feature on aTalk as the source is not working. Appreciate if you can take a look and fix the problem if possible.
They are implemented. https://github.com/siacs/Conversations/tree/jingle
Awesome, let me try it.
What's left to make DTLS working? In 2.2.4 the option is grayed out and not selectable.
In my last test on DTLS, even when enabled, the call status is still indicated that it is a non-secure call. Therefore I have disabled the option until have time to study the cause in details.
Just found the real reason to disable DTLS Disable DTLS_SRTP as BC 1.6.2 now uses Extended Master Secret - not compatible with source
aTalk v2.2.5 implemented DTLS_SRTP call encryption DTLSv12/DTLSv10 protocols and additional CipherSuites support. Please verify.
Tested it again with 2.2.5 and DTLS enabled.
Conversations 2.8.3 --> aTalk 2.2.5 Rings -- Nothing
Conversations 2.8.3 --> aTalk 2.2.5 While ringing, callback from aTalk results in "busy" state at aTalk's end. Conversations has a tie break built in by now: https://github.com/iNPUTmice/Conversations/commit/4d3d3a703871be4fe78a9bcdfdf954c9d7aa375b
aTalk 2.2.5 --> Conversations 2.8.3
Please see: https://github.com/jitsi/jitsi/issues/679
Include a setup attribute. Possibly set to actpass (I honestly don’t know enough about DTLS to know what that actually means; But assuming it was actpass kinda worked.
Conversations call setup protocol is not compatible with aTalk:
missing 'setup' attribute on aTalk 'session-init'
Implemented the missing 'setup' attribute, however conversations immediately terminated call on accept: root cause unknown, there is no error messages from conversations.
2020-05-19 15:53:04.547 20534-20646/org.atalk.android D/SMACK: RECV (0):
<iq xml:lang='en' to='parrot@atalk.sytes.net/atalk' from='xyz123@atalk.sytes.net/Conversations.CPqI' type='set' id='BV9-KbDb5eYa'>
<jingle xmlns='urn:xmpp:jingle:1' sid='cf3am4aoa80bm' action='session-terminate'>
<reason>
<failed-application/>
</reason>
</jingle>
</iq>
Call init from conversations uses XEP-0353 currently not implemented in aTalk/smack: XEP-0353: Jingle Message Initiation
@cmeng-git Please see https://nl.movim.eu/?node/pubsub.movim.eu/berlin-xmpp-meetup/3e091c00-5e20-4727-a61d-c92a247b106e
During the next (virtual) meetup, Daniel and Holger will give an introduction to the technologies used for implementing audio/video calls with XMPP by example of the Android client Conversations, which recently gained A/V support. Topics discussed will include XMPP's Jingle extensions, ICE/STUN/TURN, (S)RTP, and WebRTC. As time permits, we'll also hear an interesting bonus talk by eta on integrating the A/V solution with Asterisk.
When? Wednesday, 2020-06-10 18:00 CEST (always 2ⁿᵈ Wednesday of every month) Where? The meetup will be held on Jitsi Meet. The URL is going to be posted on our meetup channel shortly before the talks begin, so please join it if you'd like to take part: berlin-meetup@conference.conversations.im
Note: This meetup is going to be streamed on YouTube, so you will be recorded. If you'd prefer to just listen, please use the stream.
Thanks for the info.
Actually aTalk has already 90% through implementation to work with Conversations. There remain two more problems to be resolved when making video call originated from Conversations. Hopefully to get them resolved in the next two weeks.
@cmeng-git it might be of interest to you that the latest version of Conversations (2.8.6) supports direct jingle initiation (while previously versions required Jingle Message Initiation) - so getting it compatible with atalk should be simpler now. In general Conversations tries to put human readable text in the termination reason in case something goes wrong. However if that isn’t enough; or if you discover any bugs in the Conversations side of things feel free to ping me.
Many thanks for the update. aTalk has implemented XEP-0353 Jingle Message Initiation and is working well with Conversations. XEP-0353 has resolved major issue when making call with buddy with multiple resources logged.
The major problem aTalk is facing is how the jingle messages are being received. Current design put a major restriction on the way the received jingle messages are processed.
Currently aTalk has resolved all the issues except when a video call is initiated from Conversations. From debug log, all the transport-info/candidates were received, validated, and paired correctly for both the audio and video medias.
However for some unknown reason, the received video media is piped to audio decoder for process; and depicted video decoder of a video media stream to process. It seems the problem is related to Ice Agent in ice4j library, still under investigation for the a solution.
So far the test results on Conversations are good without much problem. Will certainly inform you if aTalk need help from Conversations.
Just release v2.3.0. Audio call should be OK. There are still having problems with video call. Need to contact Conversations - seems like the problems are from Conversations.
20200616: Just updated my devices to Conversations to 2.8.7-beta.2. Found that the audio call with aTalk is not working anymore. aTalk v2.3.0 was still working with Conversations v2.8.5, just before the upgrade to v2.8.7
For more info: Conversations v2.8.7 media call compatibility with aTalk v2.3.0 #3788
aTalk v2.3.1 has just released, believe this is now working with Conversations. For any further issues for call with Conversations, please feedback to Conversations for further actions.
Please note aTalk two working video codec are VP8 and H264, VP8 is the the codec that works with conversation. H264 will cause Conversation to crash. Audio codec can use OPUS etc.
aTalk seems to use ZRTP, but Conversations uses DTLS for a audio / video call. Would you mind to implement the latter to make both (a little bit more) compatible?
That would make aTalk more interesting again. Looking forward to to having a nice aTalk <-> Conversations call.