cicciovo / homebridge-samsung-airconditioner

a script to communicate whit samsung airconditioner
23 stars 19 forks source link

Traduzione #1

Closed jetmcquack closed 5 years ago

jetmcquack commented 6 years ago

Ciao Cicciovo, ho letto dal codice che sei italiano. Ti posso aiutare con la traduzione del readme e le istruzioni in inglese se vuoi. Mi spieghi come funziona così lo provo in casa mia dove ho tre Samsung? Ciao

Francesco

cicciovo commented 6 years ago

Si certo, con piacere. Tu già hai dimestichezza con i plugin homebridge? Se è si, basta inserirlo nella cartella dei plug in. Nel mio caso in /Users/francescobosco/.npm-packages/lib/node_modules/homebridge-samsung-airconditioner Ho anche pubblicato il certificato, ack14_m.pem, la path del certificato va modificata nel codice sorgente (appena avrò un po' di tempo sistemerò tutto) nel mio caso è /User/francescobosco/Desktop/ack14_m.pem. Successivamente bisogna modificare il token per l'autorizzazione per comunicare con il condizionatore. Trovi diverse guide per trovare il token, se hai necessità dimmi così ti spiego come trovarlo. Devi anche avere jq installato nel pc (jq - Command-line JSON processor) basta digitare da shell jq --version per vedere se è già installato.... Io all'interno della cartella homebridge-samsung-ariconditioner ho anche un altra cartella chiamata node_modules al cui all'interno c'è la cartella exec che serve per inviare i comandi al condizionatore. Non sono riuscita a caricarla su GitHub (sai per caso come fare?) Cmq per metterla all'interno basta dirigerti sempre via shell all'interno della cartella homebridge-samsung-ariconditioner e digitare ppm install exec.... fammi sapere ;) e grazie

jetmcquack commented 6 years ago

Ok sono riuscito a installare jq ma non riesco ad ottenere un certificato. Ho provato con mode-Samsung-airconditioner ma quando da shell lancio node ./samsung-discovery.js non fa niente. Che comando devo usare?

cicciovo commented 6 years ago

Dovresti usare homebridge... il mio è un plug in per comunicare con HomeKit... il certificato lo trovi all interno del mio reposity, il file denominato ack14_m.pem ... per installare HomeKit ti conviene leggere la guida, è semplicissimo. Oppure basta digitare npm install homebridge

cicciovo commented 6 years ago

Lasciare stare il Samsung-discovery, nel mio clima che è più recente non funzionava quello script, per questo ne ho creato uno mio

jetmcquack commented 6 years ago

Ciao, conosco molto bene homekit, e lo uso regolarmente. Tuttavia ho configurato il tuo accessorio e plugin ma quando lo lancio mi dice

Error("The requested accessory '" + name + "' was not registered by any plugin."); ^ forse è necessario registrare la classe di accessorio "SamsungAirconditioner" in homebridge da qualche parte? non riesco a capire bene in effetti in che directory devo mettere il plugin

cicciovo commented 6 years ago

I miei accessori/plugin homebridge li metto qui Users/francescobosco/.npm-packages/lib/node_modules all interno della quale ci sono tutti gli altri plugin di homebridge

jetmcquack commented 6 years ago

purtroppo io non ho quella directory. il mio path di homebridge è Users/jetmcquack/.homebridge poi volendo ho Users/jetmcquack/.npm (al cui interno nella sua root ho gli altri plugin di homebridge) e anche Users/jetmcquack/node_modules

ti allego un print

drwxr-xr-x+  55 jetmcquack  staff   1760 Feb  5 15:27 .
drwxr-xr-x    7 root        admin    224 Sep 27 08:23 ..
-r--------    1 jetmcquack  staff      7 Sep  8  2016 .CFUserTextEncoding
drwxr-xr-x    6 jetmcquack  staff    192 May 20  2016 .CloudStation
-rw-r--r--@   1 jetmcquack  staff  34820 Feb  5 16:34 .DS_Store
drwxr-xr-x    3 jetmcquack  staff     96 Jun  9  2016 .Postecert
drwx------   22 jetmcquack  staff    704 Feb  5 15:20 .Trash
-rw-r--r--    1 jetmcquack  staff      0 Aug 25 20:57 .Trashes
drwxr-xr-x    7 jetmcquack  staff    224 Sep 21  2016 .arDigiSign
drwxr-xr-x    3 root        staff     96 Jul 14  2016 .ase
drwxr-xr-x   15 jetmcquack  staff    480 Nov 20 22:41 .atom
-rw-------    1 jetmcquack  staff  11185 Feb  5 15:39 .bash_history
drwx------   55 jetmcquack  staff   1760 Feb  5 15:39 .bash_sessions
drwxr-xr-x    4 jetmcquack  staff    128 Oct 28 19:10 .cache
drwxr-xr-x    2 jetmcquack  staff     64 Jan  5 15:37 .cgminer
drwxr-xr-x    4 jetmcquack  staff    128 Nov 23  2016 .config
drwx------    3 jetmcquack  staff     96 Mar  7  2015 .cups
drwxr-xr-x    9 jetmcquack  staff    288 Feb  5 16:28 .dike
drwx------   13 jetmcquack  staff    416 Oct 20 12:44 .dropbox
drwx------   16 jetmcquack  staff    512 Jan  3 16:12 .gnupg
drwx------   11 jetmcquack  staff    352 Sep 27 14:23 .gnupg_pre_2.1
drwxr-xr-x    6 jetmcquack  staff    192 Feb  5 15:41 .homebridge
drwxr-xr-x    3 jetmcquack  staff     96 Jun  9  2016 .hsvc_0501
drwxr-xr-x    3 jetmcquack  staff     96 Jul  2  2015 .jssc
drwxr-xr-x    3 jetmcquack  staff     96 Jan 25  2017 .kodi
drwxr-xr-x    3 jetmcquack  staff     96 Nov 23  2016 .local
-rw-r--r--    1 jetmcquack  staff   1483 Nov 23  2016 .mailcap
-rw-r--r--    1 jetmcquack  staff      0 Aug 25 20:57 .metadata_never_index
-rw-r--r--    1 jetmcquack  staff    764 Nov 23  2016 .mime.types
-rw-r--r--    1 jetmcquack  staff    360 Jul 14  2016 .mypdfsigner
drwxr-xr-x    3 root        staff     96 Sep 16  2016 .node-gyp
drwxr-xr-x  152 jetmcquack  staff   4864 Feb  5 15:41 .npm
drwxr-xr-x    5 jetmcquack  staff    160 Sep 28  2016 .oracle_jre_usage
drwx------    3 jetmcquack  staff     96 Apr 25  2015 .ssh
drwxr-xr-x    6 jetmcquack  staff    192 May 23  2015 .subversion
drwxr-xr-x    3 jetmcquack  staff     96 Jul 14  2016 .swt
drwxr-xr-x    9 jetmcquack  staff    288 May 25  2017 .wine
drwx------    8 jetmcquack  staff    256 May 25  2017 Applications
drwxr-x---    3 jetmcquack  staff     96 Jan 20  2017 Blizzard
drwxr-xr-x    4 jetmcquack  staff    128 Apr 28  2017 CoreBrightness Backup
drwxr-xr-x@  19 jetmcquack  staff    608 Feb  5 15:25 Desktop
drwx------@  22 jetmcquack  staff    704 Jan 14 01:27 Documents
drwx------@   8 jetmcquack  staff    256 Feb  5 15:20 Downloads
lrwxr-xr-x@   1 jetmcquack  staff     36 Apr 30  2017 Dropbox -> /Users/jetmcquack/Dropbox (Personal)
drwx------@   7 jetmcquack  staff    224 Apr 30  2017 Dropbox (La Scarpa del Duca)
drwx------@  26 jetmcquack  staff    832 Sep 28 14:40 Dropbox (Personal)
drwx------@  84 jetmcquack  staff   2688 Nov 18 19:16 Library
drwx------+   7 jetmcquack  staff    224 Jan  3 12:44 Movies
drwx------+   6 jetmcquack  staff    192 Oct 28 19:07 Music
drwxr-xr-x    3 jetmcquack  staff     96 Oct 31 00:18 My Games
drwx------@   5 jetmcquack  staff    160 Jun 23  2017 OneDrive
drwx------+   9 jetmcquack  staff    288 Sep 28 15:23 Pictures
drwxr-xr-x+   9 jetmcquack  staff    288 Jun  8  2016 Public
drwxr-xr-x@   2 jetmcquack  staff     64 Nov 20 19:15 Synology
drwxr-xr-x   22 jetmcquack  staff    704 Feb  5 15:51 node_modules
cicciovo commented 6 years ago

Perfetto, all'interno di Users/jetmcquack/.homebridge inserisci il file config.json e dove hai gli altri pug-in inserisci la cartella homebridge-samsung-airconditioner

jetmcquack commented 6 years ago

ottimo grazie, si è inizializzato e parte con homebridge che lo riconosce come plugin (ti allego il print).

Ora però come trovo il token e il certificato?

JetBookAir:~ jetmcquack$ sudo homebridge
[2/5/2018, 5:15:45 PM] Loaded plugin: homebridge-samsung-airconditioner
[2/5/2018, 5:15:45 PM] Registering accessory 'homebridge-samsung-airconditioner.SamsungAirconditioner'
[2/5/2018, 5:15:45 PM] ---
[2/5/2018, 5:15:45 PM] Loaded plugin: homebridge-tado
[2/5/2018, 5:15:45 PM] Registering accessory 'homebridge-tado.TADO'
[2/5/2018, 5:15:45 PM] ---
[2/5/2018, 5:15:45 PM] Loaded config.json with 1 accessories and 0 platforms.
[2/5/2018, 5:15:45 PM] ---
[2/5/2018, 5:15:45 PM] Loading 1 accessories...
[2/5/2018, 5:15:45 PM] [Climatizzatore] Initializing SamsungAirconditioner accessory...
Setup Payload:
X-HM://0023ISYWYC7OD
Scan this code with your HomeKit app on your iOS device to pair with Homebridge:                                    
Or enter this code with your HomeKit app on your iOS device to pair with Homebridge:

    ┌────────────┐     
    │ 031-45-154 │     
    └────────────┘     

[2/5/2018, 5:15:45 PM] Homebridge is running on port 51826.
cicciovo commented 6 years ago

Ottimo! Il certificato lo trovi caricato sul reposity con il nome ack14_m.pem è quello il certificato. Per il token, dammi un oretta che non sono in casa e ti faccio sapere

cicciovo commented 6 years ago

Scarica il file chiamato Server8889 ed avvialo da shell con il comando python Server8889, è un server che sta in ascolto sulla porta 8889, lascialo così, non interromperlo. Successivamente da un altra finestra del terminale digita: curl -k -H "Content-Type: application/json" -H "DeviceToken: xxxxxxxxxxx" --cert /Users/francescobosco/Desktop/ac14k_m.pem --insecure -X POST https://192.168.1.21:8888/devicetoken/request ovviamente inserisci l'indirizzo ip del tuo clima. Dai invio e accendi il clima entro 30 secondi... Oppure prima lo accendi dai invio lo spegni e lo riaccendi -.-" non ricordo precisamente la procedura. Cmq otterrai il token nell'altra finestra dove c'è il server in ascolto....

jetmcquack commented 6 years ago

ciao, ci siamo quasi. riesco a lanciare il server python che si mette in ascolto ma quando lancio il curl (modificandone i parametri ovviamente) mi restituisce questo:

JetBookAir:~ jetmcquack$ curl -k -H "Content-Type: application/json" -H "DeviceToken: xxxxxxxxxxx" --cert /Users/jetmcquack/Desktop/ac14k_m.pem --insecure -X POST https://192.168.1.31:8888/devicetoken/request
curl: (7) Failed to connect to 192.168.1.31 port 8888: Connection refused
cicciovo commented 6 years ago

Mmmmh... se digiti questo cosa ti dice? openssl s_client -connect 192.168.1.201:8888 -cert /patchAlTuoCertificato Mi puoi mettere tutto l output?

jetmcquack commented 6 years ago

certo, eccolo:

JetBookAir:~ jetmcquack$ openssl s_client -connect 192.168.1.31:8888 -cert /Users/jetmcquack/desktop/ac14k_m.pem
connect: Connection refused
connect:errno=61
cicciovo commented 6 years ago

Come sospettavo... per ogni “casa” serve un certificato diverso... io a casa mia ho due clima, ed entrambi funzionano con lo stesso certificato -.-“ adesso non ricordo esattamente come avevo fatto per ottenerlo...

cicciovo commented 6 years ago

Aspetta.... prova a fare doppio clic sul certificato, ti verrà chiesto se lo vuoi aggiungere al portachiavi... ovviamente dai l'ok!

schermata 2018-02-06 alle 18 58 12

Fammi sapere...

cicciovo commented 6 years ago

Toglimi una curiosità, la porta 8889 del tuo Mac è aperta? Basta utilizzare l utility di rete e poi andare su scansione porte tcp, ti conviene mettere un piccolo intervallo, controlla direttamente da 8888 a 8889... poi controlla anche la porta 2878, non vorrei che il tuo clima utilizzasse la porta 2878 invece della 8888

HajLender commented 6 years ago

Ciao,

questo è tradotto tramite "google traduttore"

Sono stato in grado di installare jq e curl Ho modificato index.js con il mio percorso per il certificato e il mio AC IP Ho fatto doppio clic sul certificato e inserito il portachiavi Sono stato in grado di ottenere il token e sostituirlo in index.js Ho installato npm install exec nella cartella homebridge-samsung-airconditioner Ho modificato aggiunto al mio config.json il tuo accessorio

Homebridge si avvia come al solito, ma su iPhone vedo "l'aggiornamento" su tutti i miei dispositivi homebridge e quindi nessuna risposta. Quando lo rimuovo dal mio config.json, tutto il resto funziona di nuovo.

Quando clicco su homekit sul detaul della CA, nel registro di Homebridge viene visualizzato quanto segue:

[2/6/2018, 8:26:17 PM] [Climatizzatore] Mettere modalita [2/6/2018, 8:26:18 PM] [Climatizzatore] Power function OK [2/6/2018, 8:26:18 PM] [Climatizzatore] "Dry"

[2/6/2018, 8:26:18 PM] [Climatizzatore] Dry [2/6/2018, 8:26:18 PM] [Climatizzatore] Dryazz [2/6/2018, 8:26:18 PM] [Climatizzatore] Power function OK [2/6/2018, 8:26:18 PM] [Climatizzatore] "Off"

[2/6/2018, 8:26:18 PM] [Climatizzatore] Off [2/6/2018, 8:26:18 PM] [Climatizzatore] Dryazz [2/6/2018, 8:26:18 PM] [Climatizzatore] Power function OK [2/6/2018, 8:26:18 PM] [Climatizzatore] 21

[2/6/2018, 8:26:18 PM] [Climatizzatore] Temperatura corrente: 21 [2/6/2018, 8:26:18 PM] [Climatizzatore] TEMPERTURA DESIDERTA [2/6/2018, 8:26:18 PM] [Climatizzatore] 25

[2/6/2018, 8:26:18 PM] [Climatizzatore] 25

Ma non succede niente e ogni dispositivo si sta semplicemente aggiornando senza risultati di risposta

jetmcquack commented 6 years ago

ciao, sono riuscito ad entrare sulla porta 2878!!!

questo è l'output:

JetBookAir:~ jetmcquack$ openssl s_client -connect 192.168.1.31:2878 -cert /Users/jetmcquack/desktop/ac14k_m.pem
CONNECTED(00000003)
depth=3 C = KR, O = Samsung Electronics, CN = ROOTCA
verify error:num=19:self signed certificate in certificate chain
verify return:0
---
Certificate chain
 0 s:/C=KR/O=Samsung Electronics/CN=AC14K/emailAddress=AC14K@samsung.com
   i:/C=KR/O=Samsung Electronics/CN=RemoteAccessCA(CE)
 1 s:/C=KR/O=Samsung Electronics/CN=RemoteAccessCA(CE)
   i:/C=KR/O=Samsung Electronics/CN=CECA
 2 s:/C=KR/O=Samsung Electronics/CN=CECA
   i:/C=KR/O=Samsung Electronics/CN=ROOTCA
 3 s:/C=KR/O=Samsung Electronics/CN=ROOTCA
   i:/C=KR/O=Samsung Electronics/CN=ROOTCA
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIDlzCCAn+gAwIBAgIBCDANBgkqhkiG9w0BAQUFADBIMQswCQYDVQQGEwJLUjEc
MBoGA1UECgwTU2Ftc3VuZyBFbGVjdHJvbmljczEbMBkGA1UEAwwSUmVtb3RlQWNj
ZXNzQ0EoQ0UpMCIYDzE5NjAwMTAxMDAwMDAwWhgPMjA2MDAxMDEwMDAwMDBaMF0x
CzAJBgNVBAYTAktSMRwwGgYDVQQKExNTYW1zdW5nIEVsZWN0cm9uaWNzMQ4wDAYD
VQQDEwVBQzE0SzEgMB4GCSqGSIb3DQEJARYRQUMxNEtAc2Ftc3VuZy5jb20wggEi
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDVU+My5i0A9lKUV8Ez7zgMcXJ3
g4mmVO4qcyz0r4Qp55Vy7+noPe9crpVxTfnVphgUAoNFM6RMHu388DkPsK5lfikr
9W2ATpC9bX28pcB6My1tWQZVHj9U6JURzZ6yWVu0LsQ52FY+FxZt/0YD4rk55w6p
bo8ZV2mmg5IWravjJpzlFBbPXemzWwUIrs2tMRryENaoblWKavfWgs2g0pcbT2ez
x8lf0T0zTfbBtbHzTB/RSGiOEr4ovG0l2wX9lLAUeBIK/Sd/H64UWhQ5WQoQkmij
2E4J7TXH3pNXkf4/M35DJBwDRSf1oF1d0FAnxkqQVFQP1Yj41kMtkh7RS6DfAgMB
AAGjczBxMB0GA1UdDgQWBBTQ9CiOcVLe04daXTRhmUfMhSMp1jAfBgNVHSMEGDAW
gBT/XZOQL8E4XvENpllYn4MY3qczFzAMBgNVHRMEBTADAQH/MCEGA1UdEQQaMBiC
C3NhbXN1bmcuY29tgglsb2NhbGhvc3QwDQYJKoZIhvcNAQEFBQADggEBADPY8Nds
gSRC2HczXPayTLZ/1oxEYtrmLQzGP+c4Vie5WMvIYUtEP8JwMKaxBzOo5jK4plIi
SClWrmfVPsoOWM5AS2Ufc72q53b7ti87/Rb9HYYdckSCZma5FRrybDoAulnbkUmR
DtaKVFEg7EkPvtO67z37hbzqg2LM0wNcD383nl2ECz1JaCszK331FFoPjfG8Qvsi
EOi0X+u2V3yrng3K+wYc9O1Cz6fxq5yp6D5x3K/3Tc3109ICsoq/tRcC6NaKENyZ
MtHN4rlK/N8fqVn7F1WV+38UUW7+XjKis9gU+m/96WcNGBBTSC/LCJsqF4nhmUAl
OREMVSsxahIBGAI=
-----END CERTIFICATE-----
subject=/C=KR/O=Samsung Electronics/CN=AC14K/emailAddress=AC14K@samsung.com
issuer=/C=KR/O=Samsung Electronics/CN=RemoteAccessCA(CE)
---
No client certificate CA names sent
---
SSL handshake has read 4723 bytes and written 1853 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES256-SHA
    Session-ID: D1C76AB3E41437BCAD166097F4AB8B5B91056CB0A4ADD31844793AFDED49EE06
    Session-ID-ctx: 
    Master-Key: 5603D0B9241D13D9DE8A2ECAAF8FB36775F0BD6A401629389A1E5E54A0A1806AD66BF0C6798CB9B0D2694DF728B9FFB4
    TLS session ticket:
    0000 - c3 3d 57 08 0a 55 a6 9c-29 ca e8 b5 36 df e8 d4   .=W..U..)...6...
    0010 - 8a 1b 79 2e 02 32 35 16-9e 1e f8 09 87 5b c9 a7   ..y..25......[..
    0020 - b7 4c 5e 80 9b 99 f6 fc-a7 4e b9 8d 54 0a 3a 2d   .L^......N..T.:-
    0030 - 86 ba aa db 22 bc 72 b1-b3 78 b6 dd 87 e3 be 2b   ....".r..x.....+
    0040 - 9d ce 87 2d bb 85 1a 93-80 42 2b e2 bf 2d e0 19   ...-.....B+..-..
    0050 - e6 cd c8 7e 49 64 95 ea-77 a2 b3 2d 46 b7 72 1d   ...~Id..w..-F.r.
    0060 - 87 3c b8 2f eb 42 8a 65-53 19 bd 69 76 30 8f 35   .<./.B.eS..iv0.5
    0070 - 65 91 a2 f4 71 e0 38 8b-8f 85 10 24 46 9b d2 4a   e...q.8....$F..J
    0080 - 99 39 05 86 f6 99 3a 60-3f f7 5f dd 0d b2 31 99   .9....:`?._...1.
    0090 - 84 9c 4e ef 08 a0 d6 9b-2b 6c 1b 50 d0 84 21 08   ..N.....+l.P..!.
    00a0 - bf 80 9b 36 0f 30 01 80-b2 e5 e7 d5 c4 5a 55 d9   ...6.0.......ZU.
    00b0 - 30 ff 53 e0 00 c8 6f b0-a2 71 13 87 b6 a0 aa fd   0.S...o..q......
    00c0 - 3c b1 86 56 13 f9 fa 84-b8 2a d3 0f d8 a1 3c ef   <..V.....*....<.
    00d0 - df 1d c8 2d df ab f4 6a-9a 0e 4f b7 f7 db 28 d0   ...-...j..O...(.
    00e0 - ba 95 81 5b df d7 76 7a-17 15 d1 49 67 66 a8 04   ...[..vz...Igf..
    00f0 - 3e 9f c8 9c 56 05 b0 7d-81 18 23 cb a9 82 a8 e4   >...V..}..#.....
    0100 - d6 c9 d7 67 e9 b1 c6 1b-94 53 e3 66 a4 b8 d9 21   ...g.....S.f...!
    0110 - 24 18 0b a6 48 5a f9 45-9b 4c 7c c0 84 c2 7d 74   $...HZ.E.L|...}t
    0120 - 65 14 9a a8 04 a0 7d 6e-91 07 dc c8 79 4b 4d 83   e.....}n....yKM.
    0130 - 04 30 c1 a2 a8 38 2d 45-66 bb b5 ce 44 59 da e1   .0...8-Ef...DY..
    0140 - 2f d0 36 58 3a 7b 09 e3-9e 81 04 dc d3 7a 1b 77   /.6X:{.......z.w
    0150 - 12 93 16 f1 90 36 3c e3-b4 91 58 88 02 14 94 93   .....6<...X.....
    0160 - fb 40 94 4f 63 e9 98 11-5f 2c 1f 01 ab 60 9d 19   .@.Oc..._,...`..
    0170 - 5d 76 11 f7 12 68 75 d9-1b 0b d7 4b 24 53 7d 07   ]v...hu....K$S}.
    0180 - f4 0d 95 18 ad d3 de 7d-2a 7e 9c 84 eb 47 c8 c3   .......}*~...G..
    0190 - a1 18 8c 31 80 89 a6 09-59 08 bd 36 00 10 71 17   ...1....Y..6..q.
    01a0 - c0 31 cf 98 ad 22 96 e0-e8 37 aa 2d bd 78 1b f9   .1..."...7.-.x..
    01b0 - 00 94 f7 bb 29 9a 15 11-fd d0 c4 41 a8 17 9a 4f   ....)......A...O
    01c0 - 66 f6 e0 64 16 87 61 5a-bc 65 0f ce 2a 71 d7 46   f..d..aZ.e..*q.F
    01d0 - eb e8 62 38 bc 6c 75 11-20 a3 73 03 fa 82 35 fa   ..b8.lu. .s...5.
    01e0 - 6b 29 ad e5 c7 78 a8 ae-21 f1 5e a6 98 da 9d 80   k)...x..!.^.....
    01f0 - 22 c5 90 8f c5 66 cb 10-91 14 fe 30 32 96 6c 4a   "....f.....02.lJ
    0200 - 9a 4a 84 e3 6d b8 69 b3-5c b5 03 f6 99 8d ca c5   .J..m.i.\.......
    0210 - b5 a2 5a 13 92 3a 10 69-35 7b ca 9a 5f 10 d5 f5   ..Z..:.i5{.._...
    0220 - 36 1c 24 95 64 d9 db 6c-c1 62 e0 bc da 97 32 96   6.$.d..l.b....2.
    0230 - b1 38 9d a3 87 89 d2 1b-27 33 3c c1 2d 28 81 2e   .8......'3<.-(..
    0240 - 76 1e 20 2c c3 09 91 5b-51 e2 7e 6c 93 d2 5d 63   v. ,...[Q.~l..]c
    0250 - 12 50 31 ad 59 43 3f 18-9a d0 ec c9 73 76 b2 da   .P1.YC?.....sv..
    0260 - fc a3 5f 27 ba 38 c5 d1-a9 3c 2d 6e bd 50 47 ee   .._'.8...<-n.PG.
    0270 - 06 45 ad 0a f3 3d 0d 55-09 e4 06 73 0c 6e 53 27   .E...=.U...s.nS'
    0280 - dc 5c 55 03 20 82 4c ef-eb eb 26 45 5e 6c 4c b1   .\U. .L...&E^lL.
    0290 - 4b ad d4 54 b9 a5 50 cf-2e 67 43 6f f3 dc 53 e1   K..T..P..gCo..S.
    02a0 - 2d 83 e7 c3 d1 6f b6 77-30 62 34 7c 19 43 88 19   -....o.w0b4|.C..
    02b0 - 93 23 40 e1 ca f6 92 09-70 ed 61 e7 32 6e f0 99   .#@.....p.a.2n..
    02c0 - d8 11 ba b2 2d 9e 83 75-62 36 70 a4 2b dc 98 38   ....-..ub6p.+..8
    02d0 - c3 7f 87 bb c6 43 f8 40-d3 27 3f 7f ed 56 38 0d   .....C.@.'?..V8.
    02e0 - 5d 2d 81 e7 34 0d 99 f8-03 ce 6f 3d 33 48 0c b8   ]-..4.....o=3H..
    02f0 - ab 82 6a f0 96 e4 7b 7e-85 12 09 56 45 03 54 dc   ..j...{~...VE.T.
    0300 - 35 b0 58 92 cc de a7 ee-6b 03 aa c8 34 75 8b 97   5.X.....k...4u..
    0310 - 65 32 e6 b4 84 41 28 c9-8c 4d 2b 2d 40 89 c8 13   e2...A(..M+-@...
    0320 - 1f fa b9 02 f6 f4 6a ae-16 df 7d 0e 03 dc d5 f4   ......j...}.....
    0330 - 35 89 ca 98 7f 7f 29 44-86 27 42 d6 b9 9b ec 57   5.....)D.'B....W
    0340 - 60 f0 86 12 d3 39 91 1a-16 01 71 ac 64 3a b9 2c   `....9....q.d:.,
    0350 - c1 14 d4 57 3f ed 58 9d-bd 63 9f b0 37 9d ad 8a   ...W?.X..c..7...
    0360 - 94 9a 90 a1 67 11 8d 27-63 cf 02 73 6b 1a 14 a4   ....g..'c..sk...
    0370 - 10 d2 f4 31 d2 53 1b a6-02 19 ba 47 f4 e1 c3 ac   ...1.S.....G....
    0380 - 27 0e c1 9e 84 19 1b 8c-82 cd ee 3e 20 87 2b d3   '..........> .+.
    0390 - 50 cd 11 7c 0c 43 16 33-b6 c5 6b 12 90 42 79 4d   P..|.C.3..k..ByM
    03a0 - 33 c7 76 47 18 4c 75 17-a5 48 5a 4a fe 03 8b b8   3.vG.Lu..HZJ....
    03b0 - 56 09 9f ee 04 7e 16 86-81 ff b7 e4 88 41 73 9e   V....~.......As.
    03c0 - da 72 67 f8 49 3d 77 b6-48 24 08 fd 80 24 c0 94   .rg.I=w.H$...$..
    03d0 - f1 c9 33 e6 57 a3 af 70-e2 66 a2 ca bd f9 83 c9   ..3.W..p.f......
    03e0 - ab db a2 3d 9b 32 b7 7b-6a 11 a5 4c c7 9c 1d 44   ...=.2.{j..L...D
    03f0 - a2 d5 73 14 6e 01 30 6d-f4 48 c9 a3 b5 fe a6 fa   ..s.n.0m.H......
    0400 - 5b a6 3d 0b 3b 30 bf 7b-95 c5 bc 96 e2 4f f3 c5   [.=.;0.{.....O..
    0410 - da fd f8 57 3a d0 39 38-fa c3 84 10 77 1e ed 41   ...W:.98....w..A
    0420 - 02 ab 7d ae 3d 71 6e 68-31 b5 03 88 8f ee 83 6e   ..}.=qnh1......n
    0430 - 23 94 d4 db bb 26 21 4e-c5 32 07 29 7b 87 75 f4   #....&!N.2.){.u.

    Start Time: 1517945729
    Timeout   : 300 (sec)
    Verify return code: 19 (self signed certificate in certificate chain)
---
DPLUG-1.6
<?xml version="1.0" encoding="utf-8" ?><Update Type="InvalidateAccount"/>
HajLender commented 6 years ago

Per ottenere il token ho fatto quanto segue:

scaricato Server8889.py e copiato nella mia cartella homebridge-samsung-airconditioner

Nel terminale ho scritto il percorso: cd /usr/local/.../homebridge-samsung-airconditioner

Quindi eseguo python: python Server8889.py

Nella nuova finestra del terminale ho scritto: curl -k -H "Content-Type: application/json" -H "DeviceToken: xxxxxxxxxxx" --cert /usr/local/lib/node_modules/homebridge-samsung-airconditioner/ac14k_m.pem --insecure -X POST https://192.168.1.152:8888/devicetoken/request

Ovviamente è necessario modificare il percorso e l'IP. Nel commento di cicciovo c'era un problema con un po 'di spazio tra i personaggi con cui. Avevo bisogno di suonare un po' per trovare la sintassi giusta

Ho acceso l'AC

Ho controllato la finestra in cui Python era in esecuzione e ho visto un risultato che includeva il token.

cicciovo commented 6 years ago

Perfetto, ora @HajLender controllo per bene come mai non si aggiorna @jetmcquack adesso ridai il comando curl -k -H "Content-Type: application/json" -H "DeviceToken: xxxxxxxxxxx" --cert /usr/local/lib/node_modules/homebridge-samsung-airconditioner/ac14k_m.pem --insecure -X POST https://192.168.1.152:2878/devicetoken/request ma nella porta 2878, nel server dovresti modificare la porta di ascolto, cioè sempre la 2878 o la 8889... prova con entrambe le versioni. La mia usa la 8888 per comunicare con l AC e la 8889 solo per il token

HajLender commented 6 years ago

Ho passato tutte le modalità con il telecomando e il dispositivo ha iniziato a funzionare con il kit homekit. Forse aveva bisogno di un primo calcio :) Ora sembra funzionare. Posso passare tra auto, riscaldamento, raffreddamento e spegnimento. Impossibile passare alla modalità ventilatore o asciugatura.

Sarebbe bello poter regolare le modalità di ventilazione, swing e "windfree" ma probabilmente lo voglio troppo :)

Qualche idea su come aggiungere un altro AC?

Apprezzo molto il tuo lavoro

jetmcquack commented 6 years ago

continuo ad avere come risposta:

JetBookAir:~ jetmcquack$ curl -k -H "Content-Type: application/json" -H "DeviceToken: xxxxxxxxxxx" --cert /usr/local/lib/node_modules/homebridge-samsung-airconditioner/ac14k_m.pem --insecure -X POST https://192.168.1.31:2878/devicetoken/request
DPLUG-1.6
<?xml version="1.0" encoding="utf-8" ?><Update Type="InvalidateAccount"/>
cicciovo commented 6 years ago

@jetmcquack hai aggiunto il certificato al porta chiavi del Mac?@HajLender, i m very happy :) appena avrò un po’ di tempo svilupperò tutte le funzionalità. Per ora sto provando ad installare homebridge in un vecchio Mac con snow Leopard.

jetmcquack commented 6 years ago

si è aggiunto

jetmcquack commented 6 years ago

sono riuscito ad avere il token: <?xml version="1.0" encoding="utf-8" ?><Update Type="GetToken" Status="Completed" Token="68bd1294-fcae-4ee8-9fe1-dbfef029e7b4"/> tuttavia mi sembra diverso da

"Authorization: Bearer 0HiRz37Baa"

cicciovo commented 6 years ago

Appena digiti il comando con OpenSSL, dopo che ti spunta tutte le scritte prova a digitare

jetmcquack commented 6 years ago

Credo che tu abbia lasciato indietro un pezzo di risposta..

cicciovo commented 6 years ago

Prova a digitare

cicciovo commented 6 years ago
cicciovo commented 6 years ago

Non so perché non me lo fa scrivere “” senza virgolette

cicciovo commented 6 years ago

@hajlender can you help me to write the readme in Eglish? @jetmcquackan per te lo considero chiuso? Se è no, se puoi mandarmi un indirizzo email perché il comando da digitare non me lo fa scrivere...

jetmcquack commented 6 years ago

certo jetmcquack@gmail.com

HajLender commented 6 years ago

Creerò un file txt con la descrizione dei passaggi e dei comandi che ho creato e fornendolo per un ulteriore utilizzo

cicciovo commented 6 years ago

@HajLender now it's possible to add two or more Samsungairconditioenr... see index.js and the config.json ;) in config.json you can write the new AC whit a different name of the first AC and whit different IP and Token

HajLender commented 6 years ago

Grazie mille!!!! Ci proverò domani. Ho creato un file TXT con le istruzioni. Posso inviarlo a te se puoi fornirmi il tuo indirizzo email. Forse dovrebbe essere modificato da qualcuno per renderlo più user friendly

HajLender commented 6 years ago

Ho provato la nuova versione per due AC. Il file index.js contiene dati (IP e token) solo per un AC. Ho sostituito questi dati con il mio primo AC. Ho modificato il file di configurazione in base alla nuova configurazione, ma ora non funziona. Devo creare un'altra cartella samsung-homebridge-airconditioner? Oppure un altro file index.js per il secondo AC?

cicciovo commented 6 years ago

Sorry, ma ho dimenticato a caricare il nuovo file index.js -.-“ starò fuori casa per 3 giorni ancora. Quindi non potrò metterlo on line

cicciovo commented 6 years ago

@HajLender now it's update @jetmcquack Aggiornato! Scusate la dimenticanza

HajLender commented 6 years ago

Ciao, Ho scaricato il nuovo index.js. GetModalita non è stato modificato e c'erano un IP fisso e un percorso per il certificato. Ho cambiato il testo in base al SetModalita. Tuttavia sto ancora ricevendo errore:

/usr/local/lib/node_modules/homebridge-samsung-airconditioner/index.js:229 callback(error); ^ Error: This callback function has already been called by someone else; it can only be called one time. at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/once.js:12:13 at SamsungAirco. (/usr/local/lib/node_modules/homebridge-samsung-airconditioner/index.js:229:22) at /usr/local/lib/node_modules/homebridge-samsung-airconditioner/index.js:31:9 at ChildProcess.exithandler (child_process.js:279:5) at ChildProcess.emit (events.js:160:13) at maybeClose (internal/child_process.js:943:16) at Socket.stream.socket.on (internal/child_process.js:363:11) at Socket.emit (events.js:160:13) at Pipe._handle.close [as _onclose] (net.js:559:12)

cicciovo commented 6 years ago

Riporta tutto com era prima. Sia getmodalità che setModità, all interno del file config.json cambia il nome. Per ora non possono avere lo stesso nome più accessori. Io infatti ho chiamato uno condizionatore e l altro condizionatore2. Successivamente chiudi home bridge, riapri e fai lo scan con l iPhone. Ps: fammi vedere il tuo file config.json

HajLender commented 6 years ago

OK, mi sono perso. Possiamo iniziare dall'inizio? Ho scaricato il nuovo index.js. Cosa devo cambiare in index.js?

mio config.json: { "accessory": "SamsungAirconditioner", "name": "AC Bedroon", "ip": "192.168.1.152", "token": "F9H4h53Wn4", "patchCert": "/usr/local/lib/node_modules/homebridge-samsung-airconditioner/ac14k_m.pem" }, { "accessory": "SamsungAirconditioner", "name": "AC Living Room", "ip": "192.168.1.149", "token": "1VaH3y120U", "patchCert": "/usr/local/lib/node_modules/homebridge-samsung-airconditioner/ac14k_m.pem" }

cicciovo commented 6 years ago

No non devi cambiare nulla. Devi solo sostituire il vecchio index.js con il nuovo. Fatto? Se adesso avvii cosa ti dice? Hai provato a cancellare homebridge dall iPhone ed eseguire nuovamente la scansione del QR di homebridge?

cicciovo commented 6 years ago

@HajLender there was an error in index.js, sorry, you can download the new index.js ;)

stalkerj commented 6 years ago

Hello. I didn’t understand almost nothing, but i’m relaly need to install it. I got lots of devices in my Home via homebrige. Can you write short instruction step by step about adding it to bridge, config making, token and so. If it will work we will prepare a review about it on our website, www.indahomekit.ru

cicciovo commented 6 years ago

@stalkerj do you know how use homebridge? if yes, follow the new Readme. ;)

stalkerj commented 6 years ago

@cicciovo it looks great now. I will try it, but i have one small problem now that stop me. It’s -20 outside)) some i can’t turn on my aircond now to check everything(( thank you so much for your work

cicciovo commented 6 years ago

;) you're welcome. But this is a beta version. In my home it's work very well!

stalkerj commented 6 years ago

@cicciovo there are lots of options in Samsung app. What can we do in Home using this plugin? Only turn on?

stalkerj commented 6 years ago

@cicciovo after release of ios 11.3 there will be much more variants to control acc inside Home app, there must be acc special configuration. Hope you will continue updating your plugin. Did you release it on NPMJS.com already?