Mycroft-core: Solicitação de recurso: Integre o IFTTT ao núcleo

Criado em 15 mar. 2018  ·  9Comentários  ·  Fonte: MycroftAI/mycroft-core

278 foi incorretamente rotulado como uma "habilidade". Para fazer o IFTTT funcionar, será necessário alterar o código dentro do núcleo para implementar o protocolo IFTTT e fazer uso da API no mínimo (pode haver algumas partes menores que também devem ser adicionadas) e não apenas criar alguns "habilidade". Ter o IFTTT integrado ao núcleo pode tornar a criação de habilidades muito mais rápida e fácil, pois já existe muito trabalho feito no mundo do IFTTT para add-ons para conectar dispositivos / funções / serviços incompatíveis. Um ponto de partida que vejo ao pesquisar as páginas do Github do IFTTT seria seu exemplo de ifttt-api . Eu pessoalmente não sei o suficiente para integrá-lo, mas fico feliz em ajudar de outras maneiras (depuração, pen-test, etc.)

hard For Voting Enhancement - proposed

Comentários muito úteis

@DarthSpock @tsdorsey Obrigado por sua sugestão sobre este.

Internamente, há algum tempo discutimos a implementação do suporte a IFTTT. É algo que queremos fazer a longo prazo (18-24 meses ou mais), mas não faz sentido para nós fazer isso agora por vários motivos:

  • Há um alto custo mensal para fornecer um canal IFTTT na plataforma. O tamanho de nossa base de usuários não torna este um investimento sensato no momento - mas nossa base de usuários está crescendo em torno de 1.200 usuários por mês, então, com o tempo, esse gasto faz mais sentido.

  • Como @DarthSpock aponta corretamente, há muito mycroft-core que teria que ser escrito para implementar o protocolo IFTTT, e muito desse trabalho, como você afirma corretamente, estaria no lado da API do coisas.

  • Uma das peças _mais importantes_ que também precisaríamos considerar não é técnica. Nosso ponto de diferenciação em um mercado de IoT muito lotado e fragmentado é o prêmio de privacidade que oferecemos. Não bisbilhotamos o que você está dizendo para que possamos vender-lhe anúncios ou produtos. Os controles de privacidade na plataforma IFTTT também precisam ser igualmente rigorosos para que possamos proteger a privacidade de ponta a ponta. Não estou dizendo que não , mas é algo que precisamos garantir.

  • Também estamos considerando um ecossistema baseado em blockchain . Este é outro ponto de diferenciação do IFTTT. Sim, estando totalmente aberto aqui, revirei os olhos na primeira vez que começamos a conversar sobre isso internamente, mas quanto mais pensamos sobre isso, mais faz sentido, usando uma prova de aposta ou modelo de prova de trabalho.

Todos 9 comentários

@KathyReid Podemos obter algum feedback da equipe Mycroft sobre isso? Você estaria aberto a isso ou pertence a uma habilidade por enquanto?

@DarthSpock @tsdorsey Obrigado por sua sugestão sobre este.

Internamente, há algum tempo discutimos a implementação do suporte a IFTTT. É algo que queremos fazer a longo prazo (18-24 meses ou mais), mas não faz sentido para nós fazer isso agora por vários motivos:

  • Há um alto custo mensal para fornecer um canal IFTTT na plataforma. O tamanho de nossa base de usuários não torna este um investimento sensato no momento - mas nossa base de usuários está crescendo em torno de 1.200 usuários por mês, então, com o tempo, esse gasto faz mais sentido.

  • Como @DarthSpock aponta corretamente, há muito mycroft-core que teria que ser escrito para implementar o protocolo IFTTT, e muito desse trabalho, como você afirma corretamente, estaria no lado da API do coisas.

  • Uma das peças _mais importantes_ que também precisaríamos considerar não é técnica. Nosso ponto de diferenciação em um mercado de IoT muito lotado e fragmentado é o prêmio de privacidade que oferecemos. Não bisbilhotamos o que você está dizendo para que possamos vender-lhe anúncios ou produtos. Os controles de privacidade na plataforma IFTTT também precisam ser igualmente rigorosos para que possamos proteger a privacidade de ponta a ponta. Não estou dizendo que não , mas é algo que precisamos garantir.

  • Também estamos considerando um ecossistema baseado em blockchain . Este é outro ponto de diferenciação do IFTTT. Sim, estando totalmente aberto aqui, revirei os olhos na primeira vez que começamos a conversar sobre isso internamente, mas quanto mais pensamos sobre isso, mais faz sentido, usando uma prova de aposta ou modelo de prova de trabalho.

Eu votaria positivamente usando um ecossistema baseado em blockchain, mas não tenho certeza de que isso invalidaria a obtenção de suporte para IFTTT. Honestamente, eu só quero poder usar o Mycroft com Alexa, Google, Siri e qualquer outra IA disponível. Como esta é a única IA de código aberto, usá-la para obter o controle dos proprietários liberaria os usuários para comprar os dispositivos que desejassem e ainda seria capaz de controlá-los centralmente via IFTTT. E isso faz sentido financeiramente sobre a plataforma IFTTT. Definitivamente disposto a esperar por isso e torcer para que faça parte do próximo dispositivo.

Além disso, se você está pensando em considerar o blockchain, o quão profundamente enraizado está o Deep Learning no núcleo do Mycroft? Considerando como a IA atual funciona agora, esta é uma arena que precisará de melhorias por algum tempo para todas as implementações de IA atuais e futuras (de código aberto ou de outra forma). Já existe um robô cidadão da Arábia Saudita .

Portanto, dois pontos aqui;

  • Para o ponto do ecossistema baseado em blockchain - precisaríamos descobrir como o ecossistema faria interface com o IFTTT, por exemplo, você precisaria de um token Mycroft para usar o Mycroft com Alexa, Google ou Siri? Ou esses serviços consumiriam o token Mycroft se recebessem uma solicitação do Mycroft? Ainda há muito o que trabalhar por lá.

  • Para o ponto de aprendizado profundo - aprendizado profundo e aprendizado de máquina não fazem parte de mycroft-core , no entanto, eles fazem parte de vários outros pacotes de software no ecossistema Mycroft. O mecanismo preciso do Wake Word usa uma rede neural para distinguir entre o que é Wake Word e o que não é, enquanto a camada de texto em fala do Mimic 2 usa uma rede neural para treinar modelos de voz.

Eu tenho acompanhado a questão da cidadania de Sophia por um tempo - e o que me espanta é que em um país como o KSA, uma IA recebe cidadania, mas sua população feminina acaba de conseguir o direito de dirigir. _Também_ precisamos considerar profundamente as questões de diversidade e inclusão junto com o aprendizado de máquina.

Não tenho experiência com IFTTT, você poderia me dar algumas idéias de como isso seria usado dentro do mycroft-core.

Você quer dizer suporte para acessar certos webhooks no IFTTT a partir de habilidades ou há mais que podemos fazer, como permitir que o IFTTT acione o Mycroft?

Também nunca desenvolvi com IFTTT, mas estou pensando um pouco nos dois. Eu não esperaria necessariamente que uma habilidade desenvolvida especificamente para Mycroft trabalhasse em um Echo Dot, embora isso fosse legal, mas eu esperaria chamar o Echo Dot e todas as suas habilidades de Mycroft via IFTTT. Na verdade, a melhor comparação em que posso pensar é a nova edição do Echo Dot Kids na pré-encomenda . Você deveria dar uma olhada, coisas muito legais para crianças. Há um vídeo que mostra um pouco do que Mycroft deve ser capaz de fazer via IFTTT.

@DarthSpock Acho que Mycroft poderia ser um consumidor de gatilhos IFTTT sem essas mudanças profundas e provavelmente dentro dos limites de uma habilidade "tradicional". Então, apenas para maior clareza, você está propondo que uma instância Mycroft se torne um ponto de extremidade IFTTT completo com ações e gatilhos? Se for esse o caso, ainda não estou convencido de que construí-lo no núcleo seja a única maneira (nem a melhor). Eu proporia uma "ponte" de execução local que pudesse escutar eventos IFTTT e, em seguida, injetar no barramento de mensagem Mycroft. Tipo de colocar essas duas ideias juntas:
https://platform.ifttt.com/docs#1 -set-up-your-environment
https://community.mycroft.ai/t/can-i-have-mycroft-auto-run-a-skill/1844/5

Acho que depende de cada caso de uso. Algumas pessoas podem querer um endpoint de IFTTT completo, enquanto outras querem apenas alguma compatibilidade. Ajudaria se outras pessoas contribuíssem com a finalidade de usar o IFTTT.

Eu, pessoalmente e profissionalmente, adoraria ser capaz de ter a habilidade
para se comunicar de um lado para outro com meus dispositivos compatíveis com IFTTT e meu Picroft;
especialmente porque o bebê deles só pode se abrir para IFTTT. eu tenho
várias lâmpadas "wi-fi" meticulosas que são de 1ª / 2ª geração e não suportam
atualizações bem - muito caro para substituí-los todos porque eles são
por toda a casa e individualmente as lâmpadas são caras devido ao
conjunto de recursos disponíveis. Em geral, IFTTT parece ser mais compatível em
geral com o tipo de dispositivos "habilitados para wi-fi" Familiarizado com: ambos
velho / novo e grande / pequeno.

Sem mencionar que o próprio protocolo é mais amplamente conhecido em comparação com
as alternativas entre as massas leigas mas amigas da tecnologia que procuram construir
seus próprios SMART-home aos poucos, o que significa que os dispositivos futuros serão
frequentemente configurado para tirar vantagem disso quando os desenvolvedores são forçados a escolher 1
padrão / protocolo para gastar tempo + dinheiro + outros recursos no desenvolvimento.

Eu adoraria ser capaz de conversar e voltar, configurar uma votação ou
completo na relação cliente-host entre meus dispositivos, de modo que o
Picroft / Mycroft poderia ser o hub central: permitiria mais rápido
Implementação SMART-home em todos os dispositivos, em vez de causar um
grande fragmentação e suporte complexo pelo qual tenho que criar vários
HUBs que se comunicam com o croft [My | Py] e meus outros dispositivos IFTTT e
dispositivos não IFTTT.

No entanto, se for forçado a escolher entre receber meu bolo amanhã (Cliente + Anfitrião
Implementação [completa] em um ano ou 2) ou comendo hoje (Cliente
implementação apenas para nos dar algo com que trabalhar até que a equipe tenha
tempo / recursos para o negócio completo ou alguma outra implementação), eu seria
contente em comê-lo hoje. Ter algo para trabalhar mais cedo versus
esperando por uma data posterior que pode nem mesmo ser o que esperamos / precisamos hoje
significa que não temos que ficar parados em nossos polegares. Isso abriria a porta
para soluções ainda mais aparentemente impossíveis / complexas que poderiam tornar isso
produto desejável em ainda mais lares em todo o mundo.

Obrigado,
SeriousSoft


Sites, aplicativos e consulta:
Desenvolvedor ASP.NET, C #, VB.NET, PHP, Ruby e C ++
http://Seriussoft.com
nathan. [email protected]

Esta página foi útil?
0 / 5 - 0 avaliações