Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/ksh
- # marcelo6 versao deploy
- while true;do
- #busca dados json em dweet.io ( depois direto do sistema)
- string="$(curl -s "https://dweet.io/get/latest/dweet/for/masetti" | jq -r '.with[0].content.A0')"
- echo
- echo "--------------------"
- echo "$string"
- enderecoAtual="$string"
- # extração das variaveis
- IFS="/"
- read -r ruaX modulo nivelX subdivisao cor <<< "$string"
- rua="${ruaX//[!0-9]/}"
- echo "rua sem leading zero = $rua"
- nivel="${nivelX//[!1-9]/}"
- echo "nivel = $nivel"
- lado="!"
- # calculo do tipo de rua e lado:
- #================================deu merda
- case $rua in
- "01"|"12") tipo="X" # lado Samuel
- if [[ "$modulo" =~ [AB] ]]; then lado="d"; ladoAlfa="direito"; cisTrans="trans"
- A=53;B=38;C=23;D=8;E=-7;F=-22;G=-37;H=-52; fi
- if [[ "$modulo" =~ [CDEF] ]]; then lado="e"; ladoAlfa="esquerdo"; cisTrans="cis"
- A=-53;B=-38;C=-23;D=-8;E=7;F=22;G=37;H=52; fi
- echo "passou em tipo X lado Samuel"
- echo "$cisTrans"
- PMA=186;PMB=60;PMC=60;PMD=186;PME=312;PMF=438 # DIFERENCIADO PARA AS BORDAS!
- ;;
- "02"|"03"|"04"|"05"|"08"|"09"|"10"|"11") tipo="Y" # Miolo
- if [[ "$modulo" =~ [FHJLNPRTVXZ] ]]; then lado="d";ladoAlfa="direito";cisTrans="cis"
- A=53;B=38;C=23;D=8;E=-7;F=-22;G=-37;H=-52; fi
- if [[ "$modulo" =~ [EGIKMOQSUWY] ]]; then lado="e";ladoAlfa="esquerdo";cisTrans="cis"
- A=-53;B=-38;C=-23;D=-8;E=7;F=22;G=37;H=52; fi
- if [[ "$modulo" =~ [AC] ]]; then lado="d";ladoAlfa="direito";cisTrans="trans"
- A=53;B=38;C=23;D=8;E=-7;F=-22;G=-37;H=-52; fi
- if [[ "$modulo" =~ [BD] ]]; then lado="e";ladoAlfa="esquerdo";cisTrans="trans"
- A=-53;B=-38;C=-23;D=-8;E=7;F=22;G=37;H=52; fi
- echo "Tipo Y- miolo"
- echo "$cisTrans"
- PMA=186;PMC=60;PMF=60;PMH=186;PMJ=312;PML=438 #PONTOS MEDIOS DOS MODULOS DA DIREITA
- PMB=186; PMD=60;PME=60;PMG=186;PMI=312;PMK=438 #PONTOS MEDIOS DOS MODULOS DA ESQUERDA
- ;;
- "06"|"07") tipo="Z" # lado Julio
- if [[ "$modulo" =~ [CDEF] ]]; then lado="d"; ladoAlfa="direito";cisTrans="cis"
- A=53;B=38;C=23;D=8;E=-7;F=-22;G=-37;H=-52; fi
- if [[ "$modulo" =~ [AB] ]]; then lado="e"; ladoAlfa="esquerdo";cisTrans="trans"
- A=-53;B=-38;C=-23;D=-8;E=7;F=22;G=37;H=52; fi
- echo "tipo Z - lado Julio"
- echo "$cisTrans"
- PMA=186;PMB=60;PMC=60;PMD=186;PME=312;PMF=438
- ;;
- *)echo "sem tipo aqui";;
- esac
- # a fita precisa achar o centro do modulo, PMModulo...
- case $modulo in
- A) PM=$PMA;; B) PM=$PMB;; C) PM=$PMC;; D) PM=$PMD;;
- F) PM=$PMF;; H) PM=$PMH;; J) PM=$PMJ;; L) PM=$PML;;
- E) PM=$PME;; G) PM=$PMG;; I) PM=$PMI;; K) PM=$PMK;;
- *) echo sem modulo aqui
- esac
- echo ponto medio escolhido = $PM
- #... e somar a posicao relativa de cada subModulo para achar a posicaoLed
- case $subdivisao in
- A) posicaoLed=$(($PM+$A)) ;;
- B) posicaoLed=$(($PM+$B)) ;;
- C) posicaoLed=$(($PM+$C)) ;;
- D) posicaoLed=$(($PM+$D)) ;;
- E) posicaoLed=$(($PM+$E)) ;;
- F) posicaoLed=$(($PM+$F)) ;;
- G) posicaoLed=$(($PM+$G)) ;;
- H) posicaoLed=$(($PM+$H)) ;;
- *) echo nao passo de H ainda ;;
- esac
- echo "Posicao na fita = $posicaoLed = " "$PM"" +"" $(("$posicaoLed-$PM"))"
- #espeak -v pt "vá para,rua, $rua, módulo, $modulo, nível, $nivel, letra, $subdivisao, lado, $ladoAlfa, posição, $posicaoLed, cor, $cor "
- # faltou decodificar a cor
- # lembrando que a fita tb recebe as varieveis rr gg bb caso cor nao seja enviada
- case $cor in
- VERDE) corn=1 ;;
- AZUL) corn=2 ;;
- VERMELHO) corn=3 ;;
- CIANO) corn=4 ;;
- MAGENTA) corn=5 ;;
- AMARELO) corn=6 ;;
- BRANCO) corn=7 ;;
- PRETO) corn=8 ;;
- RGB) corn=0 ;; # para upgrade
- *);;
- esac
- # vou adotar nomenclatura exemplo Rua 2 e cis Rua-3-d-trans
- curl -s "https://dweet.io/dweet/for/masetti-logistica-001-rua-$rua-$lado-$cisTrans?&nivel=$nivel&posicao=$posicaoLed&cor=$corn"&
- echo "--------------"
- sleep 1
- done
Advertisement
Add Comment
Please, Sign In to add comment