Tag Archives: sample

Office.js: Supportspinning is not working with older Outlook 2016 builds Outlook Web Addin


Recently I was working with this ISV who was developing an Outlook Web addin. They use SupportsPinning in Outlook Web addin and noticed that its not working as expected. When I debugged further I noticed that they’re using older Outlook 2016 build. So when I looked at the documentation, I can confirm that the support for pinnable taskpanes is currently available to specific versions of Outlook on Windows. So, “Pinnable task panes are currently available to Office 365 subscribers on Outlook 2016 or later for Windows (build 7668.2000 or later for users in the Current or Office Insider Channels, build 7900.xxxx or later for users in Deferred channels), Outlook 2016 or later for Mac (version 16.13.503 or later), and Outlook Online.”. Please make sure you have the Outlook builds mentioned above or I would recommend you to get the latest one and see it helps you moving forward.

Still if it doesn’t work then I recommend you to check the sample addin that we provided or the sample code that we published in the above said documentation. This sample Command Demo add-in uses the commands model for Outlook add-ins to add buttons to the ribbon.

Hope this helps.

IoT : How to build .NET Core to build applications for IoT?


Deva blogs

Do you know that .NET core to build applications for IoT?

  • .NET Core can be used to build applications for IoT devices and scenarios.

  • IoT applications typically interact with sensors, displays and input devices that require the use of GPIO pins, serial ports or similar hardware. The Raspberry Pi is commonly used for IoT applications.

You need to use at least .NET Core 2.1. .NET Core 3.0 is required for ARM64 devices. Many of these samples use the Raspberry Pi, however, .NET Core can be used for other devices. A Raspberry Pi Starter Pack contains enough electronics to get started on many projects.

.NET Core is supported on Raspberry Pi 2 and 3. Raspberry Pi 3 B+ is recommended, based on the faster CPU. .NET Core is not supported on Raspberry Pi Zero or any of the Raspberry Pi model A devices. .NET Core does is not supported on ARMv6 chips, only ARMv7 and ARMv8. It is not supported on Arduino.

The following samples demonstrate various scenarios:

These samples use the System.Device.Gpio library. It will be supported on Linux and Windows IoT Core. The library is currently in early preview, based on source in dotnet/iot. There are many libraries that are important beyond GPIO, I2C and related fundamental protocols.

Build .NET Core to build application for IoT


Deva blogs

Do you know that .NET core to build applications for IoT?

  • .NET Core can be used to build applications for IoT devices and scenarios.

  • IoT applications typically interact with sensors, displays and input devices that require the use of GPIO pins, serial ports or similar hardware. The Raspberry Pi is commonly used for IoT applications.

You need to use at least .NET Core 2.1. .NET Core 3.0 is required for ARM64 devices. Many of these samples use the Raspberry Pi, however, .NET Core can be used for other devices. A Raspberry Pi Starter Pack contains enough electronics to get started on many projects.

.NET Core is supported on Raspberry Pi 2 and 3. Raspberry Pi 3 B+ is recommended, based on the faster CPU. .NET Core is not supported on Raspberry Pi Zero or any of the Raspberry Pi model A devices. .NET Core does is not supported on ARMv6 chips, only ARMv7 and ARMv8. It is not supported on Arduino.

The following samples demonstrate various scenarios:

These samples use the System.Device.Gpio library. It will be supported on Linux and Windows IoT Core. The library is currently in early preview, based on source in dotnet/iot. There are many libraries that are important beyond GPIO, I2C and related fundamental protocols.

Machine Learning Developer: Build, test, deploy, consume Azure Machine Learning Web Services


Machine Learning web services provide an interface between an application and a Machine Learning workflow scoring model. An external application can use Azure Machine Learning to communicate with a Machine Learning workflow scoring model in real time.

How easy is that?
A call to a Machine Learning web service returns prediction results to an external application. To make a call to a web service, you pass an API key that was created when you deployed the web service. A Machine Learning web service is based on REST, a popular architecture choice for web programming projects.

Types:
Azure Machine Learning has two types of web services:

  • Request-Response Service (RRS): A low latency, highly scalable service that provides an interface to the stateless models created and deployed by using Machine Learning Studio.
  • Batch Execution Service (BES): An asynchronous service that scores a batch for data records.

Here’s a classic example how a RRS will work:

Consuming REST API & Access the Web Service:
There are several ways to consume the REST API and access the web service. For example, you can write an application in C#, R, or Python by using the sample code that’s generated for you when you deployed the web service.

Sample:
The sample code is available on:

  • The Consume page for the web service in the Azure Machine Learning Web Services portal
  • The API Help Page in the web service dashboard in Machine Learning Studio
  • You can also use the sample Microsoft Excel workbook that’s created for you and is available in the web service dashboard in Machine Learning Studio. For more information about Machine Learning Web services, see Deploy a Machine Learning Web service.

Build, test, Deploy solutions:
Azure Machine Learning enables you to build, test, and deploy predictive analytic solutions. From a high-level point-of-view, this is done in three steps:

  • Create a training experiment – Azure Machine Learning Studio is a collaborative visual development environment that you use to train and test a predictive analytics model using training data that you supply.
  • Convert it to a predictive experiment – Once your model has been trained with existing data and you’re ready to use it to score new data, you prepare and streamline your experiment for predictions.
  • Deploy it as a web service – You can deploy your predictive experiment as a new or classic Azure web service. Users can send data to your model and receive your model’s predictions.

Hope this helps.

Office 365 Developer: Using People API with Microsoft Graph v1.0


Microsoft Graph provides access to useful people data. You can use the person resource and the People API to aggregate information about a person from across mail, contacts, and social networks. The results are ordered by their relevance based on multiple communication and collaboration patterns and business relationships. The API lets you browse, sort, select, filter, or search for persons based on your criteria. Now the People API is available in Microsoft Graph v1.0.

To learn more about how to use the People API in v1.0, see our reference documentation and the article Get information about relevant people.

This API now requires one of two scopes: People.Read or People.Read.All.

  • People.Read will continue to be required for general People API calls, for example https://graph.microsoft.com/beta/me/people/. People.Read will require end user consent.
  • We are introducing People.Read.All; which will be required to retrieve the people most relevant to a specified user in the signed-in user’s organization (https://graph.microsoft.com/v1.0/users(‘{id}’)/people) calls. People.Read.All will require admin consent.

So i went ahead, played with People API against my test Office 365 mailbox. I see the following:

Request:

GET V1.0
https://graph.microsoft.com/v1.0/users(‘{b0386fe0-30d5-4e1d-b1ad-55bf082db9b8}’)/people

Response:

{
     “@odata.context”: “https://graph.microsoft.com/v1.0/$metadata#users(‘%7Bb0386fe0-30d5-4e1d-b1ad-55bf082db9b8%7D’)/people”,
     “value”: [
         {
             “id”: “b0386fe0-30d5-4e1d-b1ad-55bf082db9b8”,
             “displayName”: “Melissa Darrow”,
             “givenName”: “Melissa”,
             “surname”: “Darrow”,
             “birthday”: “”,
             “personNotes”: “”,
             “isFavorite”: false,
             “jobTitle”: “Marketing Director”,
             “companyName”: null,
             “yomiCompany”: “”,
             “department”: “Sales & Marketing”,
             “officeLocation”: “131/1105”,
             “profession”: “”,
             “userPrincipalName”: “MelissaD@CIE493742.onmicrosoft.com”,
             “imAddress”: “sip:melissad@cie493742.onmicrosoft.com”,
             “scoredEmailAddresses”: [
                 {
                     “address”: “MelissaD@CIE493742.onmicrosoft.com”,
                     “relevanceScore”: 1
                 }
             ],
             “phones”: [
                 {
                     “type”: “mobile”,
                     “number”: “+1 206 555 0110”
                 }
             ],
             “postalAddresses”: [],
             “websites”: [],
             “personType”: {
                 “class”: “Person”,
                 “subclass”: “OrganizationUser”
             }
         }
     ]
}



Still if you’re interested, you can go ahead and test the following as well:


Get a collection of relevant people

GET https://graph.microsoft.com/v1.0/me/people/

Request a subsequent page of people

GET https://graph.microsoft.com/v1.0/me/people/?$top=3&$skip=10

Sort the response

GET https://graph.microsoft.com/v1.0/me/people/?$orderby=displayName

Select the fields to return

GET https://graph.microsoft.com/v1.0/me/people/?$select=displayName,scoredEmailAddresses

Test123

Hope this helps Smile

Office 365 Graph Developer : Lets use Microsoft Graph Delta Query…


As you aware that Microsoft Graph provides a single API endpoint that gives you access to rich people-centric data and insights, via a number of resources like users and messages. Many applications need to keep track of what’s changing in these data sets, and we recently added support for delta query across a variety of resources on our /beta endpoint to help make that easier. These include Users, Groups, Messages, Mail Folders, Calendar Events, Personal Contacts, and Contact Folders.

So what is Microsoft Graph delta query? This capability enables applications to discover newly created, updated, or deleted resources and relationships without performing a full read with every request. delta query also provides change tracking for relationships between these entities, like changes to a user’s manager and group membership updates.

Here is a video which talks about it in-detail:

https://channel9.msdn.com/Shows/MicrosoftGraph/Use-Microsoft-Graph-Delta-Query-to-keep-data-up-to-date/player

Watch this video to learn more about Delta Query, scenarios where it is useful, and how to use it in your applications.

You can try one of the following:

image

Ok, let we try few and burn our hands.

This time let we try specific to messages in the given Inbox folder and see what i notice…

Let me call,

GET https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages/delta/

I see the following response:

{
     “@odata.context”: “https://graph.microsoft.com/v1.0/$metadata#Collection(message)”,
     “@odata.nextLink”: “https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages/delta/?$skiptoken=q5iAzeZ8lj7sNlt4pNN8MJIcMDKCWl9cflb41CDbnbtj6s4MQJzos4Fc99nM_6a_OutQ07fNQUeW7Q.DLfr-2TZABSAM-“,
     “value”: [
         {
             “@odata.type”: “#microsoft.graph.message”,
             “@odata.etag”: “W/”CQAAABYAAABuW0RzxJhUT4ez5BWQCxI9AABAJ1D1″”,
             “createdDateTime”: “2017-06-19T18:04:42Z”,
             “lastModifiedDateTime”: “2017-06-19T18:04:42Z”,
             “changeKey”: “CQAAABYAAABuW0RzxJhUT4ez5BWQCxI9AABAJ1D1”,
             “categories”: [],
             “receivedDateTime”: “2017-06-19T18:04:42Z”,
             “sentDateTime”: “2017-06-19T11:50:56Z”,
             “hasAttachments”: false,

You can find detailed examples containing series of requests and responses for various resources, along with additional information on using Delta Query in our documentation: 

Hope this helps.

MAPI Developer: Download latest MFCMAPI from the Github


As you aware that MFCMAPI provides access to MAPI stores to facilitate investigation of Exchange and Outlook issues and to provide developers with a sample for MAPI development. If you look to download the latest MFCMAPI (x86/x64) then you can get it from the Github @ https://github.com/stephenegriffin/mfcmapi

Le Café Central de DeVa - MFCMAPI

Hope this helps.