Data Integration and Services

Data Integration and Services root Fri, 12/12/2014 - 14:01

This section contains information on various campus-available and campus-recommended resources for third-party data integration and services.


Data Integration and Services Sub-Topics

Google (Search, Analytics)

Google (Search, Analytics) root Fri, 12/12/2014 - 15:09

The campus uses many of Google's services.


Google Service Sub-Topics

Google Analytics

Google Analytics root Fri, 12/12/2014 - 15:09

Accessing BuzzAPI v3 Using PHP and Curl

Accessing BuzzAPI v3 Using PHP and Curl
Category
kp37 Fri, 08/09/2019 - 17:37
<?php
  
$username = 'USERNAME';
$password = 'PASSWORD';
$apiURL = "https://api.gatech.edu/apiv3/";
$schema = 'central.academics.course_catalog.classes';

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $apiURL . $schema . '/search');
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json"));
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array('api_app_id' => $username, 'api_app_password' => $password, 'api_request_mode' => 'sync', 'term_code' => '201805')));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

$results = curl_exec($ch);

print_r($results);

 

LDAP (Lightweight Directory Access Protocol)

LDAP (Lightweight Directory Access Protocol) afrank30 Thu, 06/11/2015 - 11:46

This section contains information about Georgia Tech's LDAP system and ways of accessing it.


LDAP Sub-Topics

Finding GT Accounts Using the Public LDAP Server

Finding GT Accounts Using the Public LDAP Server afrank30 Thu, 06/11/2015 - 11:54

Example code of how to retrieve a person's gtaccount (gburdell1) using command line.

Start command

For each of the examples given below, the command will start with this line:

ldapsearch -x -LLL -h whitepages.gatech.edu -b "dc=whitepages,dc=gatech,dc=edu" 

For example, 

ldapsearch -x -LLL -h whitepages.gatech.edu -b "dc=whitepages,dc=gatech,dc=edu" mail=george.p.burdell@gatech.edu

Use email to find gtaccount

mail=george.p.burdell@gatech.edu

Use unique given or first name

givenName=Adelle

Use unique family/last or surname

sn=Vuchatu

Use part of full name

cn="*Frank,A*"

OR

cn="*Adelle*"

Other ldap variables

Whitepages also lets you narrow your search using other values, such as:

  • building: William C Wardlaw Center
  • telephoneNumber: 404-385-4275
  • displayName OR cn: Burdell,George P
  • title: Web Developer Sr [job title]
  • objectClass: luPerson
  • primaryUid OR uid: gburdell1
  • postalAddress: 0181 [campus mail code]
  • ou: Institute Communications [department]

Sensitive Data Considerations

Sensitive Data Considerations afrank30 Mon, 02/23/2015 - 12:48
Tags

This section provides information and links to policies, checklists, and best-practices about storing and transmitting data that might be sensitive (FERPA, HIPAA, SSN, birthdates, etc).

Social Media (Facebook, Twitter, etc.)

Social Media (Facebook, Twitter, etc.)
Category
root Mon, 01/29/2018 - 18:02

Social media services are very popular these days and can be a big help in connecting with your desired audience.  Setting up and managing a social media account is beyond the scope of this article, but below you will find documentation on integrating social media into your websites.

Pulling Social Media into Sites

Facebook

There are various tools available for integrating Facebook into a website.  Some plugins or modules will let you enter the ID number of a page and can then pull in the posts from that page, showing them on a dynamically generated page of your website (quite commonly the front page).  It is also possible for a Facebook page administrator to generate a widget (a short blob of HTML and/or JavaScript code) that can be pasted into a website to embed a series of recent posts from that Facebook page.

Embedding directly from Facebook using their code is likely to be the most stable method in the long-term, but does require both access to the Facebook page (to generate the embed code), and the ability to post pure HTML and JavaScript to the website in question (some Drupal site configurations on campus disallow this by default).

Do note that in early 2018 Facebook placed much stronger restrictions on public access to feeds, breaking many older plugins and modules that let you provide Facebook feeds on websites.  If you are looking at modules or plugins for this purpose, make sure they've been updated by the maintainer since April of 2018, and be aware that some features you used to be able to use prior to the spring of 2018 are no longer available.

Twitter

Everything mentioned for Facebook in the previous section applies to Twitter with one bonus:  anyone can generate embed code for any publicly visible Twitter account.  Just visit the Twitter Publication site, enter the ID of the account you want to embed a timeline from, and follow the resulting instructions.

Other Social Media Integrations

Two other social media integrations are possible: pushing posts to social media accounts, and providing "share to" buttons on your site.

Pushing posts to social media requires a module or plugin specific to the content management system you are using.  When configured correctly, you would be able to make a new blog-style post to your website, and it would be automatically copied to the associated social media account.  In theory, you can set up multiple integrations of this type as long as you can find a suitable module or plugin for each social media service with which you want to integrate.

Adding "share to" buttons is a bit easier, and could be done manually on each page.  However, since this takes a lot of time and effort, there are modules and plugins to add these buttons for you.  Just search in the plugin or module repository for your content system on the phrase "Share to XXX" where "XXX" is the name of the social media service you use.

Social Media Caveats

It should go without saying that social media services can update their systems and APIs at any time.  Usually they will give plenty of warning, but ultimately it's their network and they can change it as they wish (see the caveat about Facebook above as an example).  When such changes occur, expect to have to update any associated modules or plugins, which may stop working until you do update them.  There's a greater chance that embeds generated from the social media service will be supported indefinitely, but even they may have to eventually be updated if the service decides to completely end support for an older API that they are using.

The other caveat is to remember (and to warn your stakeholders) that pulling from (or pushing to) social media is a matter of dealing with an outside service not controlled by Georgia Tech, so it is subject to downtime by the service provider or network failures anywhere along the way.  Thus, it is to be expected that embeded social media feeds may not show up correctly 100% of the time.