qccoders / slack-meetup-slash

/meetup request endpoint
MIT License
1 stars 2 forks source link

common meetup names have to be exact #14

Open mtliendo opened 6 years ago

mtliendo commented 6 years ago

Open to having a discussion around having ways to better implement adding another groups name. Currently, when typing another groups name, a user would type

/meetup next Quad-Cities-Linux-User-Group-QCLUG

This is prone to error since it must include hyphens and the urlname is typically verbose. Note that casing doesn't matter.

Is this an discoverability issue of the individual meetup group? Or possibly specify "favorites" and give them a shorter name?

jpdillingham commented 6 years ago

The groups endpoint can be used to search for meetups, but the full text search leaves something to be desired (it matches 'qclug` but not 'lug'):

https://api.meetup.com/find/groups?&sign=true&photo-host=public&zip=61264&filter=all&text=qclug&page=20

This would be easiest to implement as it can be done in a stateless way.

The ideal solution would be to add, as you suggested, the ability to alias groups:

/meetup alias add Quad-Cities-Linux-User-Group-QCLUG lug
/meetup next lug

This would add a new layer of complexity to the system as it would no longer be stateless with regard to alias persistence.

mtliendo commented 6 years ago

Creating a database to house aliases sounds like overkill.

A secondary option would be to post that information to a separate API, but the level of overhead for that doesn't quite make sense either.

I suppose in it's simplest form, writing the alias to a file that can be read from would be sufficient.

jpdillingham commented 6 years ago

It's somewhat trivial to persist data from lambda to dynamo, but iirc this is not hosted on AWS.

I think given the size of our area (in terms of meetup count) it would be feasible to fetch the entire list and perform our own full text search over the name and possibly description.

Otherwise I think a simple solution works too, perhaps commit a json file to the repo. I'd be concerned about reading and writing files from the production environment as it would likely be overwritten upon deploy

mtliendo commented 6 years ago

Next meetup, can you walk me through a lamdba/dynamo solution?

seth-wat commented 5 years ago

If the Dynamo option is still good, Serverless can be used to set this up

Let me know if this sounds like a good solution and if the endpoint to hit the api can be public