/// <summary>
            /// Create an event filter for person.
            /// </summary>
            /// <param name="personIdOrEmail">Person id or email to be filtered.</param>
            /// <param name="personIdType"><see cref="PersonIdType"/> for personIdOrEmail filter.</param>
            public PersonFilter(string personIdOrEmail, PersonIdType personIdType = PersonIdType.Detect)
                : base("personId", personIdOrEmail)
            {
                personIdType = SparkAPIClient.DetectPersonIdType(personIdOrEmail, personIdType);

                if (personIdType == PersonIdType.Email)
                {
                    this.Key = "personEmail";
                }
            }
Exemple #2
0
        /// <summary>
        /// Appends mention to a person.
        /// </summary>
        /// <param name="personIdOrEmail">PersonId or PersonEmail to be mentioned.</param>
        /// <param name="name">Mentioned name.</param>
        /// <param name="personIdType"><see cref="PersonIdType"/> of personIdOrEmail parameter.</param>
        /// <returns>A reference to this instance after the append operation has completed.</returns>
        public MarkdownBuilder AppendMentionToPerson(string personIdOrEmail, string name, PersonIdType personIdType = PersonIdType.Detect)
        {
            personIdType = SparkAPIClient.DetectPersonIdType(personIdOrEmail, personIdType);

            switch (personIdType)
            {
            case PersonIdType.Email:
                this.markdown.AppendFormat("<@personEmail:{0}|{1}>", encodeHtml(personIdOrEmail), encodeHtml(name));
                break;

            default:
                this.markdown.AppendFormat("<@personId:{0}|{1}>", encodeHtml(personIdOrEmail), encodeHtml(name));
                break;
            }

            return(this);
        }