Django device recognizing utility.
Project description
WebCase device recognizing utility
Installation
pip install wc-django-device-recognizer
It depends on django-user-agents
, so check out it's documentation about additional installation instructions.
In settings.py
:
INSTALLED_APPS += [
'wcd_device_recognizer',
]
Usage
To get all possible information from request:
from wcd_device_recognizer.services import request_resolver
interlocutor = request_resolver.resolve(request)
assert interlocutor.device.bitness == '64'
assert interlocutor.os.family == 'Linux'
assert interlocutor.os.arch == 'x86'
assert interlocutor.app.family == 'Chrome'
assert interlocutor.app.version == (101, 0, 0)
assert interlocutor.device.dpr == 1
And then you may save interlocutor's data to database:
from wcd_device_recognizer.services import registry
# You may pass any amount of interlocutors to register here.
registry.register_interlocutors((interlocutor,))
Coverage
To collect interlocutor's data package uses User-Agent info and standart HTTP headers:
Sec-CH-UA
Sec-CH-UA-Arch
Sec-CH-UA-Bitness
Sec-CH-UA-Full-Version
Sec-CH-UA-Full-Version-List
Sec-CH-UA-Mobileser experience.
Sec-CH-UA-Model
Sec-CH-UA-Platform
Sec-CH-UA-Platform-Version
Content-DPR
Device-Memory
DPR
Viewport-Width
Width
For details look here: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers#user_agent_client_hints
Also any Sec-CH-UA-{key-name}
will be saved.
To provide some unique device identifier use: Sec-CH-UA-ID
header.
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
[0.1.4]
Added
- Translation strings.
[0.1.1]
Initial version.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for wc-django-device-recognizer-0.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | e950c7c02b24c88697a97923e75880be55ab2bd71c84d91389588d08872e6e69 |
|
MD5 | 4369f6e47b2e59fd64fad2b6cedcd7b9 |
|
BLAKE2b-256 | 649c9f16aaaa4b63405470200a7dd8e599ad4c352dff966694a6c7ca1c58f623 |