2 * Copyright (c) 2010-2023 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.pjlinkdevice.internal;
15 import java.util.concurrent.TimeUnit;
17 import org.eclipse.jdt.annotation.NonNullByDefault;
18 import org.openhab.core.thing.ThingTypeUID;
21 * The {@link PJLinkDeviceBindingConstants} class defines common constants, which are
22 * used across the whole binding.
24 * @author Nils Schnabel - Initial contribution
27 public class PJLinkDeviceBindingConstants {
29 private static final String BINDING_ID = "pjLinkDevice";
31 // List of all thing type UIDs
32 public static final ThingTypeUID THING_TYPE_PJLINK = new ThingTypeUID(BINDING_ID, "pjLinkDevice");
34 // List of all channel type IDs
35 public static final String CHANNEL_TYPE_POWER = "power";
36 public static final String CHANNEL_TYPE_INPUT = "input";
37 public static final String CHANNEL_TYPE_AUDIO_MUTE = "audioMute";
38 public static final String CHANNEL_TYPE_VIDEO_MUTE = "videoMute";
39 public static final String CHANNEL_TYPE_LAMP_HOURS = "lampHours";
40 public static final String CHANNEL_TYPE_LAMP_ACTIVE = "lampActive";
42 // List of all channel IDs
43 public static final String CHANNEL_POWER = "power";
44 public static final String CHANNEL_INPUT = "input";
45 public static final String CHANNEL_AUDIO_MUTE = "audioMute";
46 public static final String CHANNEL_VIDEO_MUTE = "videoMute";
47 public static final String CHANNEL_LAMP_1_HOURS = "lamp1Hours";
48 public static final String CHANNEL_LAMP_1_ACTIVE = "lamp1Active";
50 // List of all channel parameter names
51 public static final String CHANNEL_PARAMETER_LAMP_NUMBER = "lampNumber";
53 public static final int DEFAULT_PORT = 4352;
54 public static final int DEFAULT_SCAN_TIMEOUT_SECONDS = 60;
57 public static final String PARAMETER_HOSTNAME = "ipAddress";
58 public static final String PARAMETER_PORT = "tcpPort";
59 public static final long DISCOVERY_RESULT_TTL_SECONDS = TimeUnit.MINUTES.toSeconds(10);
61 // information disclosed by device
62 public static final String PROPERTY_CLASS = "disclosedPjLinkClass";
63 public static final String PROPERTY_NAME = "disclosedName";
64 public static final String PROPERTY_ERROR_STATUS = "disclosedErrorStatus";
65 public static final String PROPERTY_LAMP_HOURS = "disclosedLampHours";
66 public static final String PROPERTY_OTHER_INFORMATION = "disclosedOtherInformation";
68 // calculated properties
69 public static final String PROPERTY_AUTHENTICATION_REQUIRED = "authenticationRequired";