11 Replies Latest reply on Jul 15, 2016 6:28 AM by mike.nistler.tr

    How to get more information about add-on "View Unavailable" message?

    mike.nistler.tr

      I'm attempting to build a custom tile in the Jive-hosted testing environment for my company's intranet (https://thomsonreuters-test.jiveon.com).  The tile installed just fine, but once loaded simply shows the message "View Unavailable - This view should be showing activity or information provided by an add-on, but it was unavailable. Your site administrator may be able to help".

       

      How can I get more information about the nature of the problem?

       

      I think I may be able to get some clues about the nature of the problem from the Jive logs.  It looks like there may be two ways I could look at the logs:

      1. Get access to the server that the Jive test environment is running on and look at the log files directly

      Or

      2. Get access to the “Admin Console” and use the Log Viewer to look at the logs

       

      Since this error occurring in the "JiveOn"-hosted environment, I think we'll need assistance from Jive to get enough information to troubleshoot.  Are there things that can be done to get more info about the nature of this problem?

       

      (the code I'm running is this sample code -> Getting Started > Creating a List Tile with the Jive Node SDK plus a configured connection to a Heroku Node server https://jivesamplelist.herokuapp.com/sampletile-list/configure  )

        • Re: How to get more information about add-on "View Unavailable" message?

          You should see a request coming in to your heroku app and the status of that request. If it's a 4xx or 5xx, then it's something on the backend that isn't configured correctly. If you make a jive-hosted (no middleware), then the troubleshooting area would be to see what's written in your app.xml (for apps) or definition.json files.

            • Re: How to get more information about add-on "View Unavailable" message?
              mike.nistler.tr

              yep, Rashed Talukder, I should have mentioned this but Heroku's responses from status codes in the logs seem totally fine.  Including this one

               

              2016-07-08T21:24:05.718105+00:00 heroku[router]: at=info method=POST path="/jive/oauth/register" host=lmshub.herokuapp.com request_id=19eb11c8-a02e-47ba-83d5-a211e66fce2b fwd="204.93.64.4" dyno=web.1 connect=1ms service=18ms status=200 bytes=183

               

              I can certainly look in the definition.json file (which I see is included in the generated "extension.zip" file), but other than eyeballing it looking for anything weird... is there a way to see why Jive's complaining about the "View Unavailable" message?

                • Re: How to get more information about add-on "View Unavailable" message?
                  Ryan Rutan

                  one question, have you guys tried using Ngrok: Warp Speed for Your Integration Iterations (older, but still relevant: Local Jive Add-On Development in the Cloud using grok).  It is a great way to vet these scenarios before you roll this out to an environment like Heroku.

                   

                  That being said, you Heroku end-point looks to be fine....as I can ping it from here and see the UI.  This means that the tile should not have any problem resolving, which means that you need to check your definition.json that is generated from your project.

                   

                  See: /extension_src/definition.json 

                   

                  Could you share the contents in this thread?  Also, if it begins with %serviceURL%, then please include the value of serviceURL from /extension_src/meta.json

                    • Re: How to get more information about add-on "View Unavailable" message?
                      mike.nistler.tr

                      Ryan Rutan nope haven't tried Ngrok (or even heard of it until now).  Glad to hear that the Heroku endpoint looks fine, it seemed fine to me but hearing that you've tried it to is good.

                       

                      The contents (in extension.zip that's built) of definition.json are:

                      {

                        "integrationUser": {

                        "systemAdmin": false

                        },

                             "tiles": [{

                             "sampleData": {

                                  "title": "sampletile-list tile-list",

                                  "contents": [{

                                  "text": "Initial text from Mike Nistler to be replaced"

                             }],

                             "config": {

                                  "listStyle": "contentList"

                             }

                        },

                        "displayName": "sampletile-list-mgn-definition-displayName",

                        "name": "sampletile-list-mgn-definition-name",

                        "description": "sampletile-list-mgn-definition-description",

                        "style": "LIST",

                        "icons": {

                        "16": "https://developer.jivesoftware.com/DeveloperAssets/images/icons/jivedev-xsmall.png",

                        "48": "https://developer.jivesoftware.com/DeveloperAssets/images/icons/jivedev-small.png",

                        "128": "https://developer.jivesoftware.com/DeveloperAssets/images/icons/jivedev-med.png"

                        },

                        "action": "/public/tiles/sampletile-list/action",

                        "config": "/public/tiles/sampletile-list-mgn-definition-name/configure",

                        "unregister": "https://lmshub.herokuapp.com/unregister",

                        "register": "https://lmshub.herokuapp.com/registration"

                        }]

                      }

                      and extension_src/meta.json is

                      {

                        "package_version": "1.0",

                        "id": "b175822b-bd94-4b7d-b6c8-98051af31d9b",

                        "type": "client-app",

                        "name": "sampletile-list-mgnjive-client-config-root",

                        "description": "Description for sampletile-list-mgn jive-client-config-root",

                        "minimum_version": "0080300000",

                        "icon_16": "extension-16.png",

                        "icon_48": "extension-48.png",

                        "icon_128": "extension-128.png",

                        "released_on": "2016-05-24T18:49:46.164Z",

                        "register_url": "%serviceURL%/jive/oauth/register",

                        "unregister_url": "%serviceURL%/jive/oauth/unregister",

                        "service_url": "https://lmshub.herokuapp.com",

                        "redirect_url": "%serviceURL%",

                        "releasedOn": "2016-05-24T18:49:46.164Z"

                      }

                        • Re: How to get more information about add-on "View Unavailable" message?
                          Ryan Rutan

                          I do not see a "displayWidth" attribute in your definition.json.  It should be something like "displayWidth" : "ALL".  That might be the issue, but it should have been there from the get go.

                          See: Tiles and Tile Styles

                           

                          Other values include, "WIDE" and "NARROW"

                            • Re: How to get more information about add-on "View Unavailable" message?
                              mike.nistler.tr

                              ok, I added "displayWidth" : "ALL" to /tiles/[name]/definition.json.  Built, uninstalled, uploaded new version, deleted old tile, installed new tile, same error message.

                               

                              Is there a way I can *definitively* see why the "View Unavailable" message is coming up?  I'd imagine the root cause would be logged and appear in some logging system somewhere?

                                • Re: How to get more information about add-on "View Unavailable" message?

                                  Mike,

                                  I've been trying to figure this one out, and it would go a long way if you could provide a screen shot to fill some gaps in my mind of the tile & error message. Also, is your heroku app running and pushing data to Jive? I see that it handles the tile registration, but the backend service should also push data shortly after that.

                                      • Re: How to get more information about add-on "View Unavailable" message?

                                        This helps a lot. So the issue we have here is that your List Tile should be making a GET request to heroku to the /configure/ endpoint, but the request you posted from the logs is to the /register endpoint for your service. Is there anything in the logs that goes to /configure? Does that host+path of the request match what's in your definition.json? My guess right now is that you might need to remove the /public/tiles/ from your config path in the definition.json.

                                          • Re: How to get more information about add-on "View Unavailable" message?
                                            mike.nistler.tr

                                            When I add the tile to the group page, there is no activity whatsoever in the Heroku logs (which seems a bit odd).

                                             

                                            When installing the Add-On I see this in the logs:

                                            2016-07-15T13:26:15.425354+00:00 heroku[web.1]: Starting process with command `node app.js`

                                            2016-07-15T13:26:17.954029+00:00 app[web.1]: [2016-07-15 13:26:17.947] [WARN] jive-sdk - ******************************

                                            2016-07-15T13:26:17.955559+00:00 app[web.1]: [2016-07-15 13:26:17.954] [WARN] jive-sdk - File persistence is configured.

                                             

                                            2016-07-15T13:26:17.956128+00:00 app[web.1]: [2016-07-15 13:26:17.956] [WARN] jive-sdk - not be used for production!

                                            2016-07-15T13:26:17.956237+00:00 app[web.1]: [2016-07-15 13:26:17.956] [WARN] jive-sdk - ******************************

                                            2016-07-15T13:26:17.981846+00:00 app[web.1]: [2016-07-15 13:26:17.979] [INFO] jive-sdk - Updating definition 'sampletile

                                            -list-mgn-definition-name'

                                            2016-07-15T13:26:18.021881+00:00 app[web.1]: [2016-07-15 13:26:18.021] [INFO] jive-sdk - Running bootstrap.

                                            2016-07-15T13:26:17.956015+00:00 app[web.1]: [2016-07-15 13:26:17.955] [WARN] jive-sdk - Please note that this should

                                            2016-07-15T13:26:18.027444+00:00 app[web.1]: [2016-07-15 13:26:18.027] [WARN] jive-sdk - Starting service in HTTP mode

                                            2016-07-15T13:26:18.033443+00:00 app[web.1]: [2016-07-15 13:26:18.033] [INFO] jive-sdk - Http node setup

                                            2016-07-15T13:26:18.432027+00:00 app[web.1]: [2016-07-15 13:26:18.431] [INFO] jive-sdk - 195129 total bytes written to e

                                            xtension archive  'extension.zip'

                                            2016-07-15T13:26:18.437886+00:00 app[web.1]: [2016-07-15 13:26:18.437] [INFO] jive-sdk - Bootstrap complete.

                                            2016-07-15T13:26:18.438303+00:00 app[web.1]: [2016-07-15 13:26:18.438] [INFO] jive-sdk - Started service in  'self-conta

                                            ined' 'mode'

                                            2016-07-15T13:26:18.441276+00:00 app[web.1]: [2016-07-15 13:26:18.441] [INFO] jive-sdk - Service started in production m

                                            ode

                                            2016-07-15T13:26:18.438091+00:00 app[web.1]: [2016-07-15 13:26:18.437] [INFO] jive-sdk - Jive SDK version 0.1.218

                                            2016-07-15T13:26:18.450024+00:00 app[web.1]: Express server listening on :::32695

                                            2016-07-15T13:26:19.045195+00:00 heroku[web.1]: State changed from starting to up

                                            2016-07-15T13:26:20.144681+00:00 app[web.1]: [2016-07-15 13:26:20.144] [WARN] jive-sdk - Warning - development mode is o

                                            n. Accepting extension registration request regardless of source!

                                            2016-07-15T13:26:20.157491+00:00 heroku[router]: at=info method=POST path="/jive/oauth/register" host=lmshub.herokuapp.c

                                            om request_id=33f3355c-07b4-45f1-a61d-fcd801ee7cb4 fwd="204.93.64.4" dyno=web.1 connect=0ms service=32ms status=200 byte

                                            s=183

                                        • Re: How to get more information about add-on "View Unavailable" message?
                                          mike.nistler.tr

                                          as to your question about Heroku - I'm not sure what you're asking exactly.  I just used the sample code (with a few string modifications with my initials "mgn" mostly, to ideally help me track down errors) so I haven't even attempted to modify what the backend service is doing.

                                           

                                          As a reference, I put a completely-unmodified-hosted-by-Heroku instance of the sample code on the Sandbox with the exact same "View Unavailable" error message: https://sandbox.jiveon.com/groups/mgn-group