Git Product home page Git Product logo

google-chat-poll's Introduction

Google Chat Poll Bot

StyleCI Github Action Scrutinizer Quality Score Coverage Status Quality Gate Status Reliability Rating Maintainability Rating Security Rating Duplicated Lines (%) Vulnerabilities Technical Debt Lines of Code

Absolute Poll is a productivity software that enables you to create polls and make quick decisions within Chat.

Screenshots:

form message

This application has been installed more than 150k times. It is the number one and the only working poll app in the Google Apps Marketplace.

For anyone who is interested, you can install my application using the following URL: https://workspace.google.com/marketplace/app/absolute_poll/687007803052

I also have a landing page for the application, although I must admit it was created more out of necessity for Google's review requirements rather than as a serious component: https://absolute-poll.yaskur.com/

Original Feature:

  • Create poll
  • Record vote
  • Doesn't using any database. (Vote records are saved in chat message)

What I updated are:

  • Upgrade Card v1 to Card v2
  • Unit Test (ready to TDD)
  • Save voter names
  • Anonymous vote
  • Add more option after poll is created
  • Migrated to Typescript
  • Close the poll
  • Schedule close poll

Todo:

  • Multiple choice vote(1 user can vote on more than 1 choice)
  • Duplicate Poll
  • Save state to database
  • Schedule poll
  • Other features (suggest me please...)
  • Deno or Cloudflare worker support (hopefully can)
  • Porting to Golang (will create another repo)

Limitation:

Tips: You can test the json file on tests/json folder to https://gw-card-builder.web.app/ to view the output of the application.

This code just my learning code. That's why I don't directly migrate to TypeScript or Golang in early stage. I just want to learning nodejs and google chat apps. Feel free if you have suggestion or advice for this apps and codes.

google-chat-poll's People

Contributors

dependabot[bot] avatar dyaskur avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

google-chat-poll's Issues

Fedex

Fedex has actually placed their fedex account in with my Gmail accounts and when I try to remove it a note pops up informing if I remove it I'd loose everything from my phone. Contacts, photos, etc. I have been trying and begging for them to remove it but instead they are probably going to deactivate my account. That is wrong

Allow users to close a poll after its creation.

Currently, the poll remains open indefinitely for voting once it's created. Allowing the option to close the poll would help users prevent changes to decisions after a choice has already won.

Can´t use Absolute Poll

I've created a space in Google Business Chat to work with my team. It is made up of external people as well. When I publish a poll from the Absolute Poll or Polly app, a message appears and does not allow my external collaborators to participate in the survey (Which have an account with a domain "[email protected]"). I would like to solve this problem, I attach an image of the red message that appears.
problema de encuesta

Option to vote for more options in a poll!

Often, we require chat members to vote for multiple options in a poll, rather than just one. For a single question with up to four options, members should have the flexibility to select one, two, three, or even all four options.

Bali is not a country and is actually in Indonesia

In a helper, the bot says:

Hi there! I'm capable of assisting you in generating polls that can boost collaboration and streamline decision-making through Google Chat™.
Below is an example commands:
/poll - You will need to fill out the topic and answers in the form that will be displayed.
/poll "When should we schedule our team days?" "Monday" "Tuesday" "Wednesday" - to create a poll with autofill
Alternatively, you can create poll by mentioning me with question and answers. e.g @Absolute Poll "Which is the best country to visit" "Indonesia" "Bali"
We anticipate that you'll find our service valuable, and please don't hesitate to get in touch if you have any questions or concerns.

However Bali is not a country and is actually in Indonesia.
Just change it in src/helpers/helper.ts on line 42

I voted! Thank you for explaining me the core reason of this issue

          I voted! Thank you for explaining me the core reason of this issue

On Mon, Sep 4, 2023 at 4:47 PM Muhammad Dyas Yaskur <
@.***> wrote:

You can also vote on the issue to make google faster to resolve it:

https://issuetracker.google.com/issues/297141187


Reply to this email directly, view it on GitHub
#18 (comment),
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAU4PC37VQQQPKADSNIQGATXYW5UBANCNFSM6AAAAAA4ITJGIA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Originally posted by @ArjumandBano in #18 (comment)

Help

          Help

I needed bf

Add the ability to schedule poll

We often conduct polls on a weekly or monthly basis, typically creating them manually. However, there are instances when we forget to do so. Introducing a scheduling feature for polls would be highly beneficial.

Allows polls to automatically close at specified times

We've introduced the ability to manually close polls with feature #5. Now, let's enhance the functionality by adding the option to automatically close polls at specified times, which will be determined by the expiration time input in the poll form configuration.

Allow to save default config

Related to issue #13, it's essential to implement the saving of default configurations.

Currently, the default poll configurations are as follows:

Is anonymous (default: false)
Is allowed to add options (default: true)
Is allowed to close (default: allowed for the creator)
These defaults are hardcoded, and it's crucial to enable the ability to save default configurations on a per-chat space basis.

This implementation may require a change in the Terms of Service (TOS) because it needs a new storage mechanism to store the default configurations. As of now, the app doesn't store any data in our database. The database itself is within chat messages, which are not visible to us.

Hi

This is Mohammad noorzai

Poll Edit

Is it possible to edit poll once submitted?

Can I create a poll via API?

Hello,

is there a way to create polls via API? This could help me until the scheduled polls are available.

Thank you for this app!

Friend

[Hi my name is Felicia](i am and hookup girl please u like me please comment)

External Participants - Google Chat/Absolute Poll

I have external participants in Google Chat/Spaces. They are unable to participate in Absolute Polls when we post. Can the Absolute Poll app be used by external members? If so, is there a permission that needs to be given?

long option is truncated with ellipsis

Hello there,

I'm wondering if the option with long content is intended to be truncated with ellipsis. e.g.
image

Could it be rendered with multiline instead?

Thank you.

Add the ability to vote multiple choice

Currently, each user is limited to voting for just one choice or option. We have received numerous requests from users to allow multiple choices to be selected.

fix: I'd like to ask Dyaskur.

Hello, I am a Korean who is using Google Chat's voting function created by Dyaskur.
First of all, thank you for distributing such a good feature for free. I have a favor to ask of you.
Allow additional voting options

I hope the default value of this option is not checked.
This option is because it is better for users to experience unconfirmed use.
You may also cancel voting by /poll. In that case,
I would like you to change it so that there are no chat messages left.
I propose after careful consideration. Please reply after reviewing it. Thank you.

Fail in scheduler to close the poll

Hello

Here in Brazil, where our time zone is GMT -3, automatic closing does not work.
The scheduler doesn't save the set value.

Thank you

Add the ability to duplicate the poll.

At times, we need to recreate polls with the same topic and options. Allowing duplication of the poll would simplify the process for users looking to create identical or similar polls.

Improve the poll state message storage

Currently, the poll state (database) is saved within the button parameters of each poll choice. This means that if the poll has 5 choices, the database size will be 5 times larger. Similarly, if the poll has 10 choices, the database size will increase by a factor of 10. For example, if the state size is 2KB, having 10 choices will result in a total size of 20KB.

I believe this can be improved by saving the state in only one field. We can either choose to save the state in the first choice exclusively or consider using the 'name' field of the card message:

{
  "header": {
    "object": {
      "CardHeader"
    }
  },
  "sections": [
    {
      "object": {
        "Section"
      }
    }
  ],
  "cardActions": [
    {
      "object": {
        "CardAction"
      }
    }
  ],
  "name": "string"
}

As per the documentation, please note that this field will not appear in the actual message visible to users."

This approach should help optimize the database size while maintaining functionality.

Awesome chat space.

Hi, I'm not the most socialized person, my name is Neo. My brothers are somewhat famous in IT for working at Blue Tongue computer games company, though after my little brother Simon went there, it shut down. Some of my media stunts are very famous. I was a huge fan of the a-moral Tomb Raider game because in fact I am a female, contrary to popular international belief. Mary Shelly was a writer who published using a male identity also known as pen name as she was a pioneer and more easily accepted as a male. Later, her real name became known and she is now very famous for writing Frankenstein. (however she's already dead)

I'm a huge supporter of google as the winner against Stephan my big brother who is a bastard relative of Bill Gates. Not everything has to be their way, they are silly people. It's easy to write a program that overrides the expectation that you have to write http://www. everytime you use the internet. Why not combine it with an internet directory? Well, I'd love to discuss how to make a better internet directory and looking forward to digging up directories that have already been created. Maybe google will helps us get more programs installed in general operating systems which work better. Perhaps it is a myth that all operating systems should be compatible...lets chat

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.