All Projects → google → chatbase-dotnet

google / chatbase-dotnet

Licence: Apache-2.0 License
Integrate your DotNet application with Chatbase!

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to chatbase-dotnet

Spark
.NET for Apache® Spark™ makes Apache Spark™ easily accessible to .NET developers.
Stars: ✭ 1,721 (+10656.25%)
Mutual labels:  analytics, dotnet-standard
Attendance-Portal
We have developed a cutting-edge attendance recorder. Using face recognition, you can easily record attendance and have access to in-depth analysis and a wide range of functionalities. Because of the covid-19 pandemic, stringent guidelines have been established, and precautions must be made to minimise unnecessary physical encounters. As a resul…
Stars: ✭ 20 (+25%)
Mutual labels:  analytics
dapr-sidekick-dotnet
Dapr Sidekick for .NET - a lightweight lifetime management component for Dapr
Stars: ✭ 113 (+606.25%)
Mutual labels:  dotnet-standard
hubot-code-review
A Hubot script for GitHub code review on Slack.
Stars: ✭ 38 (+137.5%)
Mutual labels:  chatbot
pat-the-campfire-bot
A Campfire chat bot in node.js, intended to run on Heroku. Built for internal use at Figure53 but you might like it.
Stars: ✭ 14 (-12.5%)
Mutual labels:  chatbot
evry
Split STDIN stream and execute specified command every N lines/seconds.
Stars: ✭ 61 (+281.25%)
Mutual labels:  analytics
stocklist
Stock data collection and analysis
Stars: ✭ 27 (+68.75%)
Mutual labels:  analytics
pathling
Turn your FHIR data set into a powerful API that can be used to develop analytics applications and augment data science workflow.
Stars: ✭ 31 (+93.75%)
Mutual labels:  analytics
FSCNMF
An implementation of "Fusing Structure and Content via Non-negative Matrix Factorization for Embedding Information Networks".
Stars: ✭ 16 (+0%)
Mutual labels:  analytics
intelligo.js.org
The official website for Intelligo chatbot framework.
Stars: ✭ 18 (+12.5%)
Mutual labels:  chatbot
goatcounter
Easy web analytics. No tracking of personal data.
Stars: ✭ 2,468 (+15325%)
Mutual labels:  analytics
chess
Chess (game)(♟) built in C# and ASCII art.
Stars: ✭ 20 (+25%)
Mutual labels:  dotnet-standard
zoe
Zoe: Container Analytics as a Service -- mirror of https://gitlab.eurecom.fr/zoe/main/
Stars: ✭ 51 (+218.75%)
Mutual labels:  analytics
hastic
Hastic standalone
Stars: ✭ 37 (+131.25%)
Mutual labels:  analytics
neo4j protobot
a basic bot to evaluate using neo4j graph database as chatbot memory.
Stars: ✭ 15 (-6.25%)
Mutual labels:  chatbot
VirtualBLU
A Virtual Assistant for Windows PC with wicked Qt Graphics.
Stars: ✭ 41 (+156.25%)
Mutual labels:  chatbot
node-sparkbot-samples
Chatbot samples leveraging the node-sparkbot library for Webex Teams
Stars: ✭ 21 (+31.25%)
Mutual labels:  chatbot
timezone-bot
🌐 Timezone notifier bot for Discord
Stars: ✭ 44 (+175%)
Mutual labels:  chatbot
Daytripper
Chatbot that learns and provides map, video, and Web searches.
Stars: ✭ 14 (-12.5%)
Mutual labels:  chatbot
WebDavClient
Asynchronous cross-platform WebDAV client for .NET Core
Stars: ✭ 98 (+512.5%)
Mutual labels:  dotnet-standard

.NET Library for Chatbase

A .NET library for the Chatbase API written in C#

This is not an official Google product.

Package Information

Nuget package page

Install

Using the Package Manager Console run the following command:

Install-Package Chatbase

Account Setup

Please see the Getting Started Section for information on configuring one's account and obtaining an API key.

Using the library

One can send individual messages to the Generic and Facebook rest APIs:

Generic:

using Chatbase;

Chatbase.Client client = new Chatbase.Client();

Chatbase.Message msg = new Chatbase.Message();
msg.api_key = "123"; // required
msg.user_id = "xyz"; // required
msg.intent = "test";
msg.version = "0.1";
msg.content = "This is a test.";
msg.type = Chatbase.Message.UserMessage; // default, required
msg.not_handled = false; // default
msg.feedback = false; //default
var resp = client.Send(msg).Result; // Get the result of the async task
// Write the return status-code from the API request
Console.WriteLine(resp.StatusCode);

Facebook:

using Chatbase;

Chatbase.Client client = new Chatbase.Client();

// Agent messages
agnMsg = new Chatbase.FBAgentMessage();
agnMsg.SetRecipientID("123");
agnMsg.SetMessageID("456");
agnMsg.SetMessageContent("hey");
agnMsg.intent = "say-hello";
agnMsg.version = "0.2";
var firstTask = client.Send(agnMsg);

// User messages
usrMsg = new Chatbase.FBUserMessage();
usrMsg.SetSenderID("abc");
usrMsg.SetRecipientID("123");
usrMsg.SetMessageID("456");
usrMsg.SetMessageContent("hey");
usrMsg.intent = "say-hello";
usrMsg.version = "0.2";
var secondTask = client.Send(usrMsg);

One can send sets of messages as well to the Generic and Facebook rest APIs:

Generic:

using Chatbase;

Chatbase.Client client = new Chatbase.Client();

Chatbase.MessageSet set = new Chatbase.MessageSet("api-key");

// New messages made from the set will have the api-key already set
Chatbase.Message msg = set.NewMessage();
// ... Set fields as one would a regular message like the example above
set.Add(msg)
var task = Client.Send(set);

Facebook:

using Chatbase;

Chatbase.Client client = new Chatbase.Client();

// Agent Message Set
Chatbase.FBAgentMessageSet agnSet = new Chatbase.FBAgentMessageSet("api-key");
Chatbase.FBAgentMessage agnMsg = agnSet.NewMessage();
// ... Set fields as one would a regular FBAgentMessage
agnSet.add(agnMsg)
var firstTask = client.Send(agnSet);

// User Message Set
Chatbase.FBUserMessageSet usrSet = new Chatbase.FBUserMessageSet("api-key");
Chatbase.FBUserMessage usrMsg = usrSet.NewMessage();
// ... Set fields as one would a regular FBUserMessage
usrSet.add(usrMsg);
var secondTask = client.Send(usrSet);

Tests

Please place tests in Chatbase.Tests project directory. To run tests, from the Chatbase.Tests project directory enter the following in a command-prompt:

$ dotnet test

This requires the dotnet Core CLI tools to be installed.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].