2016-03-31 18 views
8

Nie jestem pewien, jak radzić sobie z bogatymi treściami. Niektóre przykłady, które chcę zwrócić, to lista hiperłączy lub miniatury obrazów. Jak mam to zrobic? Próbowałem sformatować mój tekst jako HTML, który rozbił Emulator Botów i spowodował, że klient Web Chata wyświetlał tylko kodowany kod HTML.Jak radzić sobie z bogatymi treściami za pomocą Microsoft Bot Framework?

Czy jest jakiś sekret tej lub jakiejś dokumentacji wyjaśniającej to?

+0

Tak, jest dokumentacja, ale powodzenia w znalezieniu bit, który mówi, rzeczywiście, jak je zaimplementować . Znalazłem to: https://docs.botframework.com/en-us/csharp/builder/sdkreference/activities.html, który pokazuje, jakie są przeceny, ale NIE pokazuje, jak zaimplementować go w swoim kodzie. Dokumentacja Microsoft jest nieprzydatna i gówniana. – blueprintChris

Odpowiedz

10

Markdown. Bot Framework konwertuje Markdown na bogate formaty natywne dla każdego kanału.

Niektóre kanały obsługują jeszcze bogatszą treść za pośrednictwem pola ChannelData (na przykład, możesz wysłać Slack Cards za pośrednictwem naszego kanału Slack w polu ChannelData), ale wszystkie nasze kanały robią dobrze dla tego kanału, jeśli wysyłasz Markdown.

EDIT: docs tutaj: http://docs.botframework.com/connector/message-content/#the-text-property-is-markdown

+1

Zaktualizuj odpowiedź, aby zawierała przykłady, ponieważ zmieniła się zawartość tego linku. (Z tego względu zazwyczaj odradza się dodawanie wyłącznie linku bez przykładów). – BrainSlugs83

+0

To sprawia, że ​​radzenie sobie z treściami wielowierszowymi, które obejmują < > itp., Jest bardzo trudne. Musisz rozdzielić każdą linię, otoczyć ją tylnymi odbiciami i wysłać dwa znaki EOL dla każdej linii. Byłoby o wiele ładniej, gdybyśmy mogli umieszczać elementy ; przynajmniej spróbuj obsłużyć wypłatę "smakową z githubem" preformatowaną wielowierszową (3 odciski). –

+0

Tak, potrzebujesz przykładu! Dokumentacja jest absolutnie przerażająca - niektóre z najgorszych w okolicy. Nie podaje żadnych prawdziwych przykładów i po prostu generalnie mało pomocne. Naprawdę myślę, że ludzie z Microsoftu nawet nie znają siebie. – blueprintChris

7

można znaleźć odnośnik GitHub za pomocny:

https://guides.github.com/features/mastering-markdown/

Style    Markdown Description Example 
Bold    **text** make the text bold 
Italic    *text*  make the text italic  
Header1-5   # H1  Mark a line as a header 
Strikethrough  ~~text~~ make the text strikethrough 
Hr     ---   insert a horizontal rule  
Unordered list  *   Make an unordered list item 
Ordered list  1.   Make an ordered list item starting at 1 
Pre     `text`  Preformatted text(can be inline)  
Block quote   > text  quote a section of text 

link    [bing](http://bing.com) 
image link   ![duck](http://aka.ms/Fo983c)  

Note kanały będą się różnić, co podzbiorem obniżki ich wspierać.

+0

+1, to było bardziej pomocne (ponieważ zawartość wciąż tam była) - nie zdawałem sobie sprawy, że "przecena" była standardową rzeczą, więc dzięki za to. - Ale proszę zaktualizuj swoją odpowiedź tak, aby zawierała przykłady, a nie tylko link (odpowiadanie na takie linki jest ogólnie odradzane). – BrainSlugs83

0

https://docs.botframework.com/en-us/core-concepts/channeldata przykład przywiązanie https://api.slack.com/docs/message-attachments trzeba zmienić źródło i przywiązanie skrętu w poniższym kodzie. jestem w stanie poradzić sobie z bogatej dokumentu luzu przekazać ten luźny przykład z bogatej zawartości z ram bot Microsoft

enter code here 
bot.dialog('/', function (session) { 

    session.send('Looking into your upcoming flights to see if you check-in on any of those...'); 
    var card = { 
    slack: { 
    "attachments": [ 
     { 
      "fallback": "Required plain-text summary of the attachment.", 
      "color": "#36a64f", 
      "pretext": "Optional text that appears above the attachment block", 
      "author_name": "Bobby Tables", 
      "author_link": "http://flickr.com/bobby/", 
      "author_icon": "http://flickr.com/icons/bobby.jpg", 
      "title": "Slack API Documentation", 
      "title_link": "https://api.slack.com/", 
      "text": "Optional text that appears within the attachment", 
      "fields": [ 
       { 
        "title": "Priority", 
        "value": "High", 
        "short": false 
       } 
      ], 
      "image_url": "http://my-website.com/path/to/image.jpg", 
      "thumb_url": "http://example.com/path/to/thumb.png", 
      "footer": "Slack API", 
      "footer_icon": "https://platform.slack-edge.com/img/default_application_icon.png", 
      "ts": 123456789 
     } 
    ] 
} 
} 
var msg = new builder.Message(session).sourceEvent(card); 
session.send(msg); 
});