2

У меня есть две подписи электронной почты. Я использую внутреннюю подпись для всех получателей name@mycompany.com и внешнюю подпись для всех name2@notmycompany.com . На данный момент подпись по умолчанию является внутренней. Если я хочу использовать внешний, я могу вручную установить его на ленте.

Я задавался вопросом, была ли возможность позволить Outlook 365 автоматически изменять подпись, если он обнаружит, что адрес электронной почты адресата не принадлежит компании.

(Связанный вопрос для Outlook 2007)

Я попытался сделать это с помощью правила, но, похоже, подходящего правила не существует:

Правило «Применить к сообщениям, которые я отправляю» может применить действие только после того, как сообщение было отправлено (см. Следующие 2 изображения). Но мне нужно, чтобы он был активирован после того, как я вошел в адресаты.

3 ответа3

1

Вы должны быть в состоянии сделать это через правила.

Вот как создать отказ от ответственности, который добавляется в конец всех сообщений, отправляемых внешним получателям (руководство отсюда):

  1. На панели управления Exchange выберите «Управление моей организацией»> «Управление почтой»> «Правила».
  2. Нажмите Новый. Введите следующую информацию в окне New Rule:
  3. Нажмите «Дополнительные параметры…»
    1. Если ... Выберите «Получатель…» и «является внешним / внутренним». В окне «Выбор области действия» выберите «За пределами организации» и нажмите «ОК».
    2. Выполните следующие действия. Выберите «Добавить заявление об отказе к сообщению…» и «Добавить заявление об отказе».
  4. Нажмите «Ввести текст…», чтобы ввести текст заявления об отказе, и нажмите «ОК».
  5. Нажмите Выбрать один…, чтобы указать запасное действие, определяющее, что вы хотите сделать, если заявление об отказе не может быть применено к сообщению. Возможные варианты: «Wrap», «Ignore» и «Reject». Действие по умолчанию - «Обтекание».
    1. Чтобы узнать больше об этих параметрах, см. Действия с резервом.
    2. Когда вы закончите, нажмите ОК.
  6. Чтобы добавить исключения из правила, чтобы отказ от ответственности не применялся к конкретным сообщениям, нажмите «За исключением, если…». Например, чтобы указать конкретных пользователей, выберите «Отправитель…» и «Является ли это лицо» или «Является ли участник этого группа «. Полный список доступных исключений см. В разделе Условия и исключения для правил транспорта.
  7. Имя правила. Примите имя по умолчанию или введите уникальное описательное имя для правила.
  8. Нажмите Сохранить.
1

Ответ - нет. Вам нужно придумать какое-то нестандартное решение или поискать стороннее приложение, чтобы помочь. Я немного огляделся и не нашел решения, которое бы порекомендовал. Другим способом было бы взглянуть на более мелкие инструменты маркетинговой интеграции - они могут позволить вам составлять сообщения и отправлять их с избранными подписями на основе "кампании" - просто назначьте определенных пользователей кампании, и сгенерированные вами сообщения получат нижний колонтитул (или что-то еще) Вы хотите ввести.

Вернуться к возможному варианту кодирования

Здесь есть строка форума, которая может помочь ( https://social.msdn.microsoft.com/Forums/en-US/9cfedfdf-b7a8-442d-96b8-a5cf5a149673/adding-outlook-signature-using-ole-automation? форум = isvvba ).

Они используют ниже, чтобы получить доступ к файлам подписи.

shell = new ActiveXObject("WScript.shell"); 
user_name = shell.ExpandEnvironmentStrings("%USERNAME%");  
fso =  new ActiveXObject("Scripting.FileSystemObject");
signatureTextStream = fso.OpenTextFile("C:\\Documents and Settings\\" + user_name + "\\Application Data\\Microsoft\\Signatures\\" + user_name + "." + file_ext, 1);
signatureContents = signatureTextStream.ReadAll();
signatureTextStream.Close();

Если вы объедините это с логикой для чтения получателей - вы сможете получить рабочее решение для себя.

Источник: https://msdn.microsoft.com/en-us/library/office/ff868695.aspx

Sub GetSMTPAddressForRecipients(mail As Outlook.MailItem) 
    Dim recips As Outlook.Recipients 
    Dim recip As Outlook.Recipient 
    Dim pa As Outlook.PropertyAccessor 
    Const PR_SMTP_ADDRESS As String = _ 
        "http://schemas.microsoft.com/mapi/proptag/0x39FE001E" 
    Set recips = mail.Recipients 
    For Each recip In recips 
        Set pa = recip.PropertyAccessor 
        Debug.Print recip.name & " SMTP=" _ 
           & pa.GetProperty(PR_SMTP_ADDRESS) 
    Next 
End Sub

Если у меня будет какое-то время - я постараюсь собрать это в рабочее решение, но если кто-то еще опубликует это для вас, это тоже будет здорово. В противном случае, надеюсь, это приведет вас на правильный путь.

-1

Не уверен, что вы все еще ищете решение, но я думаю, что Crossware Mail Signature может вам помочь.

Он действует как дополнение к Office 365, которое применяет вашу подпись в облаке каждый раз, когда вы отправляете электронное письмо. Вы можете легко создавать определенные правила подписи, чтобы иметь различную подпись для внутренних и внешних пользователей (и в основном для любых правил, которые вы можете придумать). Имеет полное централизованное управление.

Надеюсь, это поможет. Не стесняйтесь проверить это здесь - http://www.crossware.co.nz/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .