العمل مع تكوين المستخدم على الخادم
إدارة تكوين المستخدم
يمكن استخدام Aspose.Email للغة جافا لإدارة تكوين المستخدم على Exchange Server باستخدام EWSClient فئة. هذه الفئة تستخدم Exchange Web Services، المتوفرة فقط في Exchange Server 2007 والإصدارات اللاحقة. في هذا المقال، سنرى كيفية قراءة وإنشاء وتحديث وحذف تكوينات المستخدم على Exchange Server 2010. يتطلب Microsoft Exchange Server 2010 Service Pack 1 لجميع الميزات الموصوفة في هذا المقال. يوضح مقتطف الكود التالي كيفية الاتصال بـ Exchange Server 2010 في جميع الأمثلة في هذا المقال.
private static IEWSClient getExchangeEWSClient() {
final String mailboxUri = "https://outlook.office365.com/ews/exchange.asmx";
final String domain = "";
final String username = "username@ASE305.onmicrosoft.com";
final String password = "password";
NetworkCredential credentials = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
return client;
}
قراءة تكوين المستخدم
للحصول على معلومات تكوين المستخدم لمجلد معين من Exchange Server:
- الاتصال بـ Exchange Server باستخدام فئة IEWSClient.
- استدعِ طريقة IEWSClient.getUserConfiguration() للحصول على تكوين المستخدم لمجلد.
- اعرض خصائص تكوين المستخدم مثل المعرف والاسم وعناصر القاموس كأزواج مفتاح-قيمة.
يوضح مقتطف الكود التالي كيفية قراءة تكوين المستخدم.
IEWSClient client = getExchangeEWSClient();
System.out.println("Connected to Exchange 2010");
// Get the User Configuration for Inbox folder
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.getMailboxInfo().getInboxUri());
UserConfiguration userConfig = client.getUserConfiguration(userConfigName);
System.out.println("Configuration Id: " + userConfig.getId());
System.out.println("Configuration Name: " + userConfig.getUserConfigurationName().getName());
System.out.println("Key value pairs:");
// foreach to while statements conversion
for (Object key : userConfig.getDictionary().keySet()) {
System.out.println(key + ": " + userConfig.getDictionary().get(key).toString());
}
إنشاء تكوينات المستخدم
لإنشاء تكوين المستخدم لمجلد معين على Exchange Server:
- الاتصال بـ Exchange Server باستخدام فئة IEWSClient.
- استدعِ طريقة IEWSClient.createUserConfiguration() لإنشاء تكوين المستخدم لمجلد.
يوضح مقتطف الكود التالي كيفية إنشاء تكوينات المستخدم.
IEWSClient client = getExchangeEWSClient();
System.out.println("Connected to Exchange 2010");
// Create the User Configuration for Inbox folder
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.getMailboxInfo().getInboxUri());
UserConfiguration userConfig = new UserConfiguration(userConfigName);
userConfig.getDictionary().put("key1", "value1");
userConfig.getDictionary().put("key2", "value2");
userConfig.getDictionary().put("key3", "value3");
client.createUserConfiguration(userConfig);
تحديث تكوين المستخدم
لتحديث تكوين المستخدم لمجلد معين في Exchange Server:
- الاتصال بـ Exchange Server باستخدام فئة IEWSClient.
- استدعِ طريقة IEWSClient.updateUserConfiguration() لتحديث تكوين المستخدم لمجلد.
يوضح مقتطف الكود التالي كيفية تحديث تكوين المستخدم.
IEWSClient client = getExchangeEWSClient();
System.out.println("Connected to Exchange 2010");
// Create the User Configuration for Inbox folder
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.getMailboxInfo().getInboxUri());
UserConfiguration userConfig = client.getUserConfiguration(userConfigName);
userConfig.setId(null);
// Update User Configuration
userConfig.getDictionary().put("key1", "new-value1");
client.updateUserConfiguration(userConfig);
حذف تكوين المستخدم
لحذف تكوين المستخدم لمجلد معين في Exchange Server:
- الاتصال بـ Exchange Server باستخدام فئة IEWSClient.
- استدعِ طريقة IEWSClient.deleteUserConfiguration() لحذف تكوين المستخدم لمجلد.
يوضح مقتطف الكود التالي كيفية حذف تكوين المستخدم.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Delete User Configuration
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.getMailboxInfo().getInboxUri());
client.deleteUserConfiguration(userConfigName);