Opening a public folder item via code and confusion about ids - outlook

After some reading I'm beginning to understand that there are multiple formats for the various ids used in exchange and Outlook. I'm trying to clear up some confusion, here is the scenario.
We have a vendor product that is crawling public folder content in Exchange server and identifying messages that meet certain criteria. When this software captures each message it stores an id that looks similar to the following:
AAIARgAAAAAAGkRzkKpmEc2byACqAC/EWgkAzDDxpv7lakqqtxgSLYsXTwAAAoOedgAA+v7vRoYnskqzbHwT4KwucwAAIH9adQAALgAAAAAAGkRzkKpmEc2byACqAC/EWgMAzDDxpv7lakqqtxgSLYsXTwAAAoOedgAA
I'm responsible for writing a WinForms application that presents these messages in a list and among other things allows them to open the message in Outlook. For purposes of this question, you may assume the user has access to the message.
In looking through the Outlook API and inspecting the message properties it looks like the only id I can find there takes the form:
000000001A447390AA6611CD9BC800AA002FC45A0900CC30F1A6FEE56A4AAAB718122D8B174F000002839E760000FAFEEF468627B24AB36C7C13E0AC2E730000207F5A750000
I've read material that suggests these could be the same id expressed in different formats but have had no luck using the ConvertId operation in the EWS services.
Can anyone confirm whether these are truly different representations of the same id or completely different entities? And whether it is possible to get from one to the other?

These are not the same ids - they are different ids referring to the same object.
If you are having problems with the ConvertId EWS separation, you might want to post a separate ConvertId specific question.

Related

Send form from Lotus Notes to Outlook

I have a Lotus Notes database design that I'm working on in which a user will request a data change that requires manager approval.
My concept is to automatically email the relevant manager with the details of the request using the NotesDocument.Send(True) to attach the form. This form displays the relevant information and has two buttons, to either approve or refuse the request without having to open the original document in the front-end. This is all fine and doesn't present any problems.
However, I've recently been told that the users will soon be switching to Outlook. Is there a way of doing the same. The users will still be using Notes for all our bespoke systems, just not for mail or calendar, so I can potentially add links to the document.
One thought I had was to supply two links to the document, with different parent views, and then have the QueryOpen code use NotesDocument.ParentView to ascertain what action to take. The downside to this is that the UI focus will switch to Notes.
Any other suggestions, such as links/buttons that will email back to a mail-in database with a subject like "REF 0012345 APPROVE" or "REF 0012345 REFUSE"? Can that be written in a Notes email doc to go to outlook?
You can create an HTML email including two (or more) buttons. On click you call an agent by Url and have the action and the target as parameter.
Look for the following command in the designer help:
?OpenAgent
For sure the http task has to run on the domino server.
Best
Thilo
I'd go with the approach of two links going to an agent, with one link ending in ?OpenAgent&Approve&Ref=xxxxxxxx and the other ending in ?OpenAgent&Refuse&Ref=yyyyyyy.
Here's why...
I'm not saying this will happen in your organization, but in a lot of organizations the move to Outlook for email has been the prelude to reducing the number of Notes clients that are installed. The Domino servers live on for years, but there are fewer and fewer clients. It gets to the point where it is only installed for users who need the client for business-critical applications. As time goes on, fewer and fewer people have Notes clients and eventually, the question will come up about why all managers need to have the Notes client. Since you're designing this now, you might as well take that into consideration and provide for the day when most managers will not necessarily need a Notes client.

getStream - Flat Feed where multiple users can post

we are implementing stream in our application and so far we love the out of the box react components as well as the backend implementation stream ruby - this is our setup currently.
We are close to deploying a first MVP but found that it seems to be not possible to post activities to a flat feed from multiple users by default.
Our use case is that we have a group of people that want to post activities about a certain topic (think facebook groups). Therefore we create a feed for the object (lets say a company) and want each user to be able to post activities there. Our current workaround is to add the author id as additional data and add a custom header to a activity - obviously not the best solution as reactions won't work that way.
Looking around we found that this seems to not work out of the box see this issue and this question.
Is this a feature that is only available to paying customers or how can we activate it?
Thank you in advance!
When using Stream with React users can only post to their own user feed, this is a default permission policy that can be changed by Stream.
I suggest reaching to Stream support by email and ask to change the permission policy.

Export email messages with attachments from Dynamics 365 CRM

The constraints for this requirement are as follows:
For legislative and/or governance purposes, the organization I am doing this for needs a way to extract email messages (with attachments) from a cloud instance of Dynamics, given a start date and end date;
What's important is that the content be made available, not necessarily in a conventient format ("convenient" here I am suggesting is something like a neat MIME-encoded/RFC-822 formatted file, or even proprietary MS .msg format). So, for instance, simply dumping the email body as a file, and the associated attachments as other files, grouped together in a folder somewhere is good enough;
The solution needs to be as simple as possible, and should have no technical support needs;
Here's the kicker: as much as this solution will necessitate a custom implementation (that is, code), we cannot employ anything outside the constraints of what we currently have in our Azure tenancy, that being: Dynamics 365 with the option of uploading custom plugins and/or custom workflow tasks or currently paid-for PaaS facilities, notably Flow. This eliminates the option of having a console-based application, or even a web app.
I am aware of the fact that one can use Dynamics Advanced Find to export email data (even the body of the email sans attachments) into an Excel file. We do need the email attachments, however.
What is a good way of implementing the above solution?

FHIR: Get all encounters, patients, appointments for the practice

I'm trying to use FHIR to pull all patients, encounters and appointments into an intermediate database for further analysis. Most of the FHIR API's appear to be designed to handle one patient ID at a time, or one encounter at a time, etc. What is the most efficient way to pull the full set of encounters and then keep it current, as well as appointments, etc.?
Please take a look at the FHIR specification website, specifically the page about the RESTFul API and look at search. The APIs have methods to support the interactions described on the website.

How can the performance of LUIS models be improved?

If you have used the Language Understanding Service (LUIS) which is part of Cognitive Services suite from Microsoft, you probably have come to the point where you needed to improve the performance of your models at predicting intents.
LUIS allows you to train models based on sample utterances which you supply either interactively or in batches. In addition, I would like to have the chat logs showing utterances which are wrongly classified by the model so I can use them as a basis for new training data-sets.
I would imagine that such feature would be released in future but in the meantime, does anyone have a work-around for this scenario?
I think a good way to implement this (by hand), would be to route all the messages that were wrongly classified to some kind of storage or log so you could in the future use them to retrain your LUIS model. In fact, you could use LUIS API to make calls dynamically and easily with the data in your log.
So, the flow would be something like this:
1) User send message to bot.
2) Bot logic tries to match message's intent using LUIS model.
3) An intent isn't found or the value associated to the result is really low.
4) Grab that message and store it somewhere (from a simple txt file stored in an Azure Blob Storage), or in in a Database (Table Storage, DocumentDB or SQL Server).
5) Make a simple program that for each line in your log makes you choose an intent and then it calls LUIS Api to retrain.
So, I found the closest thing to what I had in mind when I asked the question.
Right on the "MyApps" page on luis.ai there's the possibility to download the chat logs in which one can see the entire set of interactions between users and the bot. It could be a good starting point for picking out intents which were wrongly classified.
I attached a screenshot to indicate the link
The only caveat is that the log chat format is currently in .csv which isn't so readable. Hopefully LUIS supports json formatted logs soon.

Resources