Как добавить правило активации в качестве контекстной надстройки, если в теле письма есть ссылка

Как добавить правило активации в качестве контекстной надстройки, если в теле письма есть ссылка

<a href="https://www.abcedf.com/go/?3A%2F%2FsteD%3D" target="_blank">
<span >
<img blockedimagesrc="https://www.abcedf.com/files/blue_lock.png">
 Message 
</span>
</a>

и это правило не работает как контекстная надстройка

>     <Rule xsi:type="ItemIs" FormType="Read" ItemType="Message" />
>         <Rule xsi:type="ItemHasRegularExpressionMatch" PropertyName="BodyAsHTML" RegExName="BodyFilter"
> RegExValue="https://www\.abcedf\.com/go"  />

3 ответа

В регулярных выражениях косые черты ("/") являются разделителями, поэтому их необходимо экранировать:

https:\/\/www\.abcedf\.com\/go

Кстати, это регулярное выражение тривиально - похоже, все, что вы хотите сделать, это точное совпадение строки.

К сожалению, контекстное выделение не поддерживается в сценарии, который вы упомянули.

Пожалуйста, обратитесь к https://dev.office.com/docs/add-ins/outlook/contextual-outlook-add-ins, заголовок раздела Как запустить контекстную надстройку

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

-Когда сущностью является URL или адрес электронной почты

-Когда манифест надстройки имеет правило с type="ItemHasRegularExpressionMatch" и PropertyName="BodyAsHTML" или PropertyName="SenderSMTPAddress"

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

Для подобных сценариев вы можете использовать правило ItemHasKnownEntity. "Известные объекты" - это предварительно определенные элементы, которые Outlook распознает автоматически. Это избавляет вас от необходимости создавать сложные регулярные выражения, которые сложно написать и еще сложнее отладить.

Правило ItemHasKnownEntity для вышеуказанного URL может быть

<Rule xsi:type="ItemHasKnownEntity" 
EntityType="Url" 
RegExFilter="abcdef"
FilterName="abcdef"
IgnoreCase="true" />
Другие вопросы по тегам