Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CMCD reporting sample players shows the CMCD version field even though it's not sent (CMCD_DATA_GENERATED event is misleading) #3742

Closed
5 tasks done
mgreve-akamai opened this issue Aug 26, 2021 · 2 comments
Labels

Comments

@mgreve-akamai
Copy link

mgreve-akamai commented Aug 26, 2021

Environment
Steps to reproduce
Observed behavior

The player shows the CMCD version field in the text area on the page, but dash.js is not sending the field as part of requests (as expected).

Expected behavior

I would expect the textarea on the page to show the fields that are sent on the request, and not be misleading. Hence, it should not show the version (v) field.

FYI - it is correct behaviour to omit the version field if it's 1.

Quote from the spec: "The version of this specification used for
interpreting the defined key names and values. If
this key is omitted, the client and server MUST
interpret the values as being defined by version 1.
Client SHOULD omit this field if the version is 1. "

Link to spec: https://cdn.cta.tech/cta/media/media/resources/standards/pdfs/cta-5004-final.pdf

@mgreve-akamai
Copy link
Author

I believe this happens because the CMCD_DATA_GENERATED event contains misleading data. The dash.js code modifies the CMCD request in _buildFinalString (e.g. by removing the version field if the value is 1), but the event contains also the data before modification from _getCmcdData.

` if (settings.get().streaming.cmcd && settings.get().streaming.cmcd.enabled) {
const cmcdData = _getCmcdData(request);
const finalPayloadString = _buildFinalString(cmcdData);

            eventBus.trigger(MetricsReportingEvents.CMCD_DATA_GENERATED, {
                url: request.url,
                mediaType: request.mediaType,
                cmcdData,
                cmcdString: finalPayloadString
            });`

Source: https://github.com/Dash-Industry-Forum/dash.js/blob/development/src/streaming/models/CmcdModel.js

@mgreve-akamai mgreve-akamai changed the title CMCD version should be omitted if the version is 1 CMCD reporting sample players shows the CMCD version field even though it's not sent (CMCD_DATA_GENERATED event is misleading) Aug 26, 2021
@dsilhavy dsilhavy mentioned this issue Aug 27, 2021
@dsilhavy
Copy link
Collaborator

Fixed in #3745

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants