СМС уведомления из Dynamics CRM

12.09.2017 10:48:00
Решение для создания SMS-визитки из Dynamics CRM.

Сейчас очень много готовых решений, позволяющих отправлять SMS-визитки. Часть из них оправляют сообщения прямо с сотового телефона менеджера.
Но в нашем случае, сообщения должны были оправляться с общего телефонного номера. Контактные данные менеджера, сообщение и номер телефона подтягиваются из карточки интереса или контакта, в зависимости от сценария работы. В качестве CRM системы используется Microsoft Dynamics CRM, SMS хостингом выбран оператор сотовой связи Билайн.

Для реализации были выполнены следующие работы:

    1. Сформированы тексты уведомлений с учётом данных и ограничений на количество символов на русском языке;

    2. Создан веб сервис по отправке SMS, упрощающий работу с плагином;

    3. Написан плагин на Visual Studio.

Пример кода плагина:


namespace SMS

{

public class Sms : CodeActivity

{

[Input("ProneNumberIn")]

[Default("8888888888")]

public InArgument<string> ProneNumberIn { get; set; }

[Input("Manager")]

[Default("Манеджер")]

public InArgument<string> Manager { get; set; }

protected override void Execute(CodeActivityContext executionContext)

{

ITracingService tracingService = executionContext.GetExtension<ITracingService>();

WorkflowContext context = executionContext.GetExtension<IWorkflowContext>();

IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>();

IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);

string Phone = this.ProneNumberIn.Get(executionContext).ToString();

string Owner = this.Manager.Get(executionContext).ToString();

SMS_tools_web.SMS_Tools client = new SMS_tools_web.SMS_Tools();

client.SendMessageHttp(Phone, "Ваш менеджер: "+ Owner, "soapUI");

}

}

}