Tempo estimado: 15 minutosPré-requisitos: Conta Twilio Conta Cloudinary Conta Thinged.io ThingRaspberry Pi RPi Camera
Bem, guiá-lo através da criação de sua primeira peça e como pensar em estruturá-la, para que você possa criar suas próprias extensões para a plataforma Thinged.io.0: Configure seu Raspberry Pi com Thinged.
ioVeja seu Raspberry Pi para tirar uma fotoCarregue a foto para CloudinaryEnvie um MMS usando TwilioWrap upCrie as contas necessárias e obtenha todas as chaves e tokens de APIDepois de criar suas contas Twilio e Cloudinary, você pode obter seus IDs de conta e tokens de acesso em seus respectivos painéis: 2. Configure seu Raspberry Pi com os pré-requisitos do Python: Agora que você criou suas contas, precisamos instalar os requisitos no Raspberry Pi para comunicação com Cloudinary e Twilio. sudo apt-get install python3-pippip3 install --user cloudinarypip3 install --user twilioDone.
2. Configure sua câmera Raspberry PiHabilite seu módulo de câmera Raspberry Pis através do raspi-config:sudo raspi-configSelecione Opções de Interface, depois Câmera e habilite-o. Reinicie seu Raspberry Pi.
Teste sua câmera:raspistill -v -o test.jpg3. Teste o script no seu Raspberry PiWeve criou um github gist que você pode usar para tirar essas fotos.
Baixe este script no seu Raspberry Pi e edite as seguintes variáveis:cloudinary_cloud_namecloudinary_api_keycloudinary_api_secrettwilio_account_sidtwilio_auth_tokentwilio_from_numberphone_number upload_photo_to_cloudinary(photo_file_name) que envia uma foto com o nome fornecido.send_mms(to, message, media_url) que envia uma foto sua usando o Twilio.
4. Criando o Thinged. io PartAssim como o script python era um wrapper fino em torno do Cloudinary e Twilio, o Thinged é um wrapper fino em torno dos comandos do shell.
Uma coisa é composta de partes que são apenas estados que podem ser obtidos e configurados por meio de comandos de linha de comando. O texto retornado do comando forma a base das partes get e os espaços reservados são usados para entrar em argumentos nos comandos set. A parte que estamos criando se parece com o seguinte: Há muitas chaves diferentes lá, mas não se preocupe - na verdade é bem simples.
Eu dividi os parâmetros abaixo: humanName nome amigável que você pode usar para identificar a part.description descrição amigável para que você possa descobrir como funciona e adicionar outros detalhes. partId gerou aleatoriamente uma string que coisa.
io usa para identificar a parte, e você usa na API para definir valores nela.type Qualquer entrada, saída ou inputOutput define se a parte é usada para obter o estado da sua coisa, definir o estado da sua coisa ou uma combinação dos dois (você pode configurá-lo, mas pode mudar em outro lugar e deve ser lido). As entradas requerem getCommand , as saídas requerem setCommand.
setCommand O comando que será lançado ao definir um valor. Aqui apenas aponta para o nosso script python. Adicionar valor a isso será substituído em todos os lugares pelo valor das partes quando você definir comandos por meio da API.
O script python terá que ser carregado no raspberry pi por outros meios.valueType Isso pode ser número, string ou estado. Como mencionado anteriormente, o Thinged é essencialmente um wrapper fino para comandos de linha de comando e, portanto, tudo é traduzido em strings na linha de comando.
valueType é importante para qualquer GUI que queira apresentar detalhes sobre o estado de uma peça. Aqui, valueType é state, o que implica que há um número discreto de state, e eles podem ser enumerados em valores. Isso permite que a GUI apresente um bom botão para 2 partes de estado e uma lista suspensa para 3 ou mais partes de estado.
estados Cada estado representa uma possibilidade discreta diferente. Como o Thinged.io só acionará um conjunto quando um valor for alterado, aqui os estados discretos são duplicados um do outro, mas com valores diferentes.
regexes Útil para partes de entrada ou saída de entrada onde você gostaria de pré-processar a resposta do comando. Crie esta parte, seja por meio do portal da Web ou por meio da API. a partir daí você pode adicionar a peça à sua coisa e pronto!
Conclusão: Se você criou a parte, agora deve ficar assim na GUI: Se você carregou o script em seu pi, e outras coisas. io está em execução, tudo está feito. Agora para o pagamento: Pressione o botão!
Neste tutorial, trabalhamos com as partes de saída do thinged.io para criar uma câmera espiã com contas raspberry pi, cloudinary e twilio e 42 linhas de python mantendo tudo junto. Fique ligado para mais tutoriais sobre o thinged.
Io.
Tecnologia Co. de Shenzhen TigerWong, Ltd
Tel:86 13717037584
O email: info@sztigerwong.com
Adicionar: 1º Andar, Edifício A2, Silicon Valley Power Digital Industrial Park, No. Estrada Dafu 22, Rua Guanlan, Distrito de Longhua,
Shenzhen, província de Guangdong, China