From 942accacb43030e7f523f2316d4c8f7c00a7f21c Mon Sep 17 00:00:00 2001 From: Jeremy Lainé Date: Thu, 27 Aug 2015 14:11:04 +0200 Subject: add support for SSRC in QXmppJingleIq --- src/base/QXmppJingleIq.cpp | 14 ++++++++++++++ src/base/QXmppJingleIq.h | 4 ++++ 2 files changed, 18 insertions(+) (limited to 'src') diff --git a/src/base/QXmppJingleIq.cpp b/src/base/QXmppJingleIq.cpp index 99388f9e..43241db9 100644 --- a/src/base/QXmppJingleIq.cpp +++ b/src/base/QXmppJingleIq.cpp @@ -69,6 +69,7 @@ static const char* jingle_reasons[] = { }; QXmppJingleIq::Content::Content() + : m_descriptionSsrc(0) { } @@ -112,6 +113,16 @@ void QXmppJingleIq::Content::setDescriptionMedia(const QString &media) m_descriptionMedia = media; } +quint32 QXmppJingleIq::Content::descriptionSsrc() const +{ + return m_descriptionSsrc; +} + +void QXmppJingleIq::Content::setDescriptionSsrc(quint32 ssrc) +{ + m_descriptionSsrc = ssrc; +} + void QXmppJingleIq::Content::addPayloadType(const QXmppJinglePayloadType &payload) { m_descriptionType = ns_jingle_rtp; @@ -172,6 +183,7 @@ void QXmppJingleIq::Content::parse(const QDomElement &element) QDomElement descriptionElement = element.firstChildElement("description"); m_descriptionType = descriptionElement.namespaceURI(); m_descriptionMedia = descriptionElement.attribute("media"); + m_descriptionSsrc = descriptionElement.attribute("ssrc").toULong(); QDomElement child = descriptionElement.firstChildElement("payload-type"); while (!child.isNull()) { @@ -213,6 +225,8 @@ void QXmppJingleIq::Content::toXml(QXmlStreamWriter *writer) const writer->writeStartElement("description"); writer->writeAttribute("xmlns", m_descriptionType); helperToXmlAddAttribute(writer, "media", m_descriptionMedia); + if (m_descriptionSsrc) + writer->writeAttribute("ssrc", QString::number(m_descriptionSsrc)); foreach (const QXmppJinglePayloadType &payload, m_payloadTypes) payload.toXml(writer); writer->writeEndElement(); diff --git a/src/base/QXmppJingleIq.h b/src/base/QXmppJingleIq.h index c3d59307..d1a43c37 100644 --- a/src/base/QXmppJingleIq.h +++ b/src/base/QXmppJingleIq.h @@ -199,6 +199,9 @@ public: QString descriptionMedia() const; void setDescriptionMedia(const QString &media); + quint32 descriptionSsrc() const; + void setDescriptionSsrc(quint32 ssrc); + void addPayloadType(const QXmppJinglePayloadType &payload); QList payloadTypes() const; void setPayloadTypes(const QList &payloadTypes); @@ -224,6 +227,7 @@ public: QString m_senders; QString m_descriptionMedia; + quint32 m_descriptionSsrc; QString m_descriptionType; QString m_transportType; QString m_transportUser; -- cgit v1.2.3