Is Mobile Indicator set when using ua-parser library (as opposed to user-agent-utils)

Hello,

I’m trying to figure out how the device info is returned considering snowplow seems to be using two different libraries to parse the user agent string. Specifically, I need to know if the dvce_ismobile bool is still being set and returned.

The old library (that is now EOL’d and I understand snowplow is moving away from) set multiple fields of data, including dvce_ismobile which was a bool (true if the device that was being used was a mobile device). However, the new library being used does not have any such field.

I apologize for the simple question, but is the data from both libraries being returned always? Is the data from ua-parser replacing the data from user-agent-utils? And if so, what about the dvce_ismobile bool?

Thank you! I have linked the relevant definitions of the client below:

1 Like

Hi @Federico_Pizarro_Bej,

I apologize for the simple question, but is the data from both libraries being returned always? Is the data from ua-parser replacing the data from user-agent-utils? And if so, what about the dvce_ismobile bool?

These are both enrichments, so which ones are used depend entirely on what your enrichment configuration is set up to do. You can enable or disable them as you like.

The old library (that is now EOL’d and I understand snowplow is moving away from) set multiple fields of data, including dvce_ismobile which was a bool (true if the device that was being used was a mobile device). However, the new library being used does not have any such field.

The User Agent Utils and User Agent Parser libraries are indeed quite different - one is not a replacement for the other, rather they deliver different granularity of information which is useful for different purposes.

The EOL thing is unfortunate and a bit of a pain, but we’ve been planning and working towards improvements in user agent parsing for a long time, and actually the latest release (just last week) includes the introduction of a different UA parser library - YAUAA. You can find the release notes here.

The YAUAA library should both offer similar functionality to the most useful ones in the old Enrichment (like indicators for device type mobile/desktop etc), and a lot of other potentially useful stuff.

Hope that’s helpful!

Best,

1 Like

Hello @Colm,

Thank you very much, that makes everything very clear. Again, I apologize for the simple question. I will look into which enrichments I am using, and into YAUAA.

-Federico

No worries at all, that’s what Discourse is for! Good timing for the question - that release is hot off the press

2 Likes

Hi @Colm,

thanks for releasing this so quickly. However, there is already a new version of YAUAA released (5.0.10) vs. the shipped 5.0.8. I guess their release cycle is faster than yours. Would you mind to push forward on that issue to make the engine and ruleset.yaml configurable?

Thanks a bunch!

@stevecs what are your thoughts here?

Hi @christoph-buente. Noted the new version and will look to queue it up for an upcoming release. We’ve got a couple of big ones coming up, so may not be until they’re out.

“guess their release cycle is faster than yours.”

Most likely true. We have a lot of components we need to ensure play nicely together in every release, and go to great lengths to build assurance of that. We’re looking at ways to speed up our release cycle (and build our team for anyone interested - see our careers page!) so we can release more often, without compromising trust in the releases.

Will keep you posted on both!