İhracat Standart / Genişletilmiş Kullanıcı Selamlar (2016 Exchange) - Kullanım yılında XMedius avst İçin

oy
0

18 Haziran 2018 (benim doğum BTW) hakkında daha önceki bir gönderide, bir kullanıcı istedi Umarım basit bir soru - kullanıcının bu özel madde türünü kullanarak kendi Exchange gelen kutusunda muhafaza edildi o365 (düzenli tebrik ve / veya tebrik genişletilmiş yokluğunda) UM sesli mesaj için kendi kişisel tebrik kaydedildi bilebilirim bir anda (yani IPM.Configuration . .Um.CustomGreetings.External ) Ancak, benim test o365 kurulum kurma alma UM yapılandırılmış ve tüm bu benim şahsi tebrik kayıt ve (, benim doğuştan kökünden başlayarak her öğe ile bazı 900+ ürün gittikten sonra - bir sürü orada garip şeyler) - Buna daha fazla böyle bir şey görmüyorum selam hakkında günlüğünün sürü, etkinlik öğeleri, bazı mesajları başka bir şey ben her biri geçti bir klasöre bir e-posta tür atama her şeyi ayıklanıyor -.. hiçbir şey vaat herkes kullanıcıları UM için özel tebrik (görevli kayıtları otomatik değil - farklı bir canavar var) herhangi bir ipucu var.? kapalı gitti ve nasıl onu almak için cevaplar yanı sıra Jeff Lindborg tarafından sağlanan kodu ile okuduktan sonra, ben bir yere başlamıştı düşündüm. deneme yanılma bir çok ile, nihayet Exchange Web Hizmetleri API yanı sıra yüklü EWS-FAI modülünü elde edebildi. o verilen kodu çalıştırarak geldiğimde odunum nerede Maalesef, bu. Ben herhangi bir biçimde bir geliştirici ya da 'kodlayıcı' değilim, ama her zaman işimi yapmak için etkili ve verimli yöntemlerle arıyorum. Bunu dedi, ben bir Win10 iş istasyonunda bu yönetmeye çalışıyorum, ama içinde çalışmasına ihtiyaçları bu programı hangi şekil gibi olamaz. Ben PowerShell denedim, ama bu işe yaramaz. Ben kutusu kimliğe bürünme için gerekli hesaplar yanı sıra gerekli diğer izinlerin erişebilir. Başlangıçta incelenmek üzere sağlandı kodunu sağladık. Her türlü ilave yardım büyük mutluluk duyacağız.

kod

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);
        }
    }
Oluştur 02/12/2019 saat 23:58
kaynak kullanıcı
Diğer dillerde...                            


1 cevaplar

oy
0

Eğer bir C # uygulaması EWS Yönetilen API bir başvuru ekleyebilir ve bunun için işe (bir geliştirici meşgul veya bazı temel kodlama öğrenmek gerekir) o derlemek oluşturmak için Visual Studio kullanmak gerekir için yayınladığınız kod c # olduğunu.

EWS-FAI öğeyi döndürmek mümkün olmalıdır bir powershell modülü olduğunu ve böyle bir dosya örneğin bir şeye kendisinin yazmak gerekir

   $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)
Cevap 03/12/2019 saat 23:06
kaynak kullanıcı

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