@botpress/messaging-client
TypeScript icon, indicating that this package has built-in type declarations

1.2.2 • Public • Published

Botpress Messaging Client

An HTTP client to make requests to the Botpress Messaging Server and receive webhook events using Express

Installation

Requires Node.js 16

yarn add @botpress/messaging-client
npm install @botpress/messaging-client
pnpm add @botpress/messaging-client

Basic Usage

Initialize the client and respond to messages

// ensure your Express app has the json middleware
app.use(express.json())

// initialize client with your credentials
const client = new MessagingClient({
  clientId: 'my-client-id',
  clientToken: 'my-client-token',
  webhookToken: 'my-webhook-token'
})

// listen for webhook events by providing an express router
client.setup(router)

// register callback method for incoming messages and respond to user
client.on('message', async (e) => {
  await client.createMessage(e.conversationId, undefined, { text: `Hello I'm a bot!` })
})

More Events

The Messaging Server also produces these webhook events

client.on('user', async ({ userId }) => {
  console.log(`new user: ${userId}!`)
})

client.on('started', async ({ userId, conversationId, channel }) => {
  console.log(`new conversation started by ${userId} on ${channel} : ${conversationId}!`)
})

client.on('feedback', async ({ userId, conversationId, channel, messageId, feedback }) => {
  console.log(
    `feedback given by ${userId} on ${channel} in convo ${conversationId} on message ${messageId} : ${feedback}!`
  )
})

/@botpress/messaging-client/

    Package Sidebar

    Install

    npm i @botpress/messaging-client

    Weekly Downloads

    1,719

    Version

    1.2.2

    License

    AGPL-3.0

    Unpacked Size

    60.6 kB

    Total Files

    26

    Last publish

    Collaborators

    • chsir17
    • botpress-cloud-ops
    • eff
    • michael.masson
    • slvnperron
    • spgingras
    • franklevasseur