Microsoft BotFramework for private apps - c#

I would like to use Microsoft Bot Framework to build a chatbot for an app that I am building, and I do not want it to be working in Skype, Facebook or any other channels.
Is that possible? And are there are cost involved.

If you are going to connect your bot into your own chat application, best way is to use Direct Line Rest API. So disable everything except Direct Line
For an example about how you can use Direct Line API please refer this link.
Another important thing is to use Bot Framework V3. Not the previous
versions. The team made changes in the new version by implementing
enhancements for the future. So those features and structure are much different
than previous versions.
This means V1 is deprecated, meaning almost all of your code would need to be rewritten for V3.
There is no cost for you to enable or disable any channels right now. In the below picture, Bot Framework Developer Portal gives you the full control to add new channels or delete them from you bot.

Related

Facebook integration with Windows C# UWP Program

I have a Windows C# UWP Application that was integrated with Facebook (It allowed users to post Greetings card images into their timeline) and previously used the Sharing Charm feature between Windows UWP apps. Facebook removed the sharing functionality from their app some time ago so I now need to recode the functionality using a Facebook SDK but don't know quite where to start.
First question is what is the best API to use, as there seems to be multiple options. I have seen "winsdkfb" and also "facebook" but all the documentation I have seen seems well out of date. Could someone point me to the best Nuget API and an up to date tutorial?
My app is coded for UWP Win 10 Build 14393 and Id rather not go through a whole rebuild into something like .Net Core at this stage as its a big complex app.

How can I ask for a location into a waterfall dialog?

I am programming a chatbot in .Net Core 2.1.
I want to ask the user for a location such as here. But in my conversation, I use a waterfall dialog (from Microsoft.Bot.Builder.Dialogs) and there is no Location Prompt in this library. So my question is, is it possible to use this code into a waterfall dialog? If yes, does anyone have an idea about how to do it?
Thank you for your time
Short answer: No. That repo uses BotBuilder V3 and Waterfall Dialogs are in V4. However, there is a V4 version available in a different repo.
Long answer: The BotBuilder-Location Repo uses BotBuilder V3, which is pretty outdated. If you want to build a bot with that prompt in V3, the BotBuilderLocation Samples and the BotBuilder V3 Samples should help.
That being said, I highly highly recommend against building a new bot in V3--there are fewer features and much more limited support and documentation.
Prompting for Location in V4
First, I recommend taking a look at BotBuilder Community Extensions. These are unofficial extensions to the Bot Framework. There' actually already a Location Dialog available, which is the same as you linked, but ported to V4. It has samples and very good instructions to get it running within a Waterfall Dialog.
Additionally, Virtual Assistant does something very similar in its Point of Interest Dialog, that you can look at for an additional example.
If you're wanting a much simpler prompt for location, I recommend reading the Prompt Users for Input docs. I'm not sure what your experience level is, but this is a good place to start for a beginner.

How to connect firebase to C# Windows based app

I want to connect my C# windows based app to firebase realtime database. Is there any convenient library to do the same? or is there any better method to do so?
From this link here you can say that FirebaseDatabase.net is better than another older library like FireSharp and FirebaseSharp :
They both have their imperfections, specifically related to realtime streaming.
For example, when we subscribe to a location, and a change happens to some nested node, FireSharp won’t correctly pair it with the top level entity and will only return the path and data as a string. We want the deserialization to be automatic.
FirebaseSharp‘s streaming implementation is even more unfortunate — at first, it fetches everything from a given location (even when we specify filtering options) and does the filtering locally. This is obviously not usable when there are thousands of items.
Also, neither of them targets Universal Windows Platform.
Firebase for Windows is not release ready yet. We have a C++ library and a C# library for firebase and both of them support Windows. But a quick look at the support pages will show you that Firebase is only supported for Android, iOS and Web. The desktop version of Firebase API's is a beta feature and is not recommended for shipping. You can integrate it but you are not supposed to ship it. I would recommend going through Firebase alternatives instead of shipping your product with Firebase and waiting for the desktop version to be out of beta for you to ship it.
Following the instruction here.
It might help you.
He's using Google.Cloud.Storage and Google.Cloud.Firestore to make connect and retrieve data from collection.

Google Analytics for Desktop Application

I wanted to have analytics for my upcoming alpha release so I can analyse how the program gets used, how often errors occur and so on.
Implementing an own approach of such is quite difficult and time consuming. Today I saw that the developers of the game "Rust" have implemented Google Analytics to track session times, average framerates based on system architecture and so on. So obviously desktop applications can use GA for that.
Now I did some research and I haven't found out anything. I have the C# assembly for Analytics V3 but I don't get how I can use it to report any data. I created a Developers Console project and added the Analytics API to the project.
But now? Analytics has only Website or Mobile App properties, authentication has only website, server or mobile apps but nowhere is something mentioned about desktop apps.
I've seldom seen such well undocumented features. Not even google spits out helpful information about the usage. All tutorials I can find are about ASP.Net websites and hence not helpful.
Does anybody know how this works? Is there any support planned on the part of Google? Is it even allowed (I guess so if Rust's developers use it)?
Thanks for any help!
You can use a packaged lib available on NuGet which does most of the heavy lifting of sending data to google analytics. The lib uses performance protocol as mentioned by #osowskit.
Here is the link to one of them. Its open sourced so you can modify the code to your needs.
https://www.nuget.org/packages/GoogleAnalyticsTracker/
Source - https://github.com/maartenba/GoogleAnalyticsTracker
Rust game is based on Unity and Google has created Google Analytics Plugin for Unity that "...allows game developers to easily implement Google Analytics in their Unity games on all platforms, without having to write separate implementations.". That is probably what Rust developers are using.
The closest support for non-Unity desktop applications you can get from Google is Analytics Measurement Protocol which allows you "to send raw user interaction data directly to Google Analytics servers". That data could be visited screens/views, events, exceptions etc...For the comprehensive protocol description see Developer Guide.

List of features supported by the Lync SDK in UISuppressionMode

I'm currently developing a custom Lync client. I need full control over the UI.
If possible could anyone provide a list of all the supported features of Lync client's SuppressionMode API?
i.e. Desktop sharing? File Transfer? Docking of the VideoChannel? Instance messaging? etc..
-- Edit: New info
As it says here in the link below:
With these lower-level API’s we can implement our own client but it has now become a much larger task. Things that were for free, are now very big implementations we must develop ourselves rather than customize:
Does this mean that there is a way to use\access these advanced API features, and what's left is the development of the custom user controls?!
I don't know of any definitive list of supported features, but I can comment based on work i've done in the past:
Supported in UI Suppression mode:
IM
Presence
Audio (to Lync and PSTN)
Video (A video window can be docked into your WPF/WinForms app)
Contact Management
Accessing A/V devices
Setting Note
Conferencing (IM/AV)
Context Channel
NOT supported in UI Suppression mode:
Sharing (Desktop/Application/Powerpoint/Whiteboard/Poll/File)
I'm sure there are other features I've left out - if theres anything specific you're interested in, leave a comment and i'll update the answer.
I don't really understand the second part of your question i'm afraid.

Categories