2.4.2 • Published 2 months ago

@grammyjs/storage-deta v2.4.2

Weekly downloads
-
License
MIT
Repository
github
Last release
2 months ago

Deta.sh Base storage adapter for grammY

Storage adapter that can be used to store your session data on Deta.sh Base when using sessions.

Installation

Node

npm install @grammyjs/storage-deta --save

Deno

import { DetaAdapter } from "https://deno.land/x/grammy_storages/deta/src/mod.ts";

Introduction

Set up your Deta Base by creating a Deta project. Copy the Project Key to here.

You should now have:

  1. A project key for your Deta.sh project.
  2. A Telegram bot token.

Put those values into the following example code:

Usage

You can check examples folder.

Example of a message counter bot running on Deno:

import {
  Bot,
  Context,
  session,
  SessionFlavor,
} from "https://lib.deno.dev/x/grammy@1.x/mod.ts";
import { DetaAdapter } from "https://deno.land/x/grammy_storages/deta/src/mod.ts";

// Define session structure
interface SessionData {
  count: number;
}
type MyContext = Context & SessionFlavor<SessionData>;

// Create the bot and register the session middleware
const bot = new Bot<MyContext>(""); // <-- Put your Bot token here.

bot.use(session({
  initial: () => ({ count: 0 }),
  storage: new DetaAdapter<SessionData>({
    baseName: "session", // <-- Base name - your choice.
    projectKey: "", // <-- Project Key here.
  }),
}));

// Use persistant session data in update handlers
bot.on("message", async (ctx) => {
  ctx.session.count++;
  await ctx.reply(`Message count: ${ctx.session.count}`);
});

bot.catch((err) => console.error(err));
bot.start();
2.4.2

2 months ago

2.4.1

5 months ago

2.3.2

8 months ago

2.4.0

7 months ago

2.3.1

8 months ago

2.3.0

11 months ago

2.2.0

1 year ago

2.1.4

1 year ago

2.1.3

1 year ago

2.1.1

1 year ago

2.1.0

1 year ago

2.0.2

1 year ago

2.0.0

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago