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.3.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vaknl_user-1.0.3-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vaknl-user-1.0.3.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.9

File hashes

Hashes for vaknl-user-1.0.3.tar.gz
Algorithm Hash digest
SHA256 0bfe6655a5d8ad67f839275de50ed804406d793bd9f8df939978acf0da97fdd8
MD5 6c9a878fab5378221fabd442cd5a38c7
BLAKE2b-256 9d8dad02515f4d89fe5b6ccffcd4d7b1aa3962639027810003af67c7b8af277c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vaknl_user-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 8.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.9

File hashes

Hashes for vaknl_user-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bd756e0cba1168849a0d3dfe196830847f33040a36ce8d3ed52850e4d72c3148
MD5 08f4e700ce3760eb72820277d81bd862
BLAKE2b-256 daf854d58f8cd31f30ba474dd3ba709825369e36139f74c209314e1945ef72f8

See more details on using hashes here.

Supported by

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