Am incercat BOTSDK de la Microsot. Destul de usor de utilizat – dupa ce te obisnuiesti cu el.
Am reusit sa configurez slack : https://infovalutar.slack.com/messages/@infovalutarbot/ , email la ignatandrei@ignatandrei.onmicrosoft.com, webchat la www.infovalutar.ro ( vedeti josul paginii) . Mai am skype …. inca un pic
Cum e codul? Destul de usurel – iata:
return new FormBuilder<InfovalutarData>() .Message("Welcome to the simple currency converter bot from the site www.infovalutar.ro made by Andrei Ignat, http://msprogrammer.serviciipeweb.ro/ ") .Field("BankName")//TODO: nameof .Message("you have chose to convert to RON",isBNR ) .Message("you have chose to convert from EUR", isBCE) .AddRemainingFields() .OnCompletionAsync(async (session, id) => { var message= session.MakeMessage(); //message.Text = await id.ConvertText(); try { message.Text = await id.ConvertText(); } catch (Exception ex) { message.Text = "Error: " + ex.Message; } await session.PostAsync(message); }) .Build();
Iar clasa InfoValutarData contine exact ce trebuie ca sa raspunda Bot-ul
[Serializable] public class InfovalutarData { [Prompt("You can choose exchange rate from {||}")] [Template(TemplateUsage.NotUnderstood, "What does \"{0}\" mean???")] [Describe("National Bank of Romania or Central European Bank exchange rates")] public Banks BankName; [Prompt("please enter a DATE when you want the exchange value")] [Template(TemplateUsage.NotUnderstood, "please enter a valid date ( simple programmer form: 1970-04-16 )")] [Describe("the date at which you want to convert the currency")] public DateTime When; [Prompt("Please enter exchange currency to convert {||}")] [Template(TemplateUsage.NotUnderstood, "please enter a valid currency {||}")] [Describe("the currency")] public Currency CurrencyPart; private async Task<string> ConvertText() { //aici se calculeaza efectiv ultimul raspuns } }
Sfaturi pentru programatori
1. Downloadati Bot Framework Emulator de la http://download.botframework.com/botconnector/tools/emulator/publish.htm
2. Downloadati exemplele de cod de la https://github.com/Microsoft/BotBuilder. Exemplele incep de la cel mai simplu – un echo bot – si o comanda de pizza – cu LUIS – si cu r3ecunoastere de cuvinte.Le rulati in VS ca website si le accesati prin Bot Framework Emulator. NU uitati sa schimbati ConversationId pentru rezultate noi!
3. Nu are reset la conversatii. Eu i-am resetat blobKey facindu-l dictionar dupa ConversationID si punind la null.
4. Informatiile sunt foarte detaliate la integrare. Ceea ce e nemaipomenit.
5. Daca nu aveti https la deploy ( localhost merge si fara secure) , atunci scoateti [BasicAuthentication]
6. Lucreaza pe Field-uri, nu pe proprietati( curios, asa-i?)
Observatii generale :
1. Integrarea cu slack , email si Skype vin automat facute de catre Microsoft. Tu doar trebuie sa configurezi( pentru Skype mai trebuie sa imi dea niste aprobari)
2. Inca nu are integrarea cu BD – ar merita facuta asa ceva
3. Inca nu are integrarea cu Powershell – ar merita facuta asa ceva
4. Puteti sa il rulati si de pe local sau de pe Web- nu are probleme.
Revin : ca sa incercati, accesati una din urmatoarele linkuri:
- slack : https://infovalutar.slack.com/messages/@infovalutarbot/
- trimiteti email la ignatandrei@ignatandrei.onmicrosoft.com,
- webchat la www.infovalutar.ro ( vedeti josul paginii)