> ## Content Index
> Fetch the complete content index at: https://www.process-one.net/llms.txt
> Use this file to discover other available public pages before exploring further.

# ejabberd 20.04
- URL: https://www.process-one.net/blog/ejabberd-20-04/
- Published: 2020-04-30T15:09:00.000Z
- Updated: 2024-09-16T15:09:57.000Z
- Author: Jérôme Sautret

We are pleased to announce [ejabberd 20.04](https://www.process-one.net/en/ejabberd/downloads/). In addition to various bugfixes and improvements, this release massively improves audio and video calls support.

ejabberd 20.04 now implements [XEP-0215: External Service Discovery](https://xmpp.org/extensions/xep-0215.html?ref=process-one.net), via the new `mod_stun_disco` module, which allows XMPP clients to discover [STUN](https://en.wikipedia.org/wiki/STUN?ref=process-one.net)/[TURN](https://en.wikipedia.org/wiki/Traversal%5FUsing%5FRelays%5Faround%5FNAT?ref=process-one.net) services and to obtain temporary credentials for using them.

The format of the temporary credentials handed out to clients is described in an [IETF draft](https://tools.ietf.org/html/draft-uberti-behave-turn-rest-00?ref=process-one.net). Therefore, in addition of the ejabberd 20.04 built-in STUN/TURN support, the module can also be used with external STUN/TURN servers that support the same draft (such as coturn or restund). It also allows (non-XMPP) WebRTC applications to use ejabberd 20.04 built-in STUN/TURN support.

To promote this usage, STUN/TURN service is now enabled by default starting ejabberd 20.04.

It means that ejabberd 20.04 can now be used by modern clients with audio/video calls features. if you want to test it, [Conversation](https://conversations.im/?ref=process-one.net) or [Movim](https://movim.eu/?ref=process-one.net) clients already support XEP-0215.

See Changelog below for a list of the other changes in this release.

## Features and improvements in ejabberd 20.04

- Support of XEP-0215: External Service Discovery (thanks to Holger Weiß)
- Improve Microsoft SQL Server support (thanks to ChaosKid42)
- Don’t store caps information for direct presences of muc room, to decrease caps table size
- Don’t offer X-OAUTH2 if the only auth method enabled is Anonymous (#3209)
- Improve module options documentation
- Updated Spanish translation
- Updated Catalan translation

## Fixes in ejabberd 20.04

- Fix problem with accessing webadmin
- Fix memory leak with repeated ejabberdctl usage (#2977) (thanks to Tijs Zwinkels)
- Fix possible race condition that could lead to message loss when ending session
- Fix race condition when offline messages were not delivered when stored on an SQL backend
- Resending unacked stanzas now send also archived msgs if mod\_offline is enabled
- Do not change ‘to’ attribute of sent messages from bare to full jid, to conform to XMPP RFC
- The ‘from’ attribute of session iq response are now set to server jid, to cope with older Smack versions
- Fix sql\_type usage for mod\_mam (#3202) (thanks to Boris Chernov)

## ejabberd 20.04 download & feedback

As usual, the release is tagged in the Git source code repository on [Github](https://github.com/processone/ejabberd.git?ref=process-one.net).

The source package and binary installers are available at [ejabberd XMPP & MQTT server download page](https://www.process-one.net/en/ejabberd/downloads/).

If you suspect that you’ve found a bug, please search or fill a bug report on [Github](https://github.com/processone/ejabberd/issues?ref=process-one.net).