If you enjoy my Google Workspace Apps Script work, please consider buying me a cup of coffee!
TSFormBot is an Apps Script powered Google Form Hangouts Chat Bot which creates form submission webhook notifications for Hangouts Chat Rooms.
👉 For an overview, see this blog post.
Use with G Suite for Business | Use with G Suite for Education |
TSFormBot has been upgraded to include form responses.
SUPPORTED | GOOGLE FORM ELEMENT |
---|---|
✔️ | Short Answer |
✔️ | Paragraph |
✔️ | Multiple Choice |
✔️ | Checkboxes |
✔️ | Dropdown |
✔️ | Linear Scale |
✔️ | Multiple Choice Grid |
✔️ | Checkbox Grid |
✔️ | Date |
✔️ | Date/Time |
✔️ | Time |
✔️ | Duration |
❌ | File Upload |
Important:
👉 Forms with the 'collect respondents' email addresses' option enabled will display the form submitter email in the bot notification.
👉 Form responses for elements containing images will only display associated text in the bot notification.
Looking for the previous version of TSFormBot? See v1.
New Install
- Create a new Google Form
- From within the new form, select the More (three dots) > Script editor menu
- Delete the code in
Code.gs
from the script editor - Click on the
Untitled project
project name, and rename toTSFormBot
- Copy and paste the code into the script editor
- Select the menu File > Save all
- Close the Script editor window
- Reload the Form
Upgrade an Existing TSFormBot
- Open existing TSFormBot enabled Google Form
- From within the form, select the More (three dots) > Script editor menu
- Delete the code in
Code.gs
from the script editor - Copy and paste the code into the script editor
- Select the menu File > Save all
- Select the Run > Enable new Apps Script runtime powered by V8 (if V8 is not already enabled)
- Select the Edit > Current Project's Triggers
- Delete any existing project
From form - On form submit
triggers (click the More > Delete trigger menu to the right of each trigger to delete) - Close the Project Triggers window
- Close the Script editor window
- Reload the Form
❔ Prefer to install the TSFormBot - Kitchen Sink Demo?
- Login to Google Drive
- Access the TSFormBot - Kitchen Sink Demo
- Click the Use Template button. This will copy the form to Google Drive.
Access the Hangouts Chat Room Webhooks
- Go to Hangouts Chat
- Select the desired Hangouts Chat room (or create a new one)
- Select the dropdown for the room
- Select Configure webhooks
Add a Webhook
- Select + ADD WEBHOOK
Enter a Webhook Name
- Enter a webhook name
- (Optional) Enter an Avatar URL
- Click Save
Important:
👉 Multiple TSFormBot enabled Google Forms can be used to provide notifications to a single Google Hangouts Chat Room. Be sure to use descriptive webhook names to disguish multiple bots.
Make a Copy of the URL
- Click the Copy button to make a copy of the webhook URL
Enable TSFormBot
- Open the form and wait for the menu to fully load
- Select the TSFormBot menu
- Select the Enable Bot menu
- Complete the Google authoriation prompts if enabling TSFormBot for the first time and then re-run the Enable Bot menu.
Enter the Webhook URL
- Enter the full Webhook URL copied in Make a Copy of the URL step above
- Click Ok
- Click Ok when configuration complete
- Submit an entry to the form
- A new form submission notification post will be made to the Hangouts Chat room
Important:
👉 If the notification timestamp does not accurately reflect the correct timezone, ensure the Apps Script timezone is configured appropriately. The Apps Script timezone can be changed by opening the Form’s Apps Script editor (More menu (three dots) > Script editor) and altering the timezone under the Apps Script editor File > Project properties menu.
-
Multiple TSFormBot enabled Google Forms can be used to provide notifications to a single Google Hangouts Chat Room.
-
Check the Apps Script Dashboard for execution errors if TSFormBot does not work as expected.
-
TSFormBot may not be appropriate for all Google Forms.
TSFormBot License
© Laura Taylor (github.com/techstreams). Licensed under an MIT license.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.