Skip to main content

User class that defines a user based on clickstream data.

Project description

vaknl-user

Defines the vaknl User class. A user (here identified by a dmp_user_id) is a object that is defined by website clickstream data as a basis. The User class contains functions that can transform raw Firestore website clickstream data to well defined Event dataclasses. These Event dataclasses are read and translated into user information. The User class also includes functions to write the user to Firestore.

Prerequisites

Firestore read and write permissions within the Google Cloud Platform (GCP), if one wants to make use of the Firestore functionality.

User

class User

User class where user object is identified by dmp_user_id user.

create_event(clickstream_event_json) @staticmethod

Assigns event to a (event-)dataclass based on event clickstream json.

update_funnel_step(statistics, event) @staticmethod

Updates the funnel step the user is in.

update_statistics(event)

Update user statistics with event.

add_event(clickstream_event_json)

Adds event to user based on clickstream json and updates statistics.

add_multiple_events(clickstream_event_json_list)

Adds multiple events to event_list at a time.

sort_events_by_timestamp()

Sort self.events (event list) ascending on timestamp.

events_to_dict()

Outputs list of event dicts (decoded from the list of event dataclasses).

to_firestore()

Writes user to firestore.

create_user_from_clickstream()

Gets all available website clickstream data from Firestore for the given dmp_user_id and fills the User class with information.

General script functions

Mostly functions that allow the user of this package to manually set private variables in this module.

set_project_id(name: str)

Set global variable _project_id, which represents the GCP project id. When function is called, it also automatically updates the firestore client.

set_firestore_collection_source(name: str)

Set global variable _firestore_collection_source, which should be the name of the Firestore source collection, from which the website clickstream data is gathered.

set_firestore_collection_destination(name: str)

Set global variable _firestore_collection_destination, which should be the name of the Firestore destination collection to which the user is written.

create_firestore_client(project_id: str)

Sets up Firestore client.

Event

Contains Event dataclass and all sub-dataclasses that can go multiple layers deep.

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

vaknl-user-1.0.18.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

vaknl_user-1.0.18-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

Details for the file vaknl-user-1.0.18.tar.gz.

File metadata

  • Download URL: vaknl-user-1.0.18.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.6

File hashes

Hashes for vaknl-user-1.0.18.tar.gz
Algorithm Hash digest
SHA256 4a592bc5f5fdf0f5aa2d41e13b54a978877fc8b10abf7b1247e738d40480e607
MD5 c0677dcb31254bba208a5f2848e8bf53
BLAKE2b-256 80cdf1ba3708e098795bb4c47e30cc3181640d41f7add5f1c39ee457195ff397

See more details on using hashes here.

File details

Details for the file vaknl_user-1.0.18-py3-none-any.whl.

File metadata

  • Download URL: vaknl_user-1.0.18-py3-none-any.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.6

File hashes

Hashes for vaknl_user-1.0.18-py3-none-any.whl
Algorithm Hash digest
SHA256 a696bc9bc6b05cf398027f24834a76a152e6b4494a9e26d8701d92d664c892b2
MD5 00df0dd4ce4f7b91f591805fad09a587
BLAKE2b-256 5d41b23eae3e5d92ff323c43656d9ba53bf1e14a23f6f76490c697e9ad143e91

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page