Exchange 2003 public folder alert? - exchange-server

Is there a way for a user to receve alerts when a public folder email is moved/replied to or deleted?

I have looked into this and the solution is to go with 3rd parties
http://www.sperrysoftware.com/Outlook/Watch-Outlook-Folders.asp
http://www.mapilab.com/outlook/folders_watch/

Related

How to fetch documents, and eForms from public folder mailbox

Public folder content can include email messages, posts, documents,
and eForms. I want to fetch all the data available inside public
folder mailbox. I am able to fetch email messages and posts.
How to fetch documents and eForms for the public folder shared mailbox? Which property needs to be set in the soap payload
eForms get stored in the NON_IPM_Subtree see https://learn.microsoft.com/en-us/archive/blogs/exota/how-to-create-publish-organizational-forms-in-exchange-2013office-365. AFAIK EWS won't let you enumerate those folders in a Public Folder Mailbox you maybe able to get the FolderId using the Exchange Management Shell cmdlets (Get-PublicFolder) and then connect to the folders using EWS. Otherwise you will need to use MAPI either via Outlook or a 3rd party library like redemption. I would suggest you first try a Mapi editor like OutlookSpy of MFCMapi and see if those folder exist in the NON_IPM_Subtree as they won't be their by default in an Office365 tenant.

Exchange WebService. Get all contacts from Outlook, not only from Contacts folder. FindPeople not found

I need to get all contacts and distribution lists (with their contacts) from my Outlook using Exchange WebService.
I have Visual 2017, and EWSManaged API 2.2 installed. My server has Exchange 2013, and I have installed Exchange 2013 101 Code Samples.
What I have now:
Option 1. I have that, but only 100 contacts are displayed:
var nameResolutionCollection = service.ResolveName("SMTP:", ResolveNameSearchLocation.DirectoryOnly, true);
With this NameResolutionCollection received above, how can I know if a NameResolution.Contact is a Distribution List? I can not see any property...
Option 2. I have that, but I get contacts only from Contacts folder. That folder has a 'Recipients Cache' folder, and a GAL folder, but it is empty...
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Contacts, new ItemView(200));
Option 3. I have that, but I get all folders from Outlook (such as Notes, Outbox, Sent Items,...)
FindFoldersResults allFolders = service.FindFolders(WellKnownFolderName.Root, new FolderView(int.MaxValue) {Traversal = FolderTraversal.Deep});
Option 4. I can get all contacts from a Distribution list, but i need the name:
ExpandGroupResults results = service.ExpandGroup("DistributionList#company.com");
I have seen that FindPeople might help me (https://gsexdev.blogspot.com/2013/05/using-ews-findpeople-operation-in.html)
BUT my project does not find that class (FindPeopleType, FindPeople, ...)
Any help? Is FindPeople the only way to get all contacts from my Outlook? Not only from Contacts folder
Thanks in advance,
Diego
FindPeopleType is a EWS WSDL proxy class https://blogs.msdn.microsoft.com/webdav_101/2017/12/15/about-exchange-service-xsd-and-wsdl/ and the example you posted are from the EWS Managed API (which if you used the latest version for gitHub does have FindPeople implemented but its not been done in a way that you could page the GAL). But if this is OnPrem an alternative is just use System.Directory services and LDAP to get the GAL contacts http://www.infinitec.de/post/2011/10/25/Searching-the-Global-Address-List-C-Edition.aspx or if its Office365 use the Graph API.

Exchange: Update GAL automatically

I'm working in a small app that needs to integrate contacts into my company Exchange server. I managed to "push" all this contacts into a user contacts list, but I'd need to share this contacts amongst everybody.
My question is: is there a way to automatically add a contact to the GAL, when this contact is added to the user contacts list?
This way, I would push contacts into a "user contact list" (let's say contacts#domain.com), and they would somehow be updated automatically into the GAL (if this makes sense).
So whenever a contact is added into "contacts#domain.com", this will be pushed into the GAL as well.
Unfortunately, there isn't a way to update the GAL trough Exchange Web Services, and after some research I was only able to push contacts into a user contact list, this is the reason why I'm looking for a solution like this.
Thanks for your time
My question is: is there a way to automatically add a contact to the GAL, when this contact is added to the user contacts list?
No when a user adds a contact to their contacts folder in their Mailbox this just creates an Exchange Store item for that user. A GAL contact is an Mail-enabled Active directory object that must be created using the Exchange Admin Console or Exchange management Shell.
You could create a client application that uses EWS to subscribe to a user contact folder (either push,pull or streaming) and then process any new entries and then create the Contact using the EMS new-mailcontact cmdlet https://technet.microsoft.com/en-us/library/bb124519%28v=exchg.150%29.aspx .(you need to build your own logic to avoid duplication etc).
Cheers
Glen

Salesforce - Sync with a public calendar via Salesforce Outlook Connector

I have Exchange 2010 and Outlook 2010. I am trying to sync a public Outlook calendar with Salesforce using the Salesforce. According to Idea Exchange (here and here), it's not possible (although the second link does contain a workaround that uses a Salesforce license). When I install the Salesforce Outlook Connector and select the calendar to sync with, I only see my personal calendar under my email address, not any public calendars. If I select a "New" and navigate to the public calendar and try to create a sub-folder, I get a message saying "Could not create new folder: MAPI_E_NO_ACCESS"
How can I sync this public folder? If this would show under my email address, I could just select it. Is there a way to get this to work?
While it isn't an immediate solution you could vote up the ideas:
IdeaExchange: make Public Calendar events first-class citizens
IdeaExchange: Salesforce for Outlook: Enable synching to public folder
API access to public calendars should make this possible.

Exchange server - Save copy of outgoing email message in a public folder

What I would like to achieve is:
Automatically save a copy of all outgoing (sent) email messages sent in the name of certain users (MyUserInPR#MyServer.com) to a certain public folder.
The purpose of this is to have a readonly view of all sent email messages available to every other user.
What would be the best way of achieving described above in Microsoft Exchange 2003 and 2007?
Thanks in advance!
For exchange 2007 SP1 and greater the best way is to use Exchange Web Services. I have written an article on my blog (C#: Getting All Emails From Exchange using Exchange Web Services) which can help.
Otherwise the Exchange forum is a great place to ask Exchange Server Forums > Development.

Resources