Skip navigation
1 2 Previous Next

Jive Developers

25 Posts authored by: rashedtalukder

jivedev QuickStart App

If you were there with us at JiveWorld17, you know that we announced the jivedev QuickStart App's availability in the Global Registry. That means that not only is it available in our sandbox AND JiveWorks community for all registered users, but also can be easily installed in your instance! For instructions how to install it on your own instance, check out: Installing an Add-on from the Global Registry.

 

NOTE: The Custom View Tile add-on that is generated is not compatible with Internet Explorer as it does not support many of the features found in ES6 JavaScript.

 

 

What is it? Why do I NEED to install it?

So this is probably the first question you have, and rightly so! This app allows you generate several different integrations by just copying and pasting your code into the textboxes. There are also a slew of great out of the box examples baked in. Now you can build some Jive Add-on's from right within your own instance! Getting other developer's in your organization to try extending your environment will now be even easier than ever since they'll have access to getting started without needing to navigate to here first. There is also plenty of helpful relevant links to documentation in each of the examples as well.

 

 

AND just like other add-on's in the global registry, it can also be restricted to being installed by only certain people or spaces/groups so you can manage who has the ability to generate add-on's. After you install the Add-on, you will see a gear in the "Apps Security" column of the page and pressing that gear will present you with a screen like the following:

 

 

Current Integration types

Custom View Tiles

Since CVTs are so popular these days, I tried to include as many of the most requested examples as possible. By default, you get contextual data of who and where you are, can make OSAPI HTTP requests from tile and have it render the response within the tile. It also supports instances where GALA is available and enabled and shows the different ways to get the URL of the app and assets.

 

Simple Stream Integrations

Similar to the SSI Builder that's been available on Simple Stream Integration Builder - Jive Developers, you can now create these powerful integrations without ever leaving your Jive Community.

 

OAuth Token Generator

Similar to the Try the New OAuth 2.0 Client Builder Web Tool, you can build these add-ons and reference this doc OAuth 2.0—Creating a Client and Managing Access to make calls to our REST API.

 

What else does it have?

We link to as many relevant pieces of documentation as possible, it's easily expandable so that we can have apps and other integration types as well if there's enough demand.

 

When should I install it?

Now!

THE EVENT HAS BEEN CANCELLED!

Dev_Plane_Bay_Area.png

 

For our second round of the second series of our Developer Days, we're landing in the Pacific time zone to not only celebrate National Bavarian Crepes Day, but to explore developing middlewared Jive add-ons. In this series, we'll be covering how to create an external middleware'd Jive Activity Integration and also the different types of webhooks that Jive provides and some use cases that are popular.

 

How To Register

  1. Make sure your e-mail address in your profile is up-to-date and correct
  2. Please comment below with your firstName + " " + lastName + ", " + company
  3. ****If your organization's internal policies do not allow you to post on public forums, please feel free to message/e-mail me or Ryan Rutan and we'll take care of it.

 

  1. You must register yourself, and yourself only. You cannot register in someone's behalf. It not only keeps it fair for everyone, but also ensure we have a way to communicate and everyone has access to all the tools we'll be using (e.g. Jive Sandbox).
  2. Since we want to be able to reach as many organizations as possible and seating is limited, we are capping registration to 3 per organization and anyone beyond that will be placed on the waitlist. After registration closes, if there's space available, they'll be moved to be a registrant.
  3. Registration closes March 20th 5p.m. PST. We need a minimum of 10 people registered to attend to hold the event.

 

Event Details

  • March 22, 2017
  • 12:30p.m.-3:00p.m. PST
  • via GoToMeeting (specific meeting details will be given day before event via e-mail)

 

Prerequisites

Everyone must have all the required software installed from Jive Developer Days Installfest

prior to joining the session. I will be posting up a document detailing everything with instructional video to make it as easy for everyone as possible & all registrants will get a reminder link.

 

What You'll Gain

 

Registered

NameOrganization
You!

 

Waitlist

NameOrganization

We kicked off the year with a progression in our Developer Days event to move forward and explore a Middleware use-case — specifically WebHook Bi-Directional Sync with an Activity Stream — and work through two built-in examples with the Jive Node SDK (example-webhook and activity-stream) and put the two examples together to post activities into Jive, retrieve a content webhook back and log the response that can be retrieved in a pre-defined endpoint.

 

By attempting to work through this use-case, we discovered a some challenges along the way that needed to be addressed with both the platform and some potential changes to the SDK that needs to be made.

 

The main one being that a content webhook can be narrowed to listen to just one piece of content with a /content endpoint reference URL. However, an ext stream doesn't include that, so we needed to have a noiser webhook (event type: "extStreamActivity") and filter out the specific Activity in our middleware for future syncing.

 

 

For those who attended, below are snippets of changes we made to the activity-stream example:

• Update /services/services.js (add below BootStrap) 

/**** HANDLES CALLBACK FROM ACTIVITY PUSH ****/

exports.eventHandlers = [



  'event' : jive.constants.globalEventNames.ACTIVITY_PUSHED,

  'handler' : function (context) {

    console.log('****','ACTIVITY PUSHED',context);



  'description' : 'Check for Activity Pushed'

}

]; // end 

• Update /services/DevDaysWebhooks/backend/routes/explicit_routes.js  line #41 

   /**** LOOKS UP THE CONTENT OBJECT TO GET FULL DETAILS ***/

              //NOTE:  YOU CAN ALSO LOOKUP VIA THE WEBHOOK DEFINITION
              jive.community.findByTenantID(req.headers["x-tenant-id"]).then(
                function(community) {
                    if (community) {
                      jive.community.doRequest(community,{
                         /*** NOTE: THE SILENT DIRECTIVE THIS WILL PREVENT THIS REQUEST FROM COUNTING AS A READ ***/
                         "url" : activity["activity"]["object"]["id"]+"?directive=silent",
                         "method" : "GET",
                         "headers" :  {
                             "content-type" : "application/json"
                         }
                       }).then(
                        function(success) {
                          var content = success["entity"];
                          console.log('Your External ID is:',content["externalID"]);
                        }, function(error) {
                          jive.logger.error("UNABLE TO GET OBJECT DETAILS",error)
                        }
                      );
                    } // end if
                } // end function
              );



• jive-sdk build … re-install.  Re-configure your webhook Tile. 

• Talk about /services/DevDaysWebhooks/backend/routes/oauth/sampleOAuth.js

• Start/Stop Service


○ HACK:  Copy /db/tokens.json {  "accessToken" : {} } to /db/community.json {  "oauth" : {} } 

Install Activity Tile … configure to "on" and Save

Hack_Tour_Plane_nyc.png

Happy New Year everyone!! To start the new year right, we're kicking off our second series of our Developer Days to help teach the next chapter of Jive Integrations. In this series, we'll be covering how to create an external middleware'd Jive Activity Integration and also the different types of webhooks that Jive provides and some use cases that are popular.

 

How To Register

  1. Make sure your e-mail address in your profile is up-to-date and correct
  2. Please comment below with your firstName + " " + lastName + ", " + company

If your organization's internal policies do not allow you to post on public forums, please feel free to message/e-mail me or Ryan Rutan and we'll take care of it.

  1. You must register yourself, and yourself only. You cannot register in someone's behalf. It not only keeps it fair for everyone, but also ensure we have a way to communicate and everyone has access to all the tools we'll be using (e.g. Jive Sandbox).
  2. Since we want to be able to reach as many organizations as possible and seating is limited, we are capping registration to 3 per organization and anyone beyond that will be placed on the waitlist. After registration closes, if there's space available, they'll be moved to be a registrant.
  3. Registration closes January 27th 5p.m. EST

 

Event Details

  • January 31, 2016
  • 12:30p.m.-3:00p.m. EST
  • via GoToMeeting (meeting specific details will be given day before event via e-mail)

 

Prerequisites

Everyone must have all the required software installed from Jive Developer Days Installfest prior to joining the session. I will be posting up a document detailing everything with instructional video to make it as easy for everyone as possible & all registrants will get a reminder link.

 

What You'll Gain

 

Registered

NameOrganization
Scott HurreyBlackboard
kbassBluegrass Care Navigators
Sameer VasudendraCapital One
Tracy ChapmanCapital One
Raj VachhaniCommvault Inc.
Himanshu DhuperDBGT
Ashish SatapathyDeutsche Bank
Gopi Shiva Krishna GEuropean Commission
Jens Goldhammerfme AG
Vikas MathurJM Family Enterprises
Steven SchmidtLogitech
dshiferawReingold
kretzschrT-Systems Multimedia Solutions GmbH
Lars KreiszT-Systems Multimedia Solutions GmbH
Mirko SwillusT-Systems Multimedia Solutions GmbH
You!

 

Waitlist

NameOrganization

gala_tile.png

 

We have some exciting news to share for Jive Cloud customers! There was a lot of requests to increase the performance of Custom View Tile's load times and to satisfy that without compromising security, we're presenting the new Gala service to replace Shindig. What lets Gala work is better caching and loading from a different domain CDN than your Jive instance. The results of this is a perceived up to 30+% faster loading times than before!!!

 

How do you enable the new Gala service?

Admin Console > System > Settings > New Features > Lightweight Custom Tiles

We will be enabling GALA service in the official Jive Sandbox in the near future for you to test out yourself mid-December. This post is just to give everyone a heads up.

 

How to check if Gala is admin enabled inside add-on?

There will be a globally available gala object. So in your included javascript:

if(gala && typeof gala === "object"){
     // Do Gala specific stuff
}

 

What do I need to do differently?

Since Gala loads the assets from a domain other than your main Jive site into an iFrame, you won't be able to read the window.location or window.parent.location. So to help solve that, we've introduced two new methods that are available whether Gala is enabled or not—jive.tile.getAppURL() and jive.tile.getJiveURL(). An example of getting the add-on's URL before Gala and after is below:

 

// Old way to get Add-on URL
function getAddonURL(){
     var matches = window.location.href.match(/.*?[?&]url=([^&]+)%2F.*$/);
     if (matches.length === 2){
          return decodeURIComponent(matches[1]);
     } else{
          return ''; 
     }
}

 

// New GALA way to get Add-on URL
function getAddonURL(){
     if (gala && typeof gala === "object"){
          return jive.tile.getAppURL();
     }
}

Hack_Tour_Bus_austin.png

 

This is our LAST Developer Days event for the year, and to make sure as many people can attend as possible that might have missed out on prior events—and the success we felt from The European Dev Days event—we will be making this one hosted virtually on GoToMeeting. We'll be covering our Jive middleware-less stories and best practices in a lecture + hands-on hack session where we'll create integrations together that solve real business use cases, and answer your questions along the way.

 

Event Details

Since we want to be able to reach as many organizations as possible and seating is limited, we are capping registration to 4 per organization and anyone beyond that will be placed on the waitlist. After registration closes, if there's space available, they'll be moved to be a registrant.

 

  • November 17, 2016 — 1p.m.-3p.m. CST
  • November 18, 2016 — 1p.m.-3p.m. CST
  • via GoToMeeting — URL will be sent after registration closes.
  • Attendee limit of 25
  1. You must register yourself, and yourself only. You cannot register in someone's behalf. It not only keeps it fair for everyone, but also ensure we have a way to communicate and everyone has access to all the tools we'll be using (e.g. Jive Sandbox).
  2. Since we want to be able to reach as many organizations as possible and seating is limited, we are capping registration to 4 per organization and anyone beyond that will be placed on the waitlist. After registration closes, if there's space available, they'll be moved to be a registrant.

 

What You'll Gain

 

Prerequisites

Everyone must have all the required software installed prior to joining the session. (See: Jive Developer Days Installfest )

 

How To Register

  1. Make sure your e-mail address in your profile is up-to-date and correct
  2. Please comment below with your firstName + " " + lastName + ", " + company

 

 

Registered

NameCompany/Organization
saurabh.v.singh@schwab.comCharles Schwab & Co., Inc.
almore.catoCox Automotive
Rachit Chaudhary
Oracle India Pvt Ltd
jayjayprodOrange
pushpendra.paliwal
Orange Business Services
eramitpshah
IonIdea
Kranthi Kiran Chiluveru
S&P Global
Samee K STechMahindra
Micah MarkmanReingold
dshiferawReingold
YOU!

 

Waitlist

You will be placed on the waitlist if we reach capacity of 25, or if more than 4 individuals are registered with your company. If there is space after registration closes, your status will change to registered and you'll be e-mailed event details. If you really really want to go and are on the waitlist, send me an e-mail and I'll see what we can do.

NameCompany/Organization

 

Intro

To start a new initiative and provide examples for developers, we're going to start putting out some Jive integrations that we believe provide some benefit to our customers and you—the developers. These are open source projects under the apache 2.0 license and free to be used as they stand or as a baseline for your integrations. We'll be keeping these projects in the jiveapps/addons at master · jivesoftware/jiveapps · GitHub repo.

 

So what is LiveStream? It's a event video platform that's used by companies both big and small to provide event coverage. So a natural use case for it is a company event (like JiveWorld17!) to provide coverage to anyone who can't be at the event in person; or even for company-wide meetings.

 


 

GitHub Repos:


 

Data Flow:

This project integrates Livestream API's to bring a LiveStream live feed feed into Jive. It has the following core functionalities and data flow:

 

 

Custom View Tile (Middlewared)

Screen Shot 2016-09-26 at 6.18.25 PM2.png

Screen Shot 2016-09-26 at 5.17.53 PM.png

  • Middleware Fetches LiveStream Upcoming Events API and pushes the array of events to Tile Config
    • Can be set for other endpoints—was developed and tested on the Private Events endpoint
  • Tile Configuration window displays event to be selected to be displayed on the view window
  • Tile Configuration window has optional field to place the Simple Stream Integration's (SSI) listener URL
  • Middleware reads the saved configuration and if any event has their "isLive" parameter set to true AND a SSI listener URL was entered in the tile's configuration, it generates an activity with the SSI
  • Comments are pulled in from the activity that is related to the event being displayed in the tile and displayed
    • Comment text has link back to the comment itself in the external object
      • The user can see the all comments and continue collaboration and participate in the communication
    • If there is no activity generated, no comments are displayed

 


 

Simple Stream Integration w/ App (non-Middleware)

Screen Shot 2016-09-26 at 6.17.39 PM.png

Screen Shot 2016-09-26 at 6.17.17 PM.png

 

  • The middleware from the Custom View Tile generates activities for each event that goes live
  • The activity has an associated external object
    • The external object has an embedded app
    • External object video is larger and has full collaborative Jive experience (like, comment, share, mark for outcome)
  • App shows the live video that's associated with the video event that generated the activity

 


 

Extra

  • There is an extra file for getting an authentication token at your service's /tokens endpoint by performing a GET request—should you build something that needs to do more with LiveStream's API's

 


 

Considerations

  • This was written using mostly ES6 JavaScript, so it will only work on newer browsers
  • LiveStream currently doesn't offer webhook's so the custom middleware service is a necessity
  • Jive's Node.js SDK's jive.util.base64Encode() method does not work for API key/string only authentication
  • There are two archive files to install into Jive! This is because one service requires middleware and the other doesn't
  • I would have really liked to split up my services.js into three separate classes—LiveStream API's, Custom View Tile data pusher, SSI Activity Generator—if you have the free time or desire to make a pull request, I'll review and commit.

 


 

Initial Setup Requirements

Screen Shot 2016-09-26 at 9.58.50 PM.png

  1. Have a LiveStream account and some videos set to go live in the future
  2. In /jiveclientconfiguration.json, you'll see an object called "livestreamCredentials"—fill in all the fields
    • Look here Livestream Developers | API Dashboard for Client ID & API Key (dashed lines in the picture above)
    • Account ID can be retrieved via API or from your Livestream Video dashboard in the URL of your browser
  3. Update your middleware service URL in /tiles/LiveStreamTile/public/javascripts/configuration.js
  4. In terminal, run npm update
  5. In terminal, run node app.js to start your service and generate a new .zip for your Custom View Tile
  6. Install the zip for both the Tile and the Simple Stream Integration into your Jive Instance
  7. Install and setup the SSI into your page first and copy the URL
  8. Install the tile to your page and paste the URL and select your upcoming public event
  9. Use the LiveStream desktop app and go live in your event and see your video feed in the tile and activity get generated

So we just concluded the Jive Developer Days series' first remote/virtual event based on a European audience and here's what happened!

 

We had a lot of people register and fill out the seats from small to large companies and organizations (Jive Developer Days 2016: European Edition — Register Today!). There was so much demand that we actually went ahead and extended our original seat limit of 25 to fit the extra 5 on the waitlist. Where the past two other events were in person and that makes developing much easier and we could dedicate several hours to working together without losing interest or feeling TOO overwhelmed, we thought we should change it for the remote event to two days and half the time per day — I think that was still a good call. But overall, I think everyone learned a lot, I enjoyed some of the laughs, saw some great questions and engagement from the attendees.

 

tl;dr

  • Presented the Jive Developer Platform story
  • Made the example App Reference app using jive-sdk create app
  • Made a RSS News Feed Custom View Tile (see attachment)
  • Made a Simple Stream Integration with the App Reference App embedded (see attachment)

 

Screen Shot 2016-09-16 at 11.08.39 AM.png

 

First Day

We started the first day by introducing the high level Jive Developer Story—the Add-on Framework, Mobile solutions, External Storage Framework, and the Jive Analytics Platform. What we wanted out of this is to expose both new and seasoned Jive Developers to the full gamut of platform offerings. Since awareness is sometimes the biggest obstacle, we hoped to open the doors to all the possibilities for developers to fully realize the Jive as a organization's Hub story.

 

Following after the overview, Ryan Rutan used the Jive Node.JS SDK to create the Introducing the Jive Developer App Reference "App" on the Developer Sandbox example app, and get an understanding of app action contributions to filter where an app can go and also see the context (where, the person viewing, and content being viewed) that is available for use to enrich the experience of the community.

 

Second Day

Screen Shot 2016-09-16 at 1.37.47 PM.png

The second day took the foundations we laid down the first day and expanded on them. We started off by creating a Custom View Tile that makes a OSAPI HTTP Get request to the sample Yahoo Query Language RSS feed URL and displays the 10 most recent news articles in the tile with links to the source. We also showed how to speed up our integration development times with Ngrok.

 

Screen Shot 2016-09-16 at 1.34.33 PM.png

After that, we created a basic Simple Stream Integration from our Simple Stream Integration Builder and demonstrated a simulated Activity being generated within Jive in minutes of starting the developing. After that, we embedded the App from the session prior into the generated activity's external object and also passed in all the request data that created the Simple Stream Activity that can be used to make a richer collaborative experience. There were some hiccups that we uncovered and are going to patch our SDK shortly (this is part of why we're doing these events—make sure everything is solid).

 

What's Next?

More developer days virtual events coming soon! We are taking feedback from this pilot event and we're going to provide better ways for people to follow along and try the material out in better detail at a later time.

Hack_Tour_Bus_Europe.png

 

When we were first kicking around the idea of Developer Days, we got a tremendous response and inquiry from the folks across the pond. We actually had no idea that would be the case, so we were trying to figure out how to take this content over there, and before we did that, we wanted to make sure we had a quality that was worthy of your requests. After our NYC and Bay Area, CA, USA events, we think we've got it. Thanks to the digital age, we've come with a solution and format that Ryan Rutan and I believe will work great.

 

This two day, two hours per day event will be webcast via GoToMeeting and is geared towards our European counterparts where we'll be covering our Jive middleware-less stories and best practices in a lecture + hands-on hack session where we'll create integrations together that solve real business use cases, and answer your questions along the way.

 

How To Register

  1. Make sure your e-mail address in your profile is up-to-date and correct
  2. Please comment below with your firstName + " " + lastName + ", " + company

(ha ha, get it? )

 

If your organization's internal policies do not allow you to post on public forums, please feel free to message/e-mail me or Ryan Rutan and we'll take care of it.

  1. You must register yourself, and yourself only. You cannot register in someone's behalf. It not only keeps it fair for everyone, but also ensure we have a way to communicate and everyone has access to all the tools we'll be using (e.g. Jive Sandbox).
  2. Since we want to be able to reach as many organizations as possible and seating is limited, we are capping registration to 3 per organization and anyone beyond that will be placed on the waitlist. After registration closes, if there's space available, they'll be moved to be a registrant.

 

Event Details

  • 13th September, 2016 — 1p.m.-3p.m. GMT
  • 15th September, 2016 — 1p.m.-3p.m. GMT
  • via GoToMeeting — URL will be sent after registration closes.
  • Attendee limit of 25

Registration closes 9th September, 2016 @ 7p.m. GMT

 

Prerequisites

Everyone must have all the required software installed prior to joining the session. I will be posting up a document detailing everything with instructional video to make it as easy for everyone as possible & all registrants will get a reminder link.

 

What You'll Gain by Attending:

 

Registered

NameCompany/Organization
neha.uniyalAccenture
Shipra SinghAccenture
Sowjanya GonuguntlaAccenture
danilANROM
davidhickey13Citi
mikeculshawCiti
Powell TruslerCiti
Swaran SinghCiti
rymerchoElement14
Dudley NelsonElement14
Matt CollingeElement14
Georgiana Adelina PopaEuropean Commission
Gopi Shiva Krishna GEuropean Commission
AxxxxxGoldman Sachs
GxxxxxxGoldman Sachs
Jiban PatroInfosys
creischlMetafinanz
Oliver ReeceMillward Brown
Stephan LeuendorffPokeshot///SMZ
Sven KroschwaldPokeshot///SMZ
Gareth JamesPwC
Matt DickensPwC
NelsonRobert Anthony DassScope
Lars KreiszT-Systems Multimedia Solutions GmbH
Mirko SwillusT-Systems Multimedia Solutions GmbH
YOU!

 

Waitlist

You will be placed on the waitlist if we reach capacity of 25, or if more than 3 individuals are registered with your company. If there is space after registration closes, your status will change to registered and you'll be e-mailed event details. If you really really want to go and are on the waitlist, send me an e-mail and I'll see what we can do.

NameCompany/Organization
pierce.currid@citi.comCiti
Akhila ShivakumarInfosys
arpan bansalPwC
Madhusudhanan VaradarajanCognizant
Gareth FerrierSurevine

KICKSTARTER FUNDED! We are set to have this event on July 13th at Plex Systems Northern California Offices!

Hack_Tour_Bus_bay_area.png

 

After having a great turn out at our first stop in NYC at Social Edge Consulting , we're ready to take some votes on our next stop — The Bay Area at Plex Systems' Northern California Office! We are limited in capacity to 22 attendees, so we're going to put a limit of 3 individuals per organization/company for now. This is a meetup/workshop that is geared more towards beginning development in Jive and to try out the newer add-on framework that's available in Jive 8 & Cloud—as such, priority may be given to individuals who fit this criteria. Please put your name and organization if you can commit to being at the event and joining us for the installfest.

 

BTW, if you haven't already checked out this blog that Social Edge put out of the last event, be sure to have a look for what to expect: NYC Hackathon Fun - Now with Pictures!

 

 

Event Details:

When: July 13th, 2016 — From 1pm, to 5pm

Where: Pleasanton, CA (Full address and entrance details will be given to attendees prior to event)

Cost: $0 thanks to Plex Systems

 

Installfest Details:

What: We go over all the items you need to have installed and make sure you have access to everything you need in order to get to the event and be able to work through your ideas without issues.

Mandatory: YES. Some exceptions may be made.

When: July 12th, 2016

Time: 12:30pm

 

How to Sign-Up:

This is mostly first come first served until we get a total of 22 people, 3 people maximum per organization (until June 30, 2016—if there are spots open, then we'll consider taking more from one single company). Please leave your name and company in the comment below. Each member must comment individually—you cannot add others on your behalf. Registration ends July 8, 2016 12pm PST!

 

Please leave your NAME and COMPANY in the comments below. You must include both.

 

Priority Seating:

Registration for the event is mostly first come, first served. But, since there is a very limited number of seats, we're going to impart some priority seating policies. However, know that we're being truly transparent about how we're doing this.

  • Those who have shown interest from the beginning or have been proactively trying to host/sponsor the event will automatically get priority of attendance.
  • Individuals new to Jive development will also get priority since this is specifically the audience we're gearing the event towards, doesn't mean existing developers can't go, just throwing this out there as a possible factor.
  • Developers. This event is welcome to business XXXXXXX individuals with some coding experience as well, but priority is given to Developers as it is a developer centric event.

 

If I haven't added you to the registration list yet, it's because I'm waiting for those priority individuals/organizations to respond with a yes/no first.

 

What You'll Gain by Attending:

 

Our Sponsor:

This event is made possible because of the time and dedication that Plex Systems and mack_torres has had to their Jive instance and the overall Jive Community. They are graciously providing the location, snacks, drinks, and the all important WiFi for this event.

 

Registered

AttendeeOrganization
mack_torresPlex Systems
ashleywolfYahoo!
honishYahoo!
anishapYahoo!
tzuniYahoo!
sumeet812guptaCisco
Reena DsouzaCisco
siguptaHitachi Data Systems
Shawn WilsonIntuit
Dishant MehtaTavant Technologies
mkongerSunrun Inc.
Keith ShawQualys, Inc.
susan.leeFireEye
nagendra1891JCS Consulting
You!

 

Waitlist

Attendee

Organization

 

 

Please leave your NAME and COMPANY in the comments below to sign up. You must include both. Registration will end July 8th, 2016.

Hack_Tour_Bus_nyc.png

(Awesome photoshop skills)

 

 

Well, I'm super excited to announce that we've got our first event for Jive Developer Days and it's going to start at Big Apple and a big thank you to Social Edge Consulting for sponsoring! We are limited in capacity to 14 attendees, so we're going to put a limit of 2 individuals per organization/company for now. This is a meetup/workshop that is geared more towards beginning development in Jive and to try out the newer add-on framework that's available in Jive 8 & Cloud—as such, priority may be given to individuals who fit this criteria. Please put your name and organization if you can 100% definitely commit to being at the event and joining us for one of the install fest's.

 

Event Details:

When: June 8th, 2016 — From 1pm, to 5pm

Where: Madison & 28th, NY, NY (Full address will be given to attendees prior to event)

Cost: $0 thanks to Social Edge

 

Installfest Details:

What: We go over all the items you need to have installed and make sure you have access to everything you need in order to get to the event and be able to work through your ideas without issues.

Mandatory: YES. Some exceptions may be made.

When: June 7th, 2016

Time: TBD

 

How to Sign-Up:

This is mostly first come first served until we get a total of 14 people. 2 people maximum per organization (until May 24, 2016—if there are spots open, then we'll consider taking more from one single company). Please leave your name and company in the comment below. Each member must comment individually—you cannot add others on your behalf. Registration ends June 1, 2016 12pm PST!

 

Please leave your NAME and COMPANY in the comments below. You must include both.

 

Priority Seating:

Registration for the event is mostly first come, first served. But, since there is a very limited number of seats, we're going to impart some priority seating policies. However, know that we're being truly transparent about how we're doing this.

  • Those who have shown interest from the beginning or have been proactively trying to host/sponsor the event will automatically get priority of attendance.
  • Individuals new to Jive development will also get priority since this is specifically the audience we're gearing the event towards, doesn't mean existing developers can't go, just throwing this out there as a possible factor.
  • Developers. This event is welcome to business XXXXXXX individuals with some coding experience as well, but priority is given to Developers as it is a developer centric event.

If I haven't added you to the registration list yet, it's because I'm waiting for those priority individuals/organizations listed above to respond with a yes/no first.

 

What You'll Gain by Attending:

 

Our Sponsor:

This event couldn't be possible without Social Edge Consulting finding the space and providing snacks/beverages for attendees. Social Edge Consulting is an implementation partner and reseller of Jive, and our proud sponsor for the first Jive Developer Days event—a big thank you for making this possible.

 

 

Registered

Attendee
Organization
John ReynoldsSocial Edge Consulting
Robert HansonSocial Edge Consulting
Sergia DupouxAmerican Student Assistance
Ibrahim IbrahimAmerican Student Assistance

Andy Schedler

New York Life Insurance
Nate MillerJudge Group
Ari HalbkramChubb Insurance
Hazem El Mahmoudi
Faurecia
Munish Chopra
NBCU
Sandeep ShanuCapgemini
Lea ReznikKellton Tech

 

 

Waitlist

AttendeeOrganization

Please leave your NAME and COMPANY in the comments below to sign up. You must include both. Registration will end June 1st, 2016.

The Developer Days are Coming!

 

You guys have been asking for it, and we've listened! Taking your feedback from JiveWorld16, we're going take our hackathon materials on the road in a 4 hour workshop + hack day event to a few major cities around the nation. So be sure to bookmark this page and stay up to date on events! Below are some answers to questions you might have until we do our official announcement.

 

Official announcements with final details coming soon!

 

What is it?

It's a hour-long workshop for creating middleware-less add-ons for Jive, then a ~4 hour hack sessions where you work together in a team on an idea YOU come up with, based on given criteria or use some of the pre-defined examples.

 

Why are you doing it?

Because an overwhelming number of Developers asked, and we thought it was a great idea, and we love great ideas just as much as we love watching people come up with really cool solutions to real world problems & use-cases using Jive. At the end of the day, we want you to not only know how powerful Jive is, we want you to know how to harness the power yourselves.

 

Who is going to be there?

If you're reading this, then hopefully YOU! We want every developer to go to this very developer-centric event to get trained and learn more in depth about how you can do more for your community with hands-on coverage of middleware-less solutions. Both myself and Ryan Rutan will be at each of these events to help steer you in the right path and show best practices

 

How much is it going to cost me to attend an event?

All you need to bring is curiosity. The events are free, you'll just need to register (to be announced, TBA).

 

When and where are the events?

Good question! We're working all of that out, but until we do, we'd love to hear in the comments below of where you'd like us to go and how may people from your team you think would be interested.

Ok, so this year's JiveWorld Developer Conference is really going to be like nothing you've experienced before! We've got an amazing theme this year that Ryan Rutan posted up some details in Announcing a Tri-Hackathon at JiveWorld16 Developer Conference w/Limited Edition T-Shirt. Since it's literally right around the corner, I wanted to tease some of the great prizes you can win this year from Jive and this year's hackathon sponsors—as well as some things that can really get you a head start!

 

 



JC_PlaceIcon_Developer_alt.png

You can win up to $200 in gift cards from Jive for finishing challenges, developing something awesome, playing some video games, and testing your knowledge of some hacker trivia!

 

Get Ahead on Jive Add-on's, API's, Analytics

 

 

 


 

 

 

builtio_flow_logo_1024@2X.png

Complete the Sponsored Challenges from Built.io and win an Amazon Echo or other great prizes!

 

Get Ahead on Built.io Flow

 

 

 


 

 

Pebble_logo.png

Build a Pebble WatchApp or WatchFace that integrates Pebble and Jive to win a Pebble Time Steel (multiple colors to choose from)!

 

Get Ahead on Pebble

Introduction

So for the past several years, I've tested and/or owned almost every type of smartwatch there is on the market—from the Nike Fuel Band, Fitbits', Garmins', Apple Watch, Samsung Gears', Microsoft Bands'—and none of them have captured by heart and wrist like the Pebble watches have. Where most watches are too complicated, uncomfortable, and unattractive, the Pebble has nailed it since Day 1 with the Pebble Classic. Now, I'll admit that I'm an uber techie who loves having the latest toys, the smartwatch has never been my thing. At this moment I'm wearing a watch from 1987; what I wear most days. So it's really a testament that I'm advocating and promoting a smartwatch—especially the Pebble Time Round . I'm not the only one that's saying it, check out Gizmodo's article on their take on The Best Smartwatch For Every Wrist.

 


 

Background

So what did I build here and why?

Well, Jive provides Jive REST API v3.14 → Action entity  to be sent to a user that they can respond to and take "action" on. There are somewhere around 40 verbs that Jive has for the /actions endpoint, and one of them is "http://activitystrea.ms/schema/1.0/post" created by this: Jive REST API v3.14 → Activity Creation #Sending Actions. The smart watch is the perfect low commitment method to increase awareness and engagement from your community's users. In today's workplace and in the future, I see smartwatches more commonplace and Pebble's no muss, no fuss, clear as day UI is a great tool for enterprise.

 

Also, if you're always building enterprise software, it's kind of fun to do something different .

 

How can my organization use this?

  • From a Jive-X and marketing perspective, we can use a Marketo campaign that gets triggered and sends a action to a user and they can effectively move forward in a funnel. Check out this great blog by timesync on a great and easy way to set this up: Built.io Flow: Caffeinate Complex Workflows (2 of 3)
  • From a workflow and security perspective, if a user requests access to a private group, the group admin can either approve or reject that request right from their wrist without ever needing to pull out their phone or laptop.
  • For HR, company RSVP's to events to get a proper headcount is fast and easy.

 


 

The Repo

https://github.com/jivesoftware/jive-pebble-actions

 


 

Files

FilenameDescription
/appinfo.jsonMeta properties for app. Also includes resource identifiers for images and our config appKey enums. All params can be set in your Cloud Pebble's project settings.
/src/app.jsOur main execution script. Pebble by default looks for and runs this file on launch.
/src/base64.jsBase64 encode/decode library from http://www.webtoolkit.info/javascript-base64.html.
/src/captionImages.jsReally a JSON file that assigns Jive Action caption values to images and buttons.
/src/clay.jsThe Clay library -- for offline config pages on Pebble and provides some minimal jQuery functions
/src/config.jsConfiguration for Clay. We create the form fields and assign the corresponding appKey (set in the appinfo.json) for storage on the watch. A JSON file.
/resources/images/*Icons used by the app

 


 

Code Explained

The repo contains most of the comments inline, so this an overview explanation with links to documentation. This is written entirely in Pebble.js though it can be done in a C and JS combo but for ease of understanding, we're using Pebble.js only and going to refer you to the Cloud Pebble IDE .

 


 

Authorization

Screen Shot 2016-03-01 at 10.11.31 AM.pngScreen Shot 2016-03-01 at 8.59.56 AM.png

Since the JIve /actions/ endpoint is dependent on the user, we only need Basic Auth. Pebble typically requires an externally hosted page for configuration of an app, however we used a new API just released called pebble/clay: Pebble Config Framework for an offline config. This lets us avoid having to set up a new service to then store the credentials into the watch.

 

Since Basic Auth requests need to be Base64 encoded and Pebble.js doesn't have that as a built-in library, I imported one from: http://www.webtoolkit.info/javascript-base64.html

 


 

GET Jive /actions

Screen Shot 2016-03-01 at 8.46.00 AM.png

The user is originally displayed a pre-defined Window of type Card. That gives feedback to the user of the Pebble app requesting the endpoint from Jive. On anything but success the body field of the Card object is replaced with a error dialog. On success the data is then sorted for Jive Action verbs that we wish to display and filter out those that we don't. The array contains the title and subtitle we want to display in each menu item of the Menu object.

 


 

Displaying Actions

Screen Shot 2016-03-01 at 8.46.15 AM.png

The sorted array of action items are displayed in a Menu window. The Menu window has specific properties that handles button presses, the UP and DOWN buttons for scrolling and the SELECT button to select the item. When a Menu Item  is selected, the "menu.on" handler's callback displays a new Card object that has the related information we want to show the user, and the icons that corresponds to our pre-defined list of captions for window's actionDef property.

Since the Pebble only has 3 buttons, you should not create actions with more than 3 options.

 


 

Responding to Action

Screen Shot 2016-03-01 at 9.00.37 AM.png

With the iconography displayed, when a user clicks an associated button, the sendAction() function is called and we make a POST request to the /actions/<action id>/actions/<captions> endpoint with the caption associated with the button. On success or error we display a UI card to notify the user. Success retrieves an updated actions array from Jive.

Pay attention to the cards in memory and removing the associated cards. When the user clicks the BACK button, he/she will be taken to the Window layer just before the current layer.

 


 

What's next?

  • Stay tuned for a special post about JiveWorld16 and Pebble!
  • Add a case for health actions and sending Pebble Health data back to Jive
  • Rewrite the app in C/Pebble.js to be compatible with the Pebble Time Round

This fall, we'd released a new update to the Jive Cloud platform (2015.3) and along with that comes a couple of great new features and updates to our REST API. We also brought a couple of new posts and tools to make your integrations richer, built easier and faster than ever before. We did a lot of tidying up with this release and squashed quite a few bugs while we're working hard on the next major release that's sure to completely WOW you—release 2016.1.

 

REST API Improvements

Jive REST API v3.14 → EventCalendarCount entity - Get the event calendar of a place. (added)

Jive REST API v3.14 → EventCategoryType entity - Create, Destroy, Get, Update event category types.  (added)

Jive REST API v3.14 → EventInvite service - Create, Delete, Get, Update invite(s) for an event. (added)

Jive REST API v3.14 → Event service - Create, Cancel, Update an event. (added)

Jive REST API v3.14 → Oembed service - Retrieve an embed code for a URL that is used by the Video Object creation to validate an embed-type video. (added)

Jive REST API v3.14 → Person entity - Delete and Set a users avatar. Update the visibility of a field in a user's profile.(added)

Jive REST API v3.14 → Rsvp service - Get RSVP's and invitees/attendees as well as RSVP to an event. (added)

Jive REST API v3.14 → Video service - Get the download options for a video (added)

Jive REST API v3.14 → ProfileFieldPrivacy entity - Profile field privacy now returns a string for type (updated)

 

 

New Documentation & Posts

One Stop for the Jive-n/Jive-x 2016.1 Cloud Release <-- Highly recommended you take a look.

UX Widgets

Content Manager App - The idea into reality

Built.io Flow: Caffeinate Complex Workflows (1 of 3)

Built.io Flow: Caffeinate Complex Workflows (2 of 3)

 

Stay tuned for more news and updates on our next release and keep yourself checking the Jive Developer community often on new guides, documents, blogs, and great support!

 

 

Reminder

Coming Up: JiveWorld16 Developer Conference

Las Vegas - Aria Resort & Casino

March 14-16, 2016

 

 

We're very excited to be heading to Las Vegas for JiveWorld16! This year, the experience will be very unique with games, prizes, and of course great sessions to keep you ahead in all things Jive. Be sure to review our survival guide well before you go to maximize your experience: A Hacker's Guide to Prepare for the JiveWorld16 Developer Conference

 

Filter Blog