|
|
#1 |
|
Участник
|
Как послать сообщение пользователю...
Добрый день.
Как послать сообщение (на OUTLOOK) пользователю из пользовательского кода (из Callout например) Спасибо. |
|
|
|
|
#2 |
|
Участник
|
Можно так:
Код: public string SendEmail(string subj, string text, activityparty mailTo, activityparty mailFrom, Guid regardingid, string regardingType, string regardingName,CalloutUserContext userContext)
{
try
{
CrmService service = setService(userContext);
email Email = new email();
Email.subject = subj;
Email.description = text;
Email.from = new activityparty[] {mailFrom};
Email.to = new activityparty[] {mailTo};
Email.regardingobjectid = new Lookup();
Email.regardingobjectid.Value = regardingid;
Email.regardingobjectid.type = regardingType;
Email.regardingobjectid.name = regardingName;
Guid emailId = service.Create(Email);
// Get a TrackingToken
GetTrackingTokenEmailRequest getTrackingToken = new
GetTrackingTokenEmailRequest();
getTrackingToken.Subject = Email.subject;
GetTrackingTokenEmailResponse getTrackingTokenResponse = (GetTrackingTokenEmailResponse)service.Execute(getTrackingToken);
// Send the email
SendEmailRequest request = new SendEmailRequest();
request.EmailId = emailId;
request.IssueSend = true;
request.TrackingToken = getTrackingTokenResponse.TrackingToken;
SendEmailResponse res = (SendEmailResponse)service.Execute(request);
}
catch (Exception ex)
{
return ex.Message;
}
return "";
}
Вызывающая процедура (пример)
string sub = "subject";
// To
activityparty mailTo = new activityparty();
mailTo.partyid = new Lookup();
mailTo.partyid.type = EntityName.systemuser.ToString();
mailTo.partyid.Value = SomeUserIdTo;
//From
activityparty mailFrom = new activityparty();
mailFrom.partyid = new Lookup();
mailFrom.partyid.type = EntityName.systemuser.ToString();
mailFrom.partyid.Value = SomeUserIdFrom;
string res = SendEmail(sub,description,mailTo,mailFrom, inc.incidentid.Value,EntityName.incident.ToString(),inc.title,userContext); |
|
|
|
|
#3 |
|
Участник
|
Лида спасибо, вроде разобрался
но слово setService моя среда разработки не понимает. CrmService service = setService(userContext); Не подскажете еще какую ссылку надо добавить? Спасибо. |
|
|
|
|
#4 |
|
Участник
|
Прошу прощения, невнимательно скопировала код.
setService - это моя функция, где объявляется crm сервис. Код: public CrmService setService(CalloutUserContext userContext)
{
RegistryKey regCrm = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\MSCRM");
string crmServerUrl = (string)regCrm.GetValue("ServerUrl");
string crmWebServiceUrl = crmServerUrl + (crmServerUrl.EndsWith("/") ? "": "/")+ "2006/crmservice.asmx";
CrmService serv = new CrmService();
serv.Credentials = System.Net.CredentialCache.DefaultCredentials;
serv.Url = crmWebServiceUrl;
serv.CallerIdValue = new CallerId();
serv.CallerIdValue.CallerGuid = userContext.UserId;
return serv;
} |
|
|
|
|
Похожие темы
|
||||
| Тема | Ответов | |||
| Сообщение от другого пользователя | 38 | |||
| Как ускорить время отправки письма пользователю? | 6 | |||
| Как послать из CRM напоминалку в OUTLOOK | 7 | |||
| Почему не создается сообщение? | 0 | |||
|