Export standardní / rozšířené uživatelské Greetings (Exchange 2016) - pro použití v XMedius AVST

hlasů
0

V dřívější příspěvek na 18. června 2018 (moje narozeniny BTW), uživatel požádán „Doufejme, že jednoduchá otázka - najednou jsem vědět, kdy uživatel je zaznamenána jejich osobní pozdrav pro hlasovou poštu UM v o365 (pravidelný pozdrav a / nebo delší nepřítomnosti pozdrav), ty byly uloženy ve své e-mailové schránky Exchange pomocí speciální typ položky (tj“ IPM.Configuration . .Um.CustomGreetings.External ) Nicméně nastavení mé nastavení testu o365, dostat UM konfigurovat a vše, co po nahrávání můj osobní pozdrav a prochází každou položku od kořene mé e-mailové schránky (asi 900 + předměty - spousty liché věci tam) - nevidím nic takhle víc Spousta protokolu, položky aktivity, některé zprávy ale nic o pozdravy Těžba vše, co by mohlo vrhnout na typ e-mailu do složky I prošel každý z nich -.. nic slibné někdo nějaké záchytné body, kde jsou vlastní pozdravy pro uživatele zasílání zpráv (ne auto doprovodných nahrávek - to je jiná šelma).? odešla pryč a jak se dostat k němu“ Po přečtení odpovědí, jakož i kód, který byl poskytnut Jeff Lindborg, myslel jsem si, že jsem se někam dostat. S hodně pokusů a omylů, jsem konečně mohl dostat EWS-FAI modul nainstalován, stejně jako API Exchange Web Services. Bohužel, když to přišlo k provozování dodaného kódu, to je místo, kde jsem pařezy. Nejsem vývojář nebo ‚kodér‘ v jakékoliv formě, ale já jsem vždy hledá pro efektivní a účinné metody dělat svou práci. S tím řekl, snažím spustit tento na pracovní stanici Win10, ale nedokážu přijít na to, jaký program To je třeba spustit uvnitř. Snažil jsem se Powershell, ale to nefunguje. Mám přístup k potřebným účtů za zosobnění schránky, stejně jako jakékoliv jiné oprávnění potřebné. Já jsem za předpokladu, že kód, který byl původně dodané k posouzení. Jakékoli dodatečné pomoci by bylo velmi ocenil.

Kód

ExchangeService _service;
        _service = new ExchangeService(ExchangeVersion.Exchange2016); // Exchange2013_SP1);
        _service.Credentials = new WebCredentials(user@domain, myPw);
        _service.Url = new Uri(https://outlook.office365.com/EWS/Exchange.asmx);

        //select the user you're fetching greetings for
        _service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, user@domain);

        //get the root folder for the current account
        var oParamList = new List<FolderId> {WellKnownFolderName.Root};
        var oTemp = _service.BindToFolders(oParamList, PropertySet.FirstClassProperties);
        var oRoot = oTemp.First().Folder;

        var oView = new ItemView(50)
        {
            PropertySet = new PropertySet(BasePropertySet.FirstClassProperties),
            Traversal = ItemTraversal.Associated
        };
        SearchFilter oGreetingFilter = new SearchFilter.ContainsSubstring(ItemSchema.ItemClass,
            IPM.Configuration.Um.CustomGreetings, ContainmentMode.Substring, ComparisonMode.IgnoreCase);
        var oResults = _service.FindItems(oRoot.Id, oGreetingFilter, oView);

        //fetch the binary for the greetings as values 
        var oPropSet = new PropertySet(BasePropertySet.FirstClassProperties);
        var oRoamingBinary = new ExtendedPropertyDefinition(31753, MapiPropertyType.Binary);
        oPropSet.Add(oRoamingBinary);
        _service.LoadPropertiesForItems(oResults, oPropSet);

        var strFileName = ;
        foreach (var oItem in oResults.Items)
        {
            if (oItem.ItemClass.Equals(IPM.Configuration.Um.CustomGreetings.External,
                StringComparison.InvariantCultureIgnoreCase))
                strFileName = jlindborg_Standard.wav;
            if (oItem.ItemClass.Equals(IPM.Configuration.Um.CustomGreetings.Oof,
                StringComparison.InvariantCultureIgnoreCase))
                strFileName = jlindborg_Extended.wav;
            File.WriteAllBytes(d:\\ + strFileName, (byte[]) oItem.ExtendedProperties.First().Value);
        }
    }
Položena 02/12/2019 v 23:58
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Kód jste zaslali je c #, takže budete muset používat Visual Studio k vytvoření C # aplikace přidat odkaz na EWS Managed API a kompilovat, že pro to, aby práce (budete potřebovat, aby se zapojily vývojář nebo se naučit některé základní kódování).

EWS-FAI je powershell modul by měl být schopen vrátit tuto položku a vy byste měli být schopni napsat, že do souboru např něco podobného

   $MailboxName = "mailbox@domain.com" 
   $Item = Get-FAIItem -MailboxName $MailboxName -ConfigItemName Um.CustomGreetings.External -Folder Inbox -ReturnConfigObject
   [System.IO.File]::WriteAllBytes(("C:\temp\" + $MailboxName + ".wav"),$Item.BinaryData)
Odpovězeno 03/12/2019 v 23:06
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more