apyb / associados

Controle de associados a Associação PythonBrasil
https://associacao.python.org.br/
105 stars 50 forks source link

Cadastrar/Excluir associado do grupo apyb-associados@googlegroups.com #88

Closed osantana closed 8 years ago

osantana commented 11 years ago

Verificar a viabilidade (via API do Google) de inscrever/remover um membro da apyb-associados.com.

gileno commented 11 years ago

Seria algo automático? Ex: ter em algum lugar a data máxima que a taxa deve ser paga caso o pagamento não seja feito, a remoção ser feita. Ou algo manual mesmo, uma tela exibindo que está em atraso, selecionar e remover do google group?

henriquebastos commented 11 years ago

Algumas referências que podem ser úteis:

Is there an API gor Google Groups? Google Groups and Google Apps Script

osantana commented 11 years ago

Oi @gileno,

Automático seria o melhor. Manual a gente até tem como fazer de forma simples: receber e-mails de pagamento/desativação. Mas isso não tira o trabalho manual que é um dos objetivos desse sistema.

gileno commented 11 years ago

Fiz um fork, vou estar na Python Nordeste fica mais fácil fazer/discutir com a galera.

andrewsmedina commented 11 years ago

Olá @osantana, como o @henriquebastos demonstrou através dos links. Não há uma api oficial para o google groups. E as não oficiais [0] suportam apenas operações de leitura. =/

A única alterativa (que alguns projetos já fazem [1]) é fazer o cadastro usando automação através de um browser.

O que acham?

Se curtirem podemos usar o splinter para isso.

[0] - https://developers.google.com/apps-script/reference/groups/ [1] - https://github.com/auzigog/google-groups-php-api

turicas commented 11 years ago

Essa tarefa não é a mesma que https://github.com/pythonbrasil/apyb.gerenciamento/issues/18 ? Devemos fechar lá? :)

osantana commented 11 years ago

Mais ou menos... a pythonbrasil/apyb.gerenciamento#18 fala sobre 'limpar' a atual lista de associados do grupo. Esse ticket trata sobre tentar automatizar esse processo a partir de agora.

osantana commented 11 years ago

Oi @andrewsmedina,

É por isso que criei esse ticket. Imaginava que não existisse um modo 'oficial' para fazer isso e por isso espero sugestões de como poderíamos fazer isso.

Nao tenho certeza se rola com splinter porque acho que tem um captcha no meio do caminho... Mas posso estar enganado.

andrewsmedina commented 11 years ago

@osantana vou criar um grupo fake e testar as alternativas.

Mas se nenhuma delas rolar, o que podemos fazer é listar os associados não ativos que ainda estão no grupo, para auxiliar na remoção manual.

LuizArmesto commented 11 years ago

O Google só provê API para esse tipo de coisa para clientes do Google Apps (Business, Education ou ISP).

Via interface web, para adicionar um usuário ele pede captcha, para remover não (não testei remover em massa para ver se corre o risco dele suspeitar ser bot).

O que talvez dê para fazer é sobrescrever as permissões de postagem (na interface fica em "Actions -> Set posting permission") e de recebimento ("Actions -> Change delivery setting") do usuário que não estiver em dia, usando o splinter, e quando tiver quitado retorna as configurações.

A opção de sobrescrever a permissão de postagem funciona sem problema mesmo com a interface web acessível aos membros, ele não consegue postar nem pela interface nem via email. A opção de alterar o recebimento de emails pode ser revertida pelo usuário se a interface web estiver acessível, mas se a interface estiver acessível ele pode ler as mensagens por ela de qualquer forma, daí só removendo mesmo, já que também não dá para usar "roles" personalizados para definir quem tem acesso de leitura ou não.

Essa automação parece meio complicada mesmo.

osantana commented 11 years ago

Existe alguma alternativa ao Google Groups que ofereceria isso? Podemos pensar nessa alternativa também, não?

Também temos um Google Apps operando os emails @python.org.br no caso de ser necessário

LuizArmesto commented 11 years ago

Pro caso do Google Apps, as referências para API são:

Configuração do grupo: https://developers.google.com/google-apps/groups-settings/v1/reference/groups Gerenciamento de membros: https://developers.google.com/admin-sdk/directory/v1/reference/members

adorilson commented 11 years ago

@osantana Instalar um Mailman da vida não pode ser essa alternativa?

osantana commented 11 years ago

tem algum serviço que oferece isso 'hosted'? é complicado manter infra de e-mail/listas...

gileno commented 11 years ago

@osantana o http://outlook.com/ tem um serviço gratuito para gerenciar e-mails, parecido com o google apps, é uma solução gratuita já que agora o google apps é pago

osantana commented 11 years ago

nós já temos um google apps gratuito mas não um serviço de 'grupos' parecido com o Google Groups.

gileno commented 11 years ago

@osantana entendi

renatooliveira commented 11 years ago

@andrewsmedina conseguiu testar alguma alternativa com o splinter?

andrewsmedina commented 11 years ago

@renatooliveira não tem como automatizar isso =/

filipecifali commented 8 years ago

Fechando a issue em resposta retornada pelo @andrewsmedina, se existir alguma forma de criar ela hoje, deve ser reaberta ou aberta uma nova discutindo a implementação para tal.