Skip to main content

ChatBot API wrapper for https://public-api.travitia.xyz/talk

Project description

Travitia Talk

Async ChatBot API wrapper for https://public-api.travitia.xyz/talk

Installation

Travitia Talk is available on PyPi

pip install travitia_talk

Getting API key

Usage

Interactive session

python -m travitia_talk

Basic usage

import travitia_talk as tt

API_KEY = "SECRET_KEY"

chatbot = tt.ChatBot(API_KEY)
response = await chatbot.ask("How are you?")
print(response)
# I'm doing okay, you?

await chatbot.close()

Emotions

Travitia Talk supports multiple emotions

import random

emotion = random.choice(list(tt.Emotion))
response = await chatbot.ask("How are you?", emotion=emotion)

Contexts

It is possible to add context to query for more accurate answers (up to 2 answers currently). By default library uses in-memory context, but it is possible to define your own by using travitia_talk.Context.

Context looks up previous queries using an identifier. In case of discord bot this could be user id. Example:

@bot.command
async def cb(self, ctx, *, text: str):
    response = await ctx.bot.chatbot.ask(text, id=ctx.author.id)

    await ctx.send(response.text)

Custom session

It is possible to use custom aiohttp session with configured timeouts and other settings.

from aiohttp import ClientSession, ClientTimeout
import travitia_talk as tt

API_KEY = "SECRET_KEY"

chatbot = tt.ChatBot(API_KEY, session=ClientSession(timeout=ClientTimeout))

Custom API URL

In case URL gets changed for some reason or library adds support for other backends it is possible to overwrite API URL:

import travitia_talk as tt

API_KEY = "SECRET_KEY"

chatbot = tt.ChatBot(API_KEY, api_url="https://paid-api.travitia.xyz/talk")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

travitia_talk-0.0.1.tar.gz (6.8 kB view hashes)

Uploaded Source

Built Distribution

travitia_talk-0.0.1-py3-none-any.whl (11.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page