Tuesday, 28 April 2015

Office365: The new Video Portal

As the Office365 product team is keep updating the platform, more and more exciting feature have been introduced to Office365 tenants enables a continuous and rapid development of the platform. One of the newest addition in the latest rollout is the video portal. The video portal allowing the users to share video contents in a channel based structure.

The video portal consists of a hub which you can found @ https://####.sharepoint.com/portals/hub by replacing #### with your office365 subscription subdomain name. What if you can't find the video portal site collection in your tenant here is the steps you need to make to ensure that you will got the latest updates:
  1. Navigate to the Office365 admin center
  2. Under the Service settings click on updates
  3. Make sure that First release switch is "on"
  4. You can check whether the feature is activated or not by clicking on the app launcher you should see a video link there, in My case I couldn't find video link in the app launcher so I used the video RESTful discover API to get the status of the video portal. Simply navigate to the url 

  5. https://####.sharepoint.com/_api/VideoService.Discover
    and check the value of the boolean field (isVideoPortalEnabled)
  6. if the value is True that means the video portal is ready, so you can navigate to the video hub and start creating channels and upload video contents to these channels

Also you can check office365 settings to ensure that VideoPortal is enabled or not.



By default , the channel allows everyone apart from the external users to upload and view video contents. The channel admin can change that also can add specific people/groups to co-admin the channel.

if we dig deeper,the video channel is in fact a SharePoint site which contains one video asset library and channel setting list. The video library will have a new content type called "Cloud Video" which will be encoded to be streamed via Azure media service.



Despite the fact that , the video portal is an awesome feature but somehow it's incomplete as the hub interface does not allow users to tag the video content. The alternative way of tagging the video is by navigating to the video channel site and open the video asset library and edit the item using the OTB list item edit properties interface.




Sunday, 26 April 2015

Office Store: Apps for SharePoint in numb3r5

More than two years ago, Microsoft launched the office store preview. Back then, I remember how excited I was as the store has much potential or it seemed so.

However, when I decided to make a quick review of the store in order to get some insights from the analysis, honestly I was somehow shocked. In December 2012 when I created and published my first SharePoint 2013 app, the number of the applications was around 60 apps. Right now and despite of the enormous support Microsoft gives to its cloud offering and the constant stress that Office 365 is the future. The number of the total apps for SharePoint in the Office Store is 836 apps only.
Which is basically a growth of 7 apps per week  which is a very low number compared to the Apple app store (almost 5K apps per week).

Why the office store is not growing as expected? Most importantly, does the store serving its purpose ? Before answering these questions, I must admit that the app model is an excellent idea. However, it needs more time to mature. Also it’s crucial that the product team support more APIs to serve the continuous growing need of the App providers.

Instead of answering the above questions, I will throw some facts and numbers which will somehow will construct an indirect answer to above questions.

All the numbers and stats below are retrieved as per the available information published on the Office Store at the moment of writing this article. I will focus mainly on "Apps for SharePoint" as it’s the biggest portion of the store right now with total of 836 apps which is almost 63.6% of the Office Store capacity.

The number of the app providers is 378 providers. This means that the store has an average of 2.2 Apps per App provider. The interesting stat is more than 55% of the providers have only single app published. Why the last state is interesting? In my humble opinion, this either shows the lack of dedication from the providers towards the platform or simply the providers realize that building a SharePoint App and publish it to the Office Store is a low RO
I exercise.
The majority of the apps within the Office Store apps for SharePoint are free apps, the below pie chart describes the number of free apps vs. paid.



 It’s normal to see Productivity, communication and Content Management in the top 5 categories but finding Site Design ranked as fourth was a little surprising for me, as Microsoft is pushing the customization to be outside of the Office365 platform and recommending branding customization to be minimal.
Finally, if the office store didn’t get the needed attention from Microsoft, this might put an end to the app model in favor of the new Office365 APIs.
The above article is just my own interpretation for the numbers gathered at the time of writing this article. 

Tuesday, 7 April 2015

SharePoint App: Simple Photo Gallery AngularJS

Today, I will explain in details how to create a SharePoint hosted app using AngularJS Framework, The app itself is a very simple app it contains the following:

  1. Image Library to store your images
  2. App Part loads the Images within the library and displays thumbnails of the images, upon user click the full image will appear in a lightbox.
First step is as usual creating a new Visual Studio Solution and create new Project , select Apps under Office/SharePoint then select App for SharePoint.


 Name your App and choose its location.

Secondly , you need to select or enter the sharepoint Site you will use to debug the app it can be a developer site or any other site which have the sideloading feature enabled.
to learn how to enable sideloading feature for any site, check this great post by Alexander Vanwynsberghe


Back to our app, let's create a new app part and name it  AlbumViewer.aspx , after the creation of the aspx page, let's make the App Part Angular friendly !


  1. add the AngularJS link


  2. Add the ng-app attribute to HTML tag
  3. Add the ng-controller attribute to our container DIV element
  4. let's add new Javascript file which will act as AngularJS app controller.
  5. The controller will contain three different main functions:
    • GetItemsREST: utilizes List RESTful APIs to get the image library contents.
    • GetApplicationConfig: used to read the application settings which the user can edit to control the number of images appears in the app part.
    • AngularJS app initialization.







  6.  Now we need to add reference to the controller JavaScript file to the app part.
Now let's try the app , hitting F5 and waiting , the app will load the default.aspx using it the user can update the item count, by default it's set to 6 items only.

Also in the Default page you will find a link to the PhotoLibrary which is created in the app web to store the user images.

and this is how it looks in action !



You can download complete source code from this link and the app is already published to the office store 

Happy Share-pointing