void sartanoInit(void) { strcpy(sartano.id, "sartano"); protocol_add_device(&sartano, "elro", "Elro Switches"); protocol_add_conflict(&sartano, "arctech_old"); protocol_add_conflict(&sartano, "impuls"); sartano.type = SWITCH; sartano.pulse = 4; sartano.footer = 38; sartano.rawLength = 50; sartano.binLength = 12; sartano.message = malloc(sizeof(JsonNode)); sartano.bit = 0; sartano.recording = 0; options_add(&sartano.options, 't', "on", no_value, config_state, NULL); options_add(&sartano.options, 'f', "off", no_value, config_state, NULL); options_add(&sartano.options, 'u', "unit", has_value, config_id, "^(3[012]?|[012][0-9]|[0-9]{1})$"); options_add(&sartano.options, 'i', "id", has_value, config_id, "^(3[012]?|[012][0-9]|[0-9]{1})$"); sartano.parseBinary=&sartanoParseBinary; sartano.createCode=&sartanoCreateCode; sartano.printHelp=&sartanoPrintHelp; protocol_register(&sartano); }
void arctechSwInit(void) { strcpy(arctech_switch.id, "archtech_switches"); protocol_add_device(&arctech_switch, "kaku_switch", "KlikAanKlikUit Switches"); protocol_add_device(&arctech_switch, "dio_switch", "D-IO (Chacon) Switches"); protocol_add_device(&arctech_switch, "nexa_switch", "Nexa Switches"); protocol_add_device(&arctech_switch, "coco_switch", "CoCo Technologies Switches"); protocol_add_conflict(&arctech_switch, "archtech_dimmers"); arctech_switch.type = SWITCH; arctech_switch.header = 9; arctech_switch.pulse = 5; arctech_switch.footer = 35; arctech_switch.length = 132; arctech_switch.message = malloc(sizeof(JsonNode)); arctech_switch.bit = 0; arctech_switch.recording = 0; addOption(&arctech_switch.options, 'a', "all", no_value, 0, NULL); addOption(&arctech_switch.options, 't', "on", no_value, config_state, NULL); addOption(&arctech_switch.options, 'f', "off", no_value, config_state, NULL); addOption(&arctech_switch.options, 'u', "unit", has_value, config_id, "^([0-9]{1}|[1][0-6])$"); addOption(&arctech_switch.options, 'i', "id", has_value, config_id, "^([0-9]{1,7}|[1-5][0-9]{7}|6([0-6][0-9]{6}|7(0[0-9]{5}|10([0-7][0-9]{3}|8([0-7][0-9]{2}|8([0-5][0-9]|6[0-3]))))))$"); arctech_switch.parseBinary=&arctechSwParseBinary; arctech_switch.createCode=&arctechSwCreateCode; arctech_switch.printHelp=&arctechSwPrintHelp; protocol_register(&arctech_switch); }
void arctechSwInit(void) { protocol_register(&arctech_switch); arctech_switch->id = malloc(18); strcpy(arctech_switch->id, "archtech_switches"); protocol_add_device(arctech_switch, "kaku_switch", "KlikAanKlikUit Switches"); protocol_add_device(arctech_switch, "dio_switch", "D-IO (Chacon) Switches"); protocol_add_device(arctech_switch, "nexa_switch", "Nexa Switches"); protocol_add_device(arctech_switch, "coco_switch", "CoCo Technologies Switches"); protocol_add_device(arctech_switch, "intertechno_switch", "Intertechno Switches"); protocol_add_conflict(arctech_switch, "archtech_dimmers"); arctech_switch->type = SWITCH; arctech_switch->header = 9; arctech_switch->pulse = 5; arctech_switch->footer = 35; arctech_switch->rawLength = 132; arctech_switch->lsb = 3; arctech_switch->bit = 0; arctech_switch->recording = 0; options_add(&arctech_switch->options, 'a', "all", no_value, 0, NULL); options_add(&arctech_switch->options, 't', "on", no_value, config_state, NULL); options_add(&arctech_switch->options, 'f', "off", no_value, config_state, NULL); options_add(&arctech_switch->options, 'u', "unit", has_value, config_id, "^([0-9]{1}|[1][0-5])$"); options_add(&arctech_switch->options, 'i', "id", has_value, config_id, "^([0-9]{1,7}|[1-5][0-9]{7}|6([0-6][0-9]{6}|7(0[0-9]{5}|10([0-7][0-9]{3}|8([0-7][0-9]{2}|8([0-5][0-9]|6[0-3]))))))$"); arctech_switch->parseBinary=&arctechSwParseBinary; arctech_switch->createCode=&arctechSwCreateCode; arctech_switch->printHelp=&arctechSwPrintHelp; }