Skip to main content

Send speaker and proposal information to SalesForce

Project description

This is a plugin for pretalx that serves to send speaker and proposal information to SalesForce.

Information is sent every eight hours or on manual sync, and is mapped as follows:

  • Users and their speaker profiles are sent as contacts:
    • Contact.pretalx_LegacyID__c is set to the pretalx user ID

    • Contact.FirstName is set to the first part of a user’s name, separated by whitespace.

    • Contact.LastName is set to any remaining part of a user’s name.

    • Contact.Email is set to the user’s email address.

    • Contact.Biography__c is set to the user’s biography.

    • Contact.pretalx_Profile_Picture__c is set to the user’s profile picture URL.

  • Submission objects are set synced to the custom Session object:
    • pretalx_LegacyID__c is set to the submission’s pretalx ID.

    • Name is set to the submission’s title.

    • Session_Title__c is the submission’s full title, as Name is truncated to 80 characters.

    • Track__c is set to the submission’s track (by name, not by ID).

    • Submission_Format__c is set to the submission’s type (by name, not by ID).

    • Status__c is set to the submission’s status.

    • Abstract__c is set to the submission’s abstract plus the submission’s description, separated by two newlines and then stripped of whitespace.

    • Pretalx_Record__c is set to the submission’s public URL.

  • The mapping between Contacts and Sessions is synced to the custom Contact_Session__c object:
    • Contact__c is set to the Salesforce Contact.

    • Session__c is set to the Salesforce Session.

Development setup

  1. Make sure that you have a working pretalx development setup.

  2. Clone this repository, eg to local/pretalx-salesforce.

  3. Activate the virtual environment you use for pretalx development.

  4. Run pip install -e . within this directory to register this application with pretalx’s plugin registry.

  5. Run make within this directory to compile translations.

  6. Restart your local pretalx server. This plugin should show up in the plugin list shown on startup in the console. You can now use the plugin from this repository for your events by enabling it in the ‘plugins’ tab in the settings.

This plugin has CI set up to enforce a few code style rules. To check locally, you need these packages installed:

pip install flake8 flake8-bugbear isort black

To check your plugin for rule violations, run:

black --check .
isort -c .
flake8 .

You can auto-fix some of these issues by running:

isort .
black .

License

Copyright 2024 Tobias Kunze

Released under the terms of the Apache License 2.0

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

pretalx_salesforce-0.2.0.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

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

pretalx_salesforce-0.2.0-py3-none-any.whl (51.1 kB view details)

Uploaded Python 3

File details

Details for the file pretalx_salesforce-0.2.0.tar.gz.

File metadata

  • Download URL: pretalx_salesforce-0.2.0.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pretalx_salesforce-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b15457c81f935cee8ff8b17c178be14cbd3d09854aa126d46d48e435d1ce6a15
MD5 9cb1a74accd04237f8f749f3d56318c9
BLAKE2b-256 9e746685c1f0c84e9ea65a62d84a80c76b7cbc241f9d24dbdf2e0d1fb6efaa72

See more details on using hashes here.

File details

Details for the file pretalx_salesforce-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pretalx_salesforce-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 765b0d777bece1ec41b00cc1a4e4409ff757b0954f2f8c823edd9e7d0689e198
MD5 8e4969dc0a948c3446a422062e3198d3
BLAKE2b-256 3700b093dea6d2a1a190b8d076bd1b230da4ac6b3e6a1bd69af3c03a4611ef69

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