Gmail Kişileri ile Çalışma
Aspose.Email, Gmail kişilerle çalışmayı destekler. Kullanarak IGmailClient Arayüz sayesinde kullanıcılar bir Gmail hesabından kişiler alabilir, yeni kişiler oluşturabilir, mevcut kişileri güncelleyebilir ve silebilir. Gmail, geliştiricilerin tüm bunları kamu API’si üzerinden yapmasına izin verir. Gmail kişilerle çalışmak için aşağıdaki kullanıcı bilgileri gerekir: Kullanıcı adı, e-posta adresi, şifre, client ID, client secret, refresh token.
Gmail Kişilerine Erişim
Aşağıda, tüm gruplardaki kişilerin detayına erişmek için kullanılabilecek bir örnek uygulama bulunmaktadır.
try (IGmailClient client = GmailClient.getInstance(accessToken, email)) {
Contact[] contacts = client.getAllContacts();
for (Contact contact : contacts)
System.out.println(contact.getDisplayName() + ", " + contact.getEmailAddresses().get_Item(0));
// Fetch contacts from a specific group
ContactGroupCollection groups = client.getAllGroups();
GoogleContactGroup group = null;
for (GoogleContactGroup g : groups) {
if ("TestGroup".equals(g.getTitle())) {
group = g;
}
}
// Retrieve contacts from the Group
if (group != null) {
Contact[] contacts2 = client.getContactsFromGroup(group.getId());
for (Contact con : contacts2)
System.out.println(con.getDisplayName() + "," + con.getEmailAddresses().get_Item(0).toString());
}
}
Kişi Oluşturma
Aşağıdaki kod örneği, bir kişi nasıl oluşturulacağını gösterir.
// Create a Contact
Contact contact = new Contact();
contact.setPrefix("Prefix");
contact.setGivenName("GivenName");
contact.setSurname("Surname");
contact.setMiddleName("MiddleName");
contact.setDisplayName("DisplayName");
contact.setSuffix("Suffix");
contact.setJobTitle("JobTitle");
contact.setDepartmentName("DepartmentName");
contact.setCompanyName("CompanyName");
contact.setProfession("Profession");
contact.setNotes("Notes");
PostalAddress address = new PostalAddress();
address.setCategory(PostalAddressCategory.getWork());
address.setAddress("Address");
address.setStreet("Street");
address.setPostOfficeBox("PostOfficeBox");
address.setCity("City");
address.setStateOrProvince("StateOrProvince");
address.setPostalCode("PostalCode");
address.setCountry("Country");
contact.getPhysicalAddresses().add(address);
PhoneNumber pnWork = new PhoneNumber();
pnWork.setNumber("323423423423");
pnWork.setCategory(PhoneNumberCategory.getWork());
contact.getPhoneNumbers().add(pnWork);
PhoneNumber pnHome = new PhoneNumber();
pnHome.setNumber("323423423423");
pnHome.setCategory(PhoneNumberCategory.getHome());
contact.getPhoneNumbers().add(pnHome);
PhoneNumber pnMobile = new PhoneNumber();
pnMobile.setNumber("323423423423");
pnMobile.setCategory(PhoneNumberCategory.getMobile());
contact.getPhoneNumbers().add(pnMobile);
contact.getUrls().setBlog("Blog.com");
contact.getUrls().setBusinessHomePage("BusinessHomePage.com");
contact.getUrls().setHomePage("HomePage.com");
contact.getUrls().setProfile("Profile.com");
contact.getEvents().setBirthday(new Date());
contact.getEvents().setAnniversary(new Date());
contact.getInstantMessengers().setAIM("AIM");
contact.getInstantMessengers().setGoogleTalk("GoogleTalk");
contact.getInstantMessengers().setICQ("ICQ");
contact.getInstantMessengers().setJabber("Jabber");
contact.getInstantMessengers().setMSN("MSN");
contact.getInstantMessengers().setQQ("QQ");
contact.getInstantMessengers().setSkype("Skype");
contact.getInstantMessengers().setYahoo("Yahoo");
contact.getAssociatedPersons().setSpouse("Spouse");
contact.getAssociatedPersons().setSister("Sister");
contact.getAssociatedPersons().setRelative("Relative");
contact.getAssociatedPersons().setReferredBy("ReferredBy");
contact.getAssociatedPersons().setPartner("Partner");
contact.getAssociatedPersons().setParent("Parent");
contact.getAssociatedPersons().setMother("Mother");
contact.getAssociatedPersons().setManager("Manager");
// Email Address
EmailAddress eAddress = new EmailAddress();
eAddress.setAddress("email@gmail.com");
contact.getEmailAddresses().add(eAddress);
String contactUri = client.createContact(contact);
Kişi Güncelleme
Bir kişi alındıktan sonra, özellikleri güncellenebilir ve kişi Gmail hesabına geri kaydedilebilir. Aşağıdaki kod örneği, bir Gmail hesabından kişileri nasıl alacağınızı ve ardından bunlardan birini değiştirip geri kaydedeceğinizi gösterir.
try (IGmailClient client = GmailClient.getInstance(accessToken, email)) {
Contact[] contacts = client.getAllContacts();
Contact contact = contacts[0];
contact.setJobTitle("Manager IT");
contact.setDepartmentName("Customer Support");
contact.setCompanyName("Aspose");
contact.setProfession("Software Developer");
client.updateContact(contact);
}
Kişi Silme
Bir Gmail kişisini silmek için, aşağıdaki örnek kodda gösterildiği gibi Gmail istemcisinin DeleteContact yöntemi kullanılır.
client.deleteContact(contact.getId().getGoogleId());
Kişi Kaydetme
Aspose.Email, MSG ve VCF gibi çeşitli çıktı formatlarında kişiyi kaydetmeye olanak tanır. Save yöntemi bu yeteneği sağlar. Aşağıdaki kod örneği, bir kişiyi nasıl kaydedeceğinizi gösterir.
contact.save(dataDir + "contact_out.msg", ContactSaveFormat.Msg);
contact.save(dataDir + "contact_out.vcf", ContactSaveFormat.VCard);