/// <summary> /// subscribe single email /// </summary> /// <param name="contactGroupId">contact group id</param> /// <param name="emailId">email id</param> /// <returns>publish status</returns> public String subscribeSingleEmail(String contactDatabaseId, String workspaceId,String emailAddress,String emailId) { if (logger.IsDebugEnabled) { logger.Debug("subscribeSingleEmail:contactDatabaseId=" + contactDatabaseId + ",emailId=" + emailId + ",emailAddress=" + emailAddress); } String result = ""; subscribeContactRequest request = new subscribeContactRequest(); try { request.contactDatabase = new cn.tripolis.dialogue.subscription.IdNameModel(); request.contactDatabase.id = contactDatabaseId; request.workspace = new cn.tripolis.dialogue.subscription.IdNameModel(); request.workspace.id = workspaceId; request.contactFields = new cn.tripolis.dialogue.subscription.ContactFieldValue[1]; ContactFieldValue contactFieldValue = new ContactFieldValue(); contactFieldValue.name = "email"; contactFieldValue.value = emailAddress; request.contactFields.SetValue(contactFieldValue, 0); request.directEmail = new cn.tripolis.dialogue.subscription.IdNameModel(); request.directEmail.id = emailId; request.ip = "127.0.0.1"; cn.tripolis.dialogue.subscription.IDResponse response = subscriptionService.subscribeContact(request); String contactId = response.id; result = contactId; } catch (System.Web.Services.Protocols.SoapException ex) { if (!Util.isCodeExist(ex.Detail) || Util.getExistId(ex.Detail).Equals("")) { result = ex.Detail.InnerXml; if (logger.IsDebugEnabled) { logger.Debug("error happens in publishing direct email, error is" + result); } throw new Exception(ex.Detail.InnerXml); } result = Util.getExistId(ex.Detail); } return result; }
/// <remarks/> public void subscribeContactAsync(subscribeContactRequest subscribeContactRequest, object userState) { if ((this.subscribeContactOperationCompleted == null)) { this.subscribeContactOperationCompleted = new System.Threading.SendOrPostCallback(this.OnsubscribeContactOperationCompleted); } this.InvokeAsync("subscribeContact", new object[] { subscribeContactRequest}, this.subscribeContactOperationCompleted, userState); }
/// <remarks/> public void subscribeContactAsync(subscribeContactRequest subscribeContactRequest) { this.subscribeContactAsync(subscribeContactRequest, null); }