TeamDynamix

From Carlpedia
Revision as of 13:23, 28 August 2025 by Rbauer (talk | contribs)
Jump to navigation Jump to search

Overview

TeamDynamix (TDX) is an SaaS application used primarily by the ITS Help Desk for service management.

Grouper Implementation Details

FIM Implementation Details

FIM implements TDX integration via controlling a SQL view X.TDX_Push_v in the idm database via the "TDX Push" management agent.

The SQL table is one row per patron, with the following fields.  (Note: because TDX is in a shared tenant with St. Olaf, many of the values in the patron feed are institutionally scoped in one way or another.)

EUID Used as the connector anchor, and not sent along with the upload.
createdOn Datetime of record creation.
syncRule Name of the highest-precedence sync rule being enforced.
lastActiveOn (Used by patron maintenance process?)
okToDelete True if FIM can disconnect user from connector (set by patron maintenance process).
Username eduPersonPrincipalName (netId@carleton.edu)
User_Role "User"
Authentication_Provider Carleton LDAP
Authentication_Username eduPersonPrincipalName (netId@carleton.edu)
Security_Role One of Client, College Communications - CC, Enterprise - Full Access, Student Technician, and Technician
First_Name Chosen first name
Last_Name Chosen last name
Location Human-friendly version of primary campus location (office for fac/staff, dorm for students).  (Overridden by patron maintenance process.)
location_code College room code (building*room) of primary campus location (office for fac/staff, dorm for students).
Organization "Carleton College"
Title Primary job title for fac/staff
Acct_Dept Department name (fac/staff) or "Student", scoped to Carleton.  e.g. "Development Office - CC".
Organizational_ID eduPersonUniqueId (wxyz1234@carleton.edu)
Alternate_ID Colleague ID
Is_Employee False for clients, true for technicians (ITS and otherwise)
Primary_Email Carleton email address if deliverable, otherwise "UNKNOWN-EMAIL-DISABLED-USER-"+eduPersonUniqueId
Alternate_Email unused
Work_Phone Office phone (e.g. +1 507 222 9999)
Work_Postal_Code 55057
Time_Zone 4
Capacity_Is_Managed 0
Reports_To_Username unused
HasTDNext False for clients, true for technicians (ITS and otherwise)
HasMyWork False for clients, true for technicians (ITS and otherwise)
HasTDPeople False for clients, true for technicians (ITS and otherwise)
TDClient_2092 Access level within ITS help desk part of TDX: Client, Technician - Basic, and Enterprise
TDClient_1893 unused
TDClient_2527 Access with CCOM part of YDX: Client and CCOM Staff
TDTickets_1736 Null for ITS clients, otherwise Technician - Basic or Enterprise
TDTickets_2528 Null for CCOM clients, otherwise CCOM Staff
Primary_Client_Portal_Application "Carleton Client Portal"
Is_Active False for clients going through off-boarding, True for everyone else
Alert_Email Carleton email address if deliverable, otherwise "UNKNOWN-EMAIL-DISABLED-USER-"+eduPersonUniqueId

FIM Service Rules

FIM Service Rules

Expand source

SSIS Packages

MakeTDXUserFeed - 2016 (deployed to sqlserver1-2016)

Notes:

  • SSIS source code resides in \\protected.ads.carleton.edu\protected\Departments\ITS\ITS-Only\SSIS-Projects\SSIS-Projects\MakeTDXUserFeed - 2016
    • Version control is tracked in https://github.com/carleton/MakeTDXUserFeed
  • The SSIS production configuration is deployed to SQLServer1-2016
  • The SSIS job takes its data from a view X.TDX_Push_for_import, which is a thin layer over the underlying table.
    • NULLs are replaced with blanks
    • Underscores in column names are replaced with hyphens or spaces, depending
    • Additional filtering of non-Carleton email addresses is applied
    • SQL booleans (bits) are converted to T and F
    • Unused columns are ignored
    • The Location column is replaced with data joined from the ODS, producing a result compatible with the TDX location data integration
  • The SQL Agent on SQLServer1-2016 runs the SSIS code once a day, 6 pm, which syncs department names and room locations using the TDX API and then queues a "people" import by running the TDX import tool
  • The TDX import tool in installed on the server (see parameters); it is obtained from https://stolafcarleton.teamdynamix.com/SBTDNext/Home/Desktop/Default.aspx (click the upper left window menu; go to Downloads)
  • In order for the SSIS job to work correctly, both for TDX API and Newtonsoft.JSON library must be installed; this locks the version
  • The TDX API must be installed, not only with NuGet (in Visual Studio) so the SSIS package can see it, but also added to the server’s assembly cache with gacutil.exe (via the Visual Studio CMD shell)
  • It is imperative that multiple people imports NOT be queued up for a single import window (for the sandbox the import happens multiple times a day, but the production instance imports only once a day); if you queue up multiple imports for production in a single day, it can trigger a race condition on the TDX end that requires their support people to fix (and in the meantime, our data is messed up)

Scheduled Tasks

TBD

Authentication

LDAP authentication