Oliv4945 / jarvis-android-app

Android app for Jarvis simple multi-lang personal assistant (http://domotiquefacile.fr/jarvis/)
MIT License
24 stars 11 forks source link

Wrong IP/port - False trigger ? #13

Closed Oliv4945 closed 7 years ago

Oliv4945 commented 7 years ago

From @benoit34000, here.

Moi j'ai un soucis, j'arrive pas a communiquer avec le plugin, je comprend pas.
le plugin jarvis-api est bien installé, il fonctionne bien avec le plugin jarvis-ui.
Par contre, je n'arrive pas a le faire communiquer avec l'apk. J'ai essayé avec mon telephone et ma tablette. J'ai des logs (cf ci-dessous), donc la requete part bien du telephone vers jarvis, mais l'appli me repond a chaque fois "verifier le port et l'ip du serveur".
Les parametres sont bon, j'ai essayer de changer le port, de mettre ou pas un cle (cote client et cote plugin, bien sur). Bref, je comprend pas..
J'ai la release v0.2.1
Et c'est normal que dans le get ou le post, on ne voit pas le contenu de ma phrase ?
Bref, j'ai du raté un truc, mais je vois pas quoi...Si vous avez une idee merci d'avance !
Benoit.

192.168.0.50 - - [08/May/2017 16:38:43] "GET /?action=get_config&key=1234567890 HTTP/1.1" 200 -
192.168.0.50 - - [08/May/2017 16:38:53] "POST / HTTP/1.1" 200 -
192.168.0.50 - - [08/May/2017 16:38:53] "GET /?action=get_config&key=1234567890 HTTP/1.1" 200 -
192.168.0.50 - - [08/May/2017 16:38:53] "GET /?action=get_config&key=1234567890 HTTP/1.1" 200 -
192.168.0.50 - - [08/May/2017 16:38:58] "POST / HTTP/1.1" 200 -
Oliv4945 commented 7 years ago

@benoit34000, vu le log de Jarvis la commande est bien reçue donc l'IP et le port sont correctement renseignés. Si tu ouvres l'adresse ci-dessous dans le navigateur des téléphones/tablettes qui posent problème, qu'obtiens tu comme réponse ? Attention à changer l'IP:port si ils ne sont pas bons

Merci

benoit34000 commented 7 years ago

Merci pour ta reactivité.

Voici le resultat de la commande "test" via un appel http dans Chrome : (Juste un detail : l'adresse IP affichée est celle du client, donc la .50, c'est l'ip du telephone, pas de jarvis)

sous Chrome sur mon telephone : ca fonctionne !

192.168.0.50 - - [09/May/2017 17:07:58] "GET /index.html?order=test HTTP/1.1" 200 - DEBUG: using cache /dev/shm/ca_fonctionne.mp3 192.168.0.50 - - [09/May/2017 17:07:58] "GET /favicon.ico HTTP/1.1" 400 - ERROR: Don't know what to do with: {}

sous chrome avec ma tablette: ca fonctionne !

192.168.0.10 - - [09/May/2017 17:09:25] "GET /index.html?order=test HTTP/1.1" 200 - DEBUG: using cache /dev/shm/ca_fonctionne.mp3 192.168.0.10 - - [09/May/2017 17:09:30] "GET /favicon.ico HTTP/1.1" 400 - ERROR: Don't know what to do with: {}

Sous l'apk jarvis v0.2.1 avec mon telephone :

192.168.0.50 - - [09/May/2017 17:10:45] "GET /?action=get_config&key= HTTP/1.1" 200 - 192.168.0.50 - - [09/May/2017 17:10:54] "GET /?action=get_config&key= HTTP/1.1" 200 - 192.168.0.50 - - [09/May/2017 17:11:03] "POST / HTTP/1.1" 200 - 192.168.0.50 - - [09/May/2017 17:11:04] "GET /?action=get_config&key= HTTP/1.1" 200 - 192.168.0.50 - - [09/May/2017 17:11:08] "POST / HTTP/1.1" 200 - 192.168.0.50 - - [09/May/2017 17:11:08] "GET /?action=get_config&key= HTTP/1.1" 200 -

Sous l'apk jarvis sur ma tablette : 192.168.0.10 - - [09/May/2017 17:11:27] "GET /?action=get_config&key= HTTP/1.1" 200 - 192.168.0.10 - - [09/May/2017 17:11:45] "GET /?action=get_config&key= HTTP/1.1" 200 - 192.168.0.10 - - [09/May/2017 17:11:59] "POST / HTTP/1.1" 200 - 192.168.0.10 - - [09/May/2017 17:11:59] "GET /?action=get_config&key= HTTP/1.1" 200 - 192.168.0.10 - - [09/May/2017 17:12:00] "GET /?action=get_config&key= HTTP/1.1" 200 - 192.168.0.10 - - [09/May/2017 17:12:04] "POST / HTTP/1.1" 200 -

J'ai un probleme de GMT (je suis pas en GMT+2, faut que je le corrige), mais je ne pense pas que ca change quoique ce soit ? Apres, je vais voir si j'arrive a trouver qq chose avec les commandes via http...

info au lancement de jarvis en ligne de commande, au cas ou : (j'ai aussi tester en desactivant un max de plugin, a l'exception de jarvis-ui et jarvis-api bien sur ;o)

------------ Config ------------ jv_branch master jv_version 17.04.30 jv_arch armv6l jv_os_name raspbian jv_os_version 8 language fr_FR play_hw hw:0,0 rec_hw hw:1,0 speaker ALSA microphone C-Media Electronics, Inc. CM108 Audio Controller recorder sox trigger_stt snowboy command_stt bing tts_engine google

DEBUG: program_startup hook Starting RestAPI server on http://192.168.0.33:8080 Starting User Interface on http://192.168.0.33:8081 DEBUG: start_speaking hook snowboy: Hello DEBUG: using cache /dev/shm/hello.mp3 DEBUG: stop_speaking hook User defined commands: [...] # j'ai supprime la liste des commandes pour pas surcharger le log Commands from plugin jarvis-api:

Commands from plugin jarvis-ui: OUVRINTERFACE* snowboy: Waiting to hear 'snowboy' benoit: (listening...) DEBUG: models=snowboy INFO:snowboy:Ticks: [2, 20, 5, -1]

Ma tablette android est en 5.0.2, mon telephone est un nexus 5 en 6.0.1

Je continue de regarder de mon cote si je vois qq chose. (je ferais un tcpdump, pour voir) Merci, Benoit.

Oliv4945 commented 7 years ago

sous Chrome sur mon telephone : ca fonctionne !

Juste pour être sur, est-ce que tu as juste ça fonctionne ou [{"answer": "Ca fonctionne!"}] ?

J'ai un probleme de GMT (je suis pas en GMT+2, faut que je le corrige), mais je ne pense pas que ca change quoique ce soit ?

Non, ça ne devrait pas. Pareil ne t'embêtes pas à désactiver les plugins je ne pense pas que ça vienne de là.

jv_version 17.04.30

Est-ce que tu pourrais essayer de mettre à jour Jarvis à jour au cas où ? Le plugin Jarvis-api aussi au passage si il n'y est pas. Je ne pense pas que ça vienne de là mais on ne sait jamais.

(je ferais un tcpdump, pour voir)

Je ne suis pas contre car là je sèche :p Si tu es root sur ton téléphone ou ta tablette est-ce que tu peux faire la procédure ci-dessous ? Sinon je te ferais une version spéciale de l'application un peu plus loquace sur les erreurs, je suis intrigué là...

(Juste un detail : l'adresse IP affichée est celle du client, donc la .50, c'est l'ip du telephone, pas de jarvis)

Effectivement, je suis allé un peu vite :-)

Extraire le LOG de Jarvis-app

- If not but you are root, you need to
  - Install [this application](https://play.google.com/store/apps/details?id=com.tortel.syslog&hl=fr)
  - Start Jarvis (wait for the crash)
  - Start Syslog, then `Take log`
  - It will allow you to send an email, inside the zip please send me the file named logcat.txt.
  - Data should be anonymous if the thickbox is checked (I did not verified) so, if you fear about it before `Take log` you can select `grep the following log:`->`All logs` and in `Grep string` field put `jarvis` (all lower case) and have should have enough info...
benoit34000 commented 7 years ago

Juste pour être sur, est-ce que tu as juste ça fonctionne ou [{"answer": "Ca fonctionne!"}]

Le complet : [{"answer": "Ca fonctionne!"}]

jv_version 17.04.30

Est-ce que tu pourrais essayer de mettre à jour Jarvis à jour au cas où ? Le plugin Jarvis-api aussi au passage si il n'y est pas. Je ne pense pas que ça vienne de là mais on ne sait jamais.

Ben... il ne me propose pas de mise-a-jour... je suis pas dans la bonne branche ? Pour jarvis-api non plus, pas de mise-a-jour en attente.

Et non, je suis pas root, desole... J'essaierai de faire le tcpdump demain, si j'ai un peu de temps. Merci, Benoit.

benoit34000 commented 7 years ago

Voici le resultat du tcpdump. la .50 c'est mon tel, la .33 c'est jarvis.

En resume, pour moi, on voit bien le trafic dans les 2 sens, donc c'est plus applicatif que reseau. Je vais essayer de re-installer le plugin jarvis-api juste pour voir...


root@raspberrypi:/home/pi# tcpdump port 8080
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes

20:54:46.942747 IP 192.168.0.50.49823 > 192.168.0.33.http-alt: Flags [S], seq 1901116420, win 65535, options [mss 1460,sackOK,TS val 1361509 ecr 0,nop,wscale 6], length 0
20:54:46.943552 IP 192.168.0.33.http-alt > 192.168.0.50.49823: Flags [S.], seq 1788449500, ack 1901116421, win 28960, options [mss 1460,sackOK,TS val 36383692 ecr 1361509,nop,wscale 6], length 0
20:54:46.945802 IP 192.168.0.50.49823 > 192.168.0.33.http-alt: Flags [.], ack 1, win 1369, options [nop,nop,TS val 1361510 ecr 36383692], length 0
20:54:46.958691 IP 192.168.0.50.49823 > 192.168.0.33.http-alt: Flags [P.], seq 1:188, ack 1, win 1369, options [nop,nop,TS val 1361512 ecr 36383692], length 187: HTTP: GET /?action=get_config&key= HTTP/1.1
20:54:46.960057 IP 192.168.0.33.http-alt > 192.168.0.50.49823: Flags [.], ack 188, win 470, options [nop,nop,TS val 36383694 ecr 1361512], length 0
20:54:46.996895 IP 192.168.0.33.http-alt > 192.168.0.50.49823: Flags [P.], seq 1:18, ack 188, win 470, options [nop,nop,TS val 36383697 ecr 1361512], length 17: HTTP: HTTP/1.0 200 OK
20:54:47.001340 IP 192.168.0.50.49823 > 192.168.0.33.http-alt: Flags [.], ack 18, win 1369, options [nop,nop,TS val 1361516 ecr 36383697], length 0
20:54:59.353229 IP 192.168.0.50.36651 > 192.168.0.33.http-alt: Flags [S], seq 2152057111, win 65535, options [mss 1460,sackOK,TS val 1362750 ecr 0,nop,wscale 6], length 0
20:54:59.354024 IP 192.168.0.33.http-alt > 192.168.0.50.36651: Flags [S.], seq 3365008396, ack 2152057112, win 28960, options [mss 1460,sackOK,TS val 36384933 ecr 1362750,nop,wscale 6], length 0
20:54:59.358458 IP 192.168.0.50.36651 > 192.168.0.33.http-alt: Flags [.], ack 1, win 1369, options [nop,nop,TS val 1362752 ecr 36384933], length 0
20:54:59.359521 IP 192.168.0.50.36651 > 192.168.0.33.http-alt: Flags [P.], seq 1:337, ack 1, win 1369, options [nop,nop,TS val 1362752 ecr 36384933], length 336: HTTP: POST / HTTP/1.1
20:54:59.360269 IP 192.168.0.33.http-alt > 192.168.0.50.36651: Flags [.], ack 337, win 470, options [nop,nop,TS val 36384934 ecr 1362752], length 0
20:54:59.370888 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [S], seq 3249892164, win 65535, options [mss 1460,sackOK,TS val 1362753 ecr 0,nop,wscale 6], length 0
20:54:59.371778 IP 192.168.0.33.http-alt > 192.168.0.50.41739: Flags [S.], seq 2334813172, ack 3249892165, win 28960, options [mss 1460,sackOK,TS val 36384935 ecr 1362753,nop,wscale 6], length 0
20:54:59.374016 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [.], ack 1, win 1369, options [nop,nop,TS val 1362753 ecr 36384935], length 0
20:54:59.374955 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [P.], seq 1:188, ack 1, win 1369, options [nop,nop,TS val 1362753 ecr 36384935], length 187: HTTP: GET /?action=get_config&key= HTTP/1.1
20:54:59.375797 IP 192.168.0.33.http-alt > 192.168.0.50.41739: Flags [.], ack 188, win 470, options [nop,nop,TS val 36384935 ecr 1362753], length 0
20:55:01.878796 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [S], seq 811783574, win 65535, options [mss 1460,sackOK,TS val 1363003 ecr 0,nop,wscale 6], length 0
20:55:01.879755 IP 192.168.0.33.http-alt > 192.168.0.50.33693: Flags [S.], seq 2604807091, ack 811783575, win 28960, options [mss 1460,sackOK,TS val 36385186 ecr 1363003,nop,wscale 6], length 0
20:55:01.881902 IP 192.168.0.50.47089 > 192.168.0.33.http-alt: Flags [S], seq 352777268, win 65535, options [mss 1460,sackOK,TS val 1363003 ecr 0,nop,wscale 6], length 0
20:55:01.882811 IP 192.168.0.33.http-alt > 192.168.0.50.47089: Flags [S.], seq 1024425996, ack 352777269, win 28960, options [mss 1460,sackOK,TS val 36385186 ecr 1363003,nop,wscale 6], length 0
20:55:01.883708 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [.], ack 1, win 1369, options [nop,nop,TS val 1363004 ecr 36385186], length 0
20:55:01.883712 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [P.], seq 1:188, ack 1, win 1369, options [nop,nop,TS val 1363004 ecr 36385186], length 187: HTTP: GET /?action=get_config&key= HTTP/1.1
20:55:01.885268 IP 192.168.0.33.http-alt > 192.168.0.50.33693: Flags [.], ack 188, win 470, options [nop,nop,TS val 36385186 ecr 1363004], length 0
20:55:01.886138 IP 192.168.0.50.47089 > 192.168.0.33.http-alt: Flags [.], ack 1, win 1369, options [nop,nop,TS val 1363004 ecr 36385186], length 0
20:55:01.886141 IP 192.168.0.50.47089 > 192.168.0.33.http-alt: Flags [P.], seq 1:337, ack 1, win 1369, options [nop,nop,TS val 1363004 ecr 36385186], length 336: HTTP: POST / HTTP/1.1
20:55:03.109293 IP 192.168.0.33.http-alt > 192.168.0.50.36651: Flags [P.], seq 1:18, ack 337, win 470, options [nop,nop,TS val 36385309 ecr 1362752], length 17: HTTP: HTTP/1.0 200 OK
20:55:03.116103 IP 192.168.0.33.http-alt > 192.168.0.50.36651: Flags [FP.], seq 18:186, ack 337, win 470, options [nop,nop,TS val 36385309 ecr 1362752], length 168: HTTP
20:55:03.137138 IP 192.168.0.33.http-alt > 192.168.0.50.36651: Flags [FP.], seq 18:186, ack 337, win 470, options [nop,nop,TS val 36385312 ecr 1362752], length 168: HTTP
20:55:03.155866 IP 192.168.0.50.36651 > 192.168.0.33.http-alt: Flags [.], ack 18, win 1369, options [nop,nop,TS val 1363131 ecr 36385309], length 0
20:55:03.155872 IP 192.168.0.50.36651 > 192.168.0.33.http-alt: Flags [.], ack 187, win 1386, options [nop,nop,TS val 1363131 ecr 36385312,nop,nop,sack 1 {18:187}], length 0
20:55:03.163248 IP 192.168.0.33.http-alt > 192.168.0.50.41739: Flags [P.], seq 1:18, ack 188, win 470, options [nop,nop,TS val 36385314 ecr 1362753], length 17: HTTP: HTTP/1.0 200 OK
20:55:03.167753 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [.], ack 18, win 1369, options [nop,nop,TS val 1363132 ecr 36385314], length 0
20:55:03.168593 IP 192.168.0.33.http-alt > 192.168.0.50.41739: Flags [P.], seq 18:53, ack 188, win 470, options [nop,nop,TS val 36385315 ecr 1363132], length 35: HTTP
20:55:03.172435 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [.], ack 53, win 1369, options [nop,nop,TS val 1363133 ecr 36385315], length 0
20:55:03.184180 IP 192.168.0.33.http-alt > 192.168.0.50.41739: Flags [P.], seq 53:90, ack 188, win 470, options [nop,nop,TS val 36385316 ecr 1363133], length 37: HTTP
20:55:03.189836 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [.], ack 90, win 1369, options [nop,nop,TS val 1363135 ecr 36385316], length 0
20:55:03.190657 IP 192.168.0.33.http-alt > 192.168.0.50.41739: Flags [P.], seq 90:1328, ack 188, win 470, options [nop,nop,TS val 36385317 ecr 1363135], length 1238: HTTP
20:55:03.194502 IP 192.168.0.33.http-alt > 192.168.0.50.41739: Flags [F.], seq 1328, ack 188, win 470, options [nop,nop,TS val 36385317 ecr 1363135], length 0
20:55:03.196867 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [.], ack 1328, win 1414, options [nop,nop,TS val 1363135 ecr 36385317], length 0
20:55:03.238169 IP 192.168.0.50.41739 > 192.168.0.33.http-alt: Flags [.], ack 1329, win 1414, options [nop,nop,TS val 1363140 ecr 36385317], length 0
20:55:03.267495 IP 192.168.0.33.http-alt > 192.168.0.50.33693: Flags [P.], seq 1:18, ack 188, win 470, options [nop,nop,TS val 36385325 ecr 1363004], length 17: HTTP: HTTP/1.0 200 OK
20:55:03.271650 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [.], ack 18, win 1369, options [nop,nop,TS val 1363143 ecr 36385325], length 0
20:55:03.272420 IP 192.168.0.33.http-alt > 192.168.0.50.33693: Flags [P.], seq 18:53, ack 188, win 470, options [nop,nop,TS val 36385325 ecr 1363143], length 35: HTTP
20:55:03.279238 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [.], ack 53, win 1369, options [nop,nop,TS val 1363144 ecr 36385325], length 0
20:55:03.282417 IP 192.168.0.33.http-alt > 192.168.0.50.33693: Flags [P.], seq 53:90, ack 188, win 470, options [nop,nop,TS val 36385326 ecr 1363144], length 37: HTTP
20:55:03.286708 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [.], ack 90, win 1369, options [nop,nop,TS val 1363144 ecr 36385326], length 0
20:55:03.290245 IP 192.168.0.33.http-alt > 192.168.0.50.33693: Flags [P.], seq 90:122, ack 188, win 470, options [nop,nop,TS val 36385327 ecr 1363144], length 32: HTTP
20:55:03.295888 IP 192.168.0.33.http-alt > 192.168.0.50.33693: Flags [FP.], seq 122:1328, ack 188, win 470, options [nop,nop,TS val 36385327 ecr 1363144], length 1206: HTTP
20:55:03.301364 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [.], ack 122, win 1369, options [nop,nop,TS val 1363146 ecr 36385327], length 0
20:55:03.303323 IP 192.168.0.50.33693 > 192.168.0.33.http-alt: Flags [.], ack 1329, win 1414, options [nop,nop,TS val 1363146 ecr 36385327], length 0
20:55:07.164192 IP 192.168.0.33.http-alt > 192.168.0.50.47089: Flags [P.], seq 1:18, ack 337, win 470, options [nop,nop,TS val 36385714 ecr 1363004], length 17: HTTP: HTTP/1.0 200 OK
20:55:07.171097 IP 192.168.0.33.http-alt > 192.168.0.50.47089: Flags [FP.], seq 18:186, ack 337, win 470, options [nop,nop,TS val 36385715 ecr 1363004], length 168: HTTP
20:55:07.197072 IP 192.168.0.33.http-alt > 192.168.0.50.47089: Flags [FP.], seq 18:186, ack 337, win 470, options [nop,nop,TS val 36385718 ecr 1363004], length 168: HTTP
20:55:07.248899 IP 192.168.0.50.47089 > 192.168.0.33.http-alt: Flags [.], ack 18, win 1369, options [nop,nop,TS val 1363541 ecr 36385714], length 0
20:55:07.249838 IP 192.168.0.50.47089 > 192.168.0.33.http-alt: Flags [.], ack 187, win 1386, options [nop,nop,TS val 1363541 ecr 36385718,nop,nop,sack 1 {18:187}], length 0
^C
56 packets captured
65 packets received by filter
9 packets dropped by kernel
benoit34000 commented 7 years ago

Stop, arretez-tout !!! ;o))) j'ai desinstallé/re-installé le plugin jarvis-api, et..... ca marche sans soucis !!! Pourtant le fichier de config etait bon ! (il marchait avec jarvis-ui). Bref, comme quoi, il faut toujours faire confiance a l'adage "dans le doute, reboot", meme si dans ce cas la, c'etait plutot "si c'est bancale, re-installe !"

Desole du coup pour le temps que je t'ai pris. J'espere que ca servira si un autre rencontrait le probleme dans le futur.

Et donc, encore une fois, merci pour ton travail sur cette appli android, c'es vraiment cool, car j'espere a terme pouvoir faire tourner jarvis dans un conteneur lxc sans avoir de micro/haut-parleur a lui coller, et pouvoir discuter avec jarvis juste avec mon telephone...

Merci a toi pour ton aide, et bonne continuation ! Benoit. (tu peux clore le icket je pense)

Oliv4945 commented 7 years ago

Bon, c'est super que ça fonctionne. Je suis quand même intrigué... j'étudierai le log demain :p

Pour le conteneur je n'ai jamais essayé mais il n'y a pas de raison que ça ne fonctionne pas: je fais tourner mon Jarvis de test sur un VPS quelque part sur le net sans micro ni haut parleur :-)

Oliv4945 commented 7 years ago

C'est bon on est demain j'ai regardé le dump. Donc le soucis venait visiblement de Jarvis-api qui ne renvoie pas la configuration malgré un code 200, le message est vide.

Jarvis-ui fonctionne car il ne se base pas sur la configuration mais l'application Android en a besoin. Je vais voir pour changer ça ! Merci pour le dump