outlook automation in Blueprism - outlook

I am trying send mails using outlook in BluePrism likewise in UIpath. I am new to Blueprism but I don't find an option as Outlook or Exchange Server. I have serached internet and came across a solution of installing Mapiex but I couldn't find the installable and it does not work with outlook64. So Blue Prism does not have a out of the box solution for outlook automation

Please check your Blue Prism Installation folder and traverse to
Blue Prism Automate
There you should be able to find Blue Prism Mapiex. Once you import this to Blue Prism tool, you should be able to use it with ease.
Pull in an Action Stage and select Mapiex, like you would with your objects and then you may utilize the actions that come with it.
Check the
Input
and
Output
tabs to ensure that you provide all the required information.

Hey here comes blueprism ver6.3.
And you do not need to install MAPIEX add-ons or some DLL files manually.
Only you need to do is import the Outlook VBO which you can find in Blueprism VBO folder in 6.3 ver.
And it provides a quicker method to manipulate Outlook.

It is a bit tedious process go first you need to install a file named MAPIEX.msi and then import MAPIEX VBO TO LIBRARY AND then bake some settings andit will be configured for Blueprism sending emails.

Yes, MAPIEx will only work with the Outlook mail client as a 32-bit application. 64-bit Outlook is not supported.
Check out Email- POP3/SMTP VBO, if these vbo can do whatever you are trying to achieve.

Mapiex works only with 32bit outlook client,If you are using Microsoft exchange mail,then you can use EWS Managed API and directly access the server and get emails , just instal API and include required DLLs ,but it requires to do some codings.

The Blue Prism (BP) Tool has an Outlook VBO which you can use. You should be able to import the Outlook VBO into your BP instance.
On occasion depending on your outlook setup, you will need to go into your Outlook Trust settings and turn off security popups to make sure the automation can use your outlook without issues.
The issue with using the MAPiex is that whenever you migrating it through different environments and runtime resources, it is a big pain to set it up and make sure it works every time.

You must import the VBO "MS Outlook Email VBO", this VBO contains an action "Send mail", you fill the inputs "From, To, Body, Subject, CC", and you will be able to send an email,

You can just use 2 options to automate Outlook :
Outlook Client : use the 'MS Outlook VBO' which is shipped with Blue Prism installation. This VBO will let you automate Outlook client (no direct connection to Exchange Server)
MAPIEx : you can use this VBO with the .dll files (dependencies) that will let you to connect to Exchange Server (not your Outlook client). Then you can set which profile to use etc.

Related

Replicate the share email to microsoft teams function

I am currently investigating a way to share emails from our desktop application. Written in c# using .Net framework 4.7
We would like to use the same dialog that gets initiated when you use the "Share to Teams" button in outlook passing in the .eml file. The user would be responsible for selecting which people or channels to share to.
Does anyone have any recommendations?
We can succesfully build a simple url share using their launcher concepts, but this is pretty limited to the browser and doesn't support files
https://teams.microsoft.com/share?href=www.stackoverflow.com&msgText=Testing
https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/share-to-teams
And there is nothing mentioned in their deep-links section on msdn to achieve this
https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-links
If you're building your own desktop app experience anyway, why not use Graph for this? For instance, see https://learn.microsoft.com/en-us/graph/api/chatmessage-post?view=graph-rest-1.0&tabs=http . You'd need to do your own Search box, but you can do that on Graph also - here for instance is a channel listing endpoint (this example is for within a specific Team): https://learn.microsoft.com/en-us/graph/api/channel-list?view=graph-rest-1.0&tabs=http

Copying Email message to another folder in Outlook Web Add-in

I've looked at the "outlook add in command demo" example that shows how to access properties of email messages and change them via REST.
However, I cannot seem to find how I would go about copying a message from (e.g. the Inbox) to another folder in the mailbox.
The example uses REST, which does not seem to be exposing a method or call to copy a message to another folder. Would I need to use Graph to copy a message, and if yes, how is this done from within an Outlook Add-in?
Also, the documentation says REST is deprecated for Outlook add-ins and Graph should be used instead. Is there an Outlook Add-in sample that uses Graph?
The example also shows how the add-in can work on iOS, but not on Android. Has this support in the meantime been added? Is there any newer example that shows how an Outlook add-in can work on all platforms including Android?
You should now use Graph in place of Outlook REST which is now deprecated. To call Graph via outlook add in, check this documentation. Graph call to copy a message from 1 folder to another is POST /me/messages/{id}/move, find more info here.
The Outlook Add in does have support for Android, please have a look here

How to register custom functions add in with different view in excel

I was trying to run the sample project with custom functions add-in using this link: https://github.com/OfficeDev/Excel-Custom-Functions.
I made sure that I meet all the prerequisites for running the project. I installed the certificates, and run the project successfully, but I'm stuck at step 3, of registering the custom functions add-ins by going to the insert tab and adding the respective add-in by selecting from the developer section. The problem I'm facing is that I have a different view and organization of options in my excel client application and I could not find the developer section from where I can register my Add-in. I'm attaching the images of the ribbon that I have in excel.
So if you will look into the images, you will see that there is manage my addins options, which will only show the add-ins that have been sideloaded manually but not the ones that were sideloaded using the script in this project. So I don't know where can I find the developer Section. Any help would be much appreciated. Thanks!
I'm also part of the Insider program which can be seen in the given image
If you're a member of the Office Insider program and are running Excel for Windows build number 10827 or later, the Insert ribbon should look like the following screenshot (with red rectangles highlighting the items you choose to register your custom functions add-in).
Have you joined the Office Insider program?
What build number of Excel for Windows are you running?
(Screenshot taken from the Custom Functions Tutorial).
So I fixed my problem after I found out that custom functions only works with the Insider Channel and not with Monthly Targeted, which I had beforehand. I got help from this link: https://answers.microsoft.com/en-us/msoffice/forum/all/create-custom-functions-in-excel-is-not-working-as/1ce500cc-8f83-421a-bb7c-2ae34027d444.

How to share user roaming settings between Outlook COM/VSTO and Office JS Add-in

Is it possible to share user’s roaming settings and preferences between COM/VSTO Outlook and Office JS Add-ins?
Scope
The following article covers an approach for developers to make a bridge between COM/VSTO Outlook Add-in and Office JS Add-ins to share user’s roaming settings and preferences.
Introduction
There are plenty of companies who deliver reach experience to their customers through COM/VSTO Outlook Add-ins for ages and Outlook 2000 to the latest version support is normal for them. With maturity of the Microsoft Office Store and technology behind Office JS Add-ins more and more companies looking to implement their existing solutions using Office JS API. Ability to write once and distribute easily the application for environments where Office works is very attractive point. But what about customers who still use old reliable Office 2010 or even older. You may say: “Let them use our old COM Add-in and don’t look back”. Well this may be valid point until this customer start to use Outlook for Web and realize you’ve created the Add-in for this environment as well. Great! Start using it … but wait a second, where are my settings and preference I set at my work place when used desktop solution for Outlook? What if I would like to change my preferences? Now I have to do that twice? A developer would say: “Move on to our new solution, forget about old COM”. But users probably have a reason why they use old Outlook version with COM Add-in at work and OWA with new Office JS Add-in remotely (during a trip, work from home, etc.). The reader probably got my point by now. As the developer, you may want to make life of those customers simpler by sharing the preferences between your brand new and shiny Office JS Add-in as well as your old, but solid and full of features COM/VSTO solution. So, let’s find out how to do that.
Office JS Add-in Roaming Settings
Right from the requirement set 1.0 Office JS API RoamingSettings object was introduced with four methods to manipulate with user settings. You are able to set, get and delete any custom value of the user setting/property type of {String|Number|Boolean|Object|Array}. This object keeps those settings per user mailbox and will be available to your Office JS Add-in from any location, device, etc. True roaming to keep your user’s preferences and settings, isn’t it? Please note: You should not use this object to keep sensitive information such as user credential or security tokens. The following example demonstrate usage of the object:
// Get the current value of the 'myKey' setting
var value = Office.context.roamingSettings.get('myKey');
// Update the value of the 'myKey' setting
Office.context.roamingSettings.set('myKey', 'Hello World!');
// Persist the change
Office.context.roamingSettings.saveAsync();
COM/VSTO Add-in for Desktop Outlook
Let’s return to our COM/VSTO solution. There is the single pre-request: to handle the settings which were stored in the user’s mailbox developer needs to know Office JS Add-in ID as the RoamingSettings are stored per add-in and per user. Well, you would know it indeed, as this is your/your company Add-in. The settings we are looking for are stored in the message property, which is stored in Associated contents table of the Inbox folder may be accessed using IMAPIFolder interface. Wow, this was the key sentence from entire post and needs to be explained in details.
First you would need to enumerate all messages in associated contents table and find the message with the class “IPM.Configuration.ClientExtension.00000000000000000000000000000000”, where zeros must be ID of your Office JS Add-in.
When message selected, you would need to get “PR_ROAMING_DICTIONARY” Property.
This property will contain serialized data we stored as roaming setting when used Office JS Add-in in our example above:
<?xml version="1.0" encoding="utf-8"?>
<UserConfiguration>
<Info version="Exchange.12" />
<Data>
<e k="18-ExtensionSettings" v="18-{"myKey":"\"Hello World!\""}" />
</Data>
</UserConfiguration>
Your COM/VSTO Add-in will be able to read and modify those settings with simple parse. You may want to expose your COM Add-in user setting as well. Usually those settings developers keep in HKCU Windows Registry, to roaming world per user mailbox. The benefit of this not only in capability between Office JS Add-in, but separated set of settings of your Add-in per user mailbox. When those settings created from Desktop Outlook use different info version, for example:
<Info version="Outlook.16"/>
Conclusion
As the final note on the topic I would like to illustrate the simple example of shared settings of an application from the same provider where COM and Office JS Add-ins share user settings.
References
https://dev.outlook.com/reference/add-ins/RoamingSettings.html
https://msdn.microsoft.com/en-us/library/office/cc842083.aspx
https://msdn.microsoft.com/en-us/library/office/cc842374.aspx?f=255&MSPPError=-2147217396
https://msdn.microsoft.com/en-us/library/office/cc842386.aspx

Read parameters from Outlook 365 Add-In manifest

Is it possible to get the parameters from the Outlook 365 add-in manifest programmatically (like version number or maybe resources)? I've searched all over the internet, but haven't found any way to do it yet :(
Some background: I need some information to be available at run-time from the manifest settings (the customers are expected to install the add-in via manifest and it is to be tailored for each customer with some special data).
Thanks in advance!
The manifest file is only consumed by the client (i.e. Outlook or Word) for the purposes of rendering that add-in (i.e. the URL, buttons to display, minimum requirements, etc.). There are currently no APIs that expose manifest data to the add-in instance itself.
One idea: what if you put the special data as something encoded in the start URL? That way you could read it back out via JavaScript, simply by looking at what parameter got passed in to you. Would that work?

Resources