Aggiungere una Hero Card - RetiSpA/botler GitHub Wiki

Aggiungere una Hero Card

Aggiungere una Hero Card è molto semplice, va creata la seguente classe, prendiamo un esempio di una classe già presente in Botler:

    public class SendMenuDipendentiCard : SendHeroCard
    {
        public override Attachment CreateAttachement()
        {
            var heroCard = new HeroCard()
            {
                Title = "Botler - Area Riservata -",
                Subtitle = "Menu riservato ai dipedenti di Reti S.p.A, ecco le principali azioni:",
                Buttons = new List<CardAction> {

                    new CardAction(ActionTypes.PostBack, "Parcheggio Aziendale", value: CommandParking),
                    new CardAction(ActionTypes.PostBack, "QnA e F.A.Q Aziendale", value: CommandQnA),
                    new CardAction(ActionTypes.PostBack, "Outlook - Mail e Calendar - ", value: CommandOutlook),
                    new CardAction(ActionTypes.PostBack, "Ticket Supporto", value: Supporto),
                },

            };

            return heroCard.ToAttachment();
        }
    }

Quindi basterà implementare solo il metodo abstract nella classe SendHeroCard con le CardAction che vogliamo inserire.

E Aggiungere come abbiamo già visto con altre classi, il controllo nella relativa classe Factory

    public class SendAttachmentFactory
    {
        public static ISendAttachment FactoryMethod(string menu)
        {
            ...

            if (menu.Equals(MenuDipedenti))
            {
                return new SendMenuDipendentiCard();
            }
           
            ...
        }
}

Dove MenuDipedenti è una stringa che rappresenta la relativa HeroCard

⚠️ **GitHub.com Fallback** ⚠️