@openworkspace/chat
v0.1.1
Published
Google Chat API client for spaces and messages
Maintainers
Readme
@openworkspace/chat
Google Chat API client for OpenWorkspace -- spaces, messages, direct messages.
Part of the OpenWorkspace monorepo.
Install
npm install @openworkspace/chat @openworkspace/coreUsage
import { createHttpClient } from '@openworkspace/core';
import { listSpaces, sendMessage, createDirectMessage } from '@openworkspace/chat';
const http = createHttpClient({ auth: { accessToken: 'token' } });
// List spaces
const result = await listSpaces(http);
if (result.ok) {
for (const space of result.value.spaces ?? []) {
console.log(space.displayName, space.name);
}
}
// Send a message to a space
await sendMessage(http, 'spaces/SPACE_ID', { text: 'Hello team!' });
// Send a direct message
await createDirectMessage(http, { text: 'Hey Alice!' }, 'users/USER_ID');API
All functions take an HttpClient as the first parameter and return Result<T, E>.
Spaces
listSpaces(http, options)-- List spacesgetSpace(http, spaceName)-- Get a spacecreateSpace(http, space)-- Create a named spacefindSpace(http, displayName)-- Find a space by name
Messages
listMessages(http, spaceName, options)-- List messages in a spacegetMessage(http, messageName)-- Get a messagesendMessage(http, spaceName, message)-- Send a messageupdateMessage(http, messageName, message)-- Update a messagedeleteMessage(http, messageName)-- Delete a message
Direct Messages
createDirectMessage(http, message, userId)-- Send a DMlistDirectMessages(http, userId)-- List DM spaces
