Integration with camedomotic

Hi at all!

I’m searching help for integrate CAME Domotic product with HA, the idea is to sent/receive packet via http using HTTP trought Rasp and ETI/DOMO in LAN.

For make this i’m starded to analyze packets via wireshark identifing the right commands that can run scenarios, open lights etc etc… anyone has some ideas for integrate this?

i post some commands with a comment

LIGHT OPEN:
Form item: “command” = “{
“sl_appl_msg”: {
“act_id”: 2, *identifier of the light
“client”: “4c9ebbd1”, *identifier of the user
“cmd_name”: “light_switch_req”,
“cseq”: 617, *sequencing of the request”
“wanted_status”: 1 * 1 = OPEN
},
“sl_appl_msg_type”: “domo”,
"sl_client

LIGHT CLOSED

Form item: “command” = “{
“sl_appl_msg”: {
“act_id”: 2, *identifier of the light
“client”: “4c9ebbd1”, *identifier of the user
“cmd_name”: “light_switch_req”,
“cseq”: 624, *sequencing of the request”
“wanted_status”: 0 * 0 = CLOSED
},
“sl_appl_msg_type”: “domo”,
"sl_client

RUN SCENARIO

Form item: “command” = "{
“sl_appl_msg”: {
“client”: “4c9ebbd1”,
“cmd_name”: “scenario_activation_req”,
“cseq”: 574,
“id”: 2
},
“sl_appl_msg_type”: “domo”,
“sl_client_id”: “4c9ebbd1”,
"sl

THERMOSTAT

Form item: “command” = "{
“sl_appl_msg”: {
“act_id”: 57,
“client”: “4c9ebbd1”,
“cmd_name”: “thermo_zone_config_req”,
“cseq”: 816,
“extended_infos”: 0,
“mode”: 1, *1 = MANUAL
“set_point”: 201


Form item: “command” = "{
“sl_appl_msg”: {
“act_id”: 57,
“client”: “4c9ebbd1”,
“cmd_name”: “thermo_zone_config_req”,
“cseq”: 820,
“extended_infos”: 0,
“mode”: 0, *0 =OFF
“set_point”: 201

1 Like

Do you send these requests to a REST API? If so, you can use Home Assistants RESTful sensor/switch.

This is what i have captured on wireshark

Frame 234: 378 bytes on wire (3024 bits), 378 bytes captured (3024 bits) on interface \Device\NPF_{F334FE3B-0486-4314-9A9A-5C298E227194}, id 0
Ethernet II, Src: IntelCor_47:2a:a2 (74:e5:f9:47:2a:a2), Dst: ZyxelCom_55:d8:b3 (bc:cf:4f:55:d8:b3)
Destination: ZyxelCom_55:d8:b3 (bc:cf:4f:55:d8:b3)
<[Destination (resolved): ZyxelCom_55:d8:b3]>
<[Destination OUI: bc:cf:4f (Zyxel Communications ]>
<[Destination OUI (resolved): Zyxel Communications Corporation]>
Address: ZyxelCom_55:d8:b3 (bc:cf:4f:55:d8:b3)
<[Address (resolved): ZyxelCom_55:d8:b3]>
<[Address OUI: bc:cf:4f (Zyxel Communications ]>
<[Address OUI (resolved): Zyxel Communications Corporation]>
… …0. … … … … = LG bit: Globally unique address (factory default)
<… …0. … … … … = LG bit: Globally unique address (factory default)>
… …0 … … … … = IG bit: Individual address (unicast)
<… …0 … … … … = IG bit: Individual address (unicast)>
Source: IntelCor_47:2a:a2 (74:e5:f9:47:2a:a2)
<[Source (resolved): IntelCor_47:2a:a2]>
<[Source OUI: 74:e5:f9 (Intel Corporate)]>
<[Source OUI (resolved): Intel Corporate]>
Address: IntelCor_47:2a:a2 (74:e5:f9:47:2a:a2)
<[Address (resolved): IntelCor_47:2a:a2]>
<[Address OUI: 74:e5:f9 (Intel Corporate)]>
<[Address OUI (resolved): Intel Corporate]>
… …0. … … … … = LG bit: Globally unique address (factory default)
<… …0. … … … … = LG bit: Globally unique address (factory default)>
… …0 … … … … = IG bit: Individual address (unicast)
<… …0 … … … … = IG bit: Individual address (unicast)>
Type: IPv4 (0x0800)
Internet Protocol Version 4, Src: 192.168.0.195, Dst: 162.209.98.74
0100 … = Version: 4
… 0101 = Header Length: 20 bytes (5)
Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
0000 00… = Differentiated Services Codepoint: Default (0)
… …00 = Explicit Congestion Notification: Not ECN-Capable Transport (0)
Total Length: 364
Identification: 0x5457 (21591)
Flags: 0x4000, Don’t fragment
0… … … … = Reserved bit: Not set
.1… … … … = Don’t fragment: Set
…0. … … … = More fragments: Not set
Fragment offset: 0
Time to live: 128
Protocol: TCP (6)
Header checksum: 0xdead [validation disabled]
[Header checksum status: Unverified]
Source: 192.168.0.195
<Source or Destination Address: 192.168.0.195>
<[Source Host: 192.168.0.195]>
<[Source or Destination Host: 192.168.0.195]>
Destination: 162.209.98.74
<Source or Destination Address: 162.209.98.74>
<[Destination Host: 162.209.98.74]>
<[Source or Destination Host: 162.209.98.74]>
Transmission Control Protocol, Src Port: 51996, Dst Port: 80, Seq: 2092, Ack: 765, Len: 324
Source Port: 51996
Destination Port: 80
<Source or Destination Port: 51996>
<Source or Destination Port: 80>
[Stream index: 3]
[TCP Segment Len: 324]
Sequence number: 2092 (relative sequence number)
Sequence number (raw): 500700839
[Next sequence number: 2416 (relative sequence number)]
Acknowledgment number: 765 (relative ack number)
Acknowledgment number (raw): 3306845608
0101 … = Header Length: 20 bytes (5)
Flags: 0x018 (PSH, ACK)
000. … … = Reserved: Not set
…0 … … = Nonce: Not set
… 0… … = Congestion Window Reduced (CWR): Not set
… .0… … = ECN-Echo: Not set
… …0. … = Urgent: Not set
… …1 … = Acknowledgment: Set
… … 1… = Push: Set
… … .0… = Reset: Not set
… … …0. = Syn: Not set
… … …0 = Fin: Not set
[TCP Flags: ·······AP···]
Window size value: 510
[Calculated window size: 130560]
[Window size scaling factor: 256]
Checksum: 0xe5ed [unverified]
[Checksum Status: Unverified]
Urgent pointer: 0
[SEQ/ACK analysis]
[iRTT: 0.176005000 seconds]
[Bytes in flight: 324]
[Bytes sent since last PSH flag: 324]
[Timestamps]
[Time since first frame in this TCP stream: 19.837542000 seconds]
[Time since previous frame in this TCP stream: 0.000174000 seconds]
TCP payload (324 bytes)
TCP segment data (324 bytes)
[2 Reassembled TCP Segments (805 bytes): #232(481), #234(324)]
Hypertext Transfer Protocol
POST http:// 10.87.133 80/domo/ HTTP/1.1\r\n
[Expert Info (Chat/Sequence): POST http:// 10.87.133.80/domo/ HTTP/1.1\r\n]
Request Method: POST
Request URI: http:// 10.87.133. 80/domo/
Request Version: HTTP/1.1
Content-Type: application/x-www-form-urlencoded\r\n
<Content-Type: application/x-www-form-urlencoded\r\n>
Content-Length: 324\r\n
[Content length: 324]
<Content-Length: 324\r\n>
Connection: Keep-Alive\r\n
<Connection: Keep-Alive\r\n>
Accept-Encoding: gzip, deflate\r\n
<Accept-Encoding: gzip, deflate\r\n>
Accept-Language: it-IT,en,\r\n
<Accept-Language: it-IT,en,
\r\n>
User-Agent: Mozilla/5.0\r\n
<User-Agent: Mozilla/5.0\r\n>
Host: 10.87.133.80\r\n
<Host: 10.87.133.80\r\n>
[truncated]Proxy-Authorization: Digest username=“den_90”, realm=“CameSquidProxy”, nonce=“NpcyXwAAAACgemIGRX8AAGY2xRsAAAAA”, uri="/domo/", response=“0399f7c67d186b29b58fb5c62d7b935a”, qop=auth, nc=00000025, cnonce=“568fee93c12b6d18fb3e742
< [truncated]Proxy-Authorization: Digest username=“den_90”, realm=“CameSquidProxy”, nonce=“NpcyXwAAAACgemIGRX8AAGY2xRsAAAAA”, uri=”/domo/", response=“0399f7c67d186b29b58fb5c62d7b935a”, qop=auth, nc=00000025, cnonce="568fee93c12b6d18fb3e742>
\r\n
[Full request URI: http://10.87.133.80/domo/]
<Request: True>
[HTTP request 3/3]
[Prev request in frame: 148]
[Response in frame: 237]
File Data: 324 bytes
HTML Form URL Encoded: application/x-www-form-urlencoded
Form item: “command” = "{
“sl_appl_msg”: {
“act_id”: 57,
“client”: “4c9ebbd1”,
“cmd_name”: “thermo_zone_config_req”,
“cseq”: 820,
“extended_infos”: 0,
“mode”: 0,
“set_point”: 201

hello I am also looking for this integration, have you found a solution?
A little while ago I found a python file online but it only works as a shell, and sends JSON commands to ETI/DOMO

yes! we have integrated the ETI/DOMO we are building the documentation for integrating the python commands in to the home assistant. it’s a long road but we think that the integration will works in one month

Great news! if you need a beta tester I am available.
My system has about 40 devices, for lights, shutters, thermoregulation and ETI/DOMO.

r u italian?

Yes, I’m live in Italy, and you?
You interested to continue this converstation in private?

I am also interested, any news ?

yes, the integration is ready and works fine we are searching for some beta testers in the next days…

Hi all,
if you need a tester i’m here, I’ve a eti/domo server web and some scenarios inside.

thank’s Davide

Hi davide!

Integration is ready to test!

We will publish it next weeks!!!

Wonderful!
I’m new in this and I’ve to read more for start with it.
My domotic was installed by other but not managed as well I want.

Hi, where i can find the plugin?

hi ! do you have any news regarding eti/domo integration to home assistan? i will appreciate very much I have a eti domo system installed and I would like very mutch to be able to integrate to home assistant thank you very much

Yes, integration is done! It can controls for now lights and thermo zones…. We are waiting the authorization to publish it



1 Like

can i test it ?

Hi ! Is it possible to give some guide hot to sett up came integration in home assistant please
I have tried but i am having no results
I have 0knowlage on programin and codin
Thank you

Hi Den,

is it possible to try the integration? It will be great to controll ETI/DOMO without using CAME Domotic App.

Thanks,
Niccolò.

Hey!
Any news on this? Is there a repository we can use for testing and contributions?
Thanks!