Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/googleworkspace/google-chat-samples
Chat Bot Samples for Google Chat.
https://github.com/googleworkspace/google-chat-samples
apps-script bot chatbot-framework chatbots cloud-functions google-chat google-workspace hangouts java javascript node node-js nodejs python samples
Last synced: about 1 month ago
JSON representation
Chat Bot Samples for Google Chat.
- Host: GitHub
- URL: https://github.com/googleworkspace/google-chat-samples
- Owner: googleworkspace
- License: apache-2.0
- Created: 2018-02-07T17:51:03.000Z (almost 7 years ago)
- Default Branch: main
- Last Pushed: 2024-09-27T23:07:21.000Z (about 2 months ago)
- Last Synced: 2024-09-30T14:01:23.434Z (about 1 month ago)
- Topics: apps-script, bot, chatbot-framework, chatbots, cloud-functions, google-chat, google-workspace, hangouts, java, javascript, node, node-js, nodejs, python, samples
- Language: JavaScript
- Homepage: https://developers.google.com/chat/concepts/apps
- Size: 1.81 MB
- Stars: 491
- Watchers: 37
- Forks: 250
- Open Issues: 66
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# Google Chat code samples
This repository contains the code samples for
[Google Chat apps](https://developers.google.com/chat).
There are folders of samples dependent on language and platform. Generally
the Java and Python samples live in each respective directory, but JavaScript
has multiple form factors (client-side, server-side/Node.js, Google Apps
Script [also server side], and Cloud Functions [GCP or Firebase]).Which JS platform you choose depends on the type of app application you're
using/writing. Apps Script features tighter integration with Google Workspace data and
applications, while Google Cloud Functions has a tighter integration with Google
Cloud Platform services and APIs. Finally, mobile apps or mobile web apps are
more likely to want to take advantage of Cloud Functions for Firebase. It is
also generally straightforward to port from one JS implementation to another,
for example, to Node.js.In each folder, you can find a language-specific implementation of the
one or more of the following code samples:- **Basic app**: This app receives event notices and messages from Google
Chat and responds synchronously with simple text responses. This sample
demonstrates how to create an HTTP endpoint app using
[Google App Engine](https://cloud.google.com/appengine/).
- **Basic async app**: This app receives event notices and messages from
Google Chat and responds asynchronously with simple text responses. The
responses will appear in the same thread that raised the original event or
message. This sample is an HTTP endpoint app built upon
[Google App Engine](https://cloud.google.com/appengine/).
- **Pub/Sub app**: This app uses
[Google Cloud Pub/Sub](https://cloud.google.com/pubsub/) to receive messages
from Google Chat. The app responds back to Google Chat asynchronously.
- **Card app**: This app receives event notices and messages from Google
Chat and responds synchronously with a
[card-formatted](https://developers.google.com/chat/concepts)
response. This sample is an HTTP endpoint app built upon
[Google App Engine](https://cloud.google.com/appengine/).
- **Vote app**: This app demonstrates updating interactive cards by providing
a platform whereby users can vote on topics, such as who can do lunch today,
who wants to play ball at lunch, etc. Samples can feature images or be
text-only.For additional details about how to set up and run each sample, consult the
README file included with the sample.**Note**: The Google Chat application, and the developer platform, are only
available to Google Workspace accounts. You will not be able to develop or test a app
with an @gmail.com account.## Contributing changes
See [CONTRIBUTING.md](CONTRIBUTING.md).
## Licensing
This is not an official product.
This library is licensed under Apache 2.0. Full license text is available in
[LICENSE](LICENSE).