Version 1.1.0 (#3)
* Delete .gitignore * Added Readme, Added Nuget Infos in Project * Added GoveeService that unites Api and Udp Service Added ColorTemp Method to Udp Service * Added UdpListener check * Added ApiKey check * Moved Class and changed Namespace * Update GoveeCSharpConnector.csproj
This commit is contained in:
@ -10,27 +10,32 @@ public interface IGoveeApiService
|
||||
/// </summary>
|
||||
/// <param name="apiKey">Api Key as String</param>
|
||||
void SetApiKey(string apiKey);
|
||||
|
||||
/// <summary>
|
||||
/// Returns current set Govee Api Key
|
||||
/// </summary>
|
||||
/// <returns>Govee Api Key as String</returns>
|
||||
string GetApiKey();
|
||||
|
||||
/// <summary>
|
||||
/// Removes the Set Api Key and resets the HTTP Header
|
||||
/// </summary>
|
||||
void RemoveApiKey();
|
||||
|
||||
/// <summary>
|
||||
/// Requests all Devices registered to Api Key Govee Account
|
||||
/// </summary>
|
||||
/// <returns>List of GoveeApiDevices</returns>
|
||||
Task<List<GoveeApiDevice>> GetDevices();
|
||||
|
||||
/// <summary>
|
||||
/// Requests the State of a single Govee Device
|
||||
/// </summary>
|
||||
/// <param name="deviceId">Device Id Guid as string</param>
|
||||
/// <param name="deviceModel">Device Model Number as string</param>
|
||||
/// <returns>GoveeApiStat Object</returns>
|
||||
public Task<GoveeApiState> GetDeviceState(string deviceId, string deviceModel);
|
||||
Task<GoveeApiState> GetDeviceState(string deviceId, string deviceModel);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the On/Off state of a single Govee Device
|
||||
/// </summary>
|
||||
@ -38,7 +43,8 @@ public interface IGoveeApiService
|
||||
/// <param name="deviceModel">Device Model Number as string</param>
|
||||
/// <param name="on"></param>
|
||||
/// <returns></returns>
|
||||
public Task ToggleState(string deviceId, string deviceModel, bool on);
|
||||
Task ToggleState(string deviceId, string deviceModel, bool on);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the Brightness in Percent of a single Govee Device
|
||||
/// </summary>
|
||||
@ -46,7 +52,8 @@ public interface IGoveeApiService
|
||||
/// <param name="deviceModel">Device Model Number as string</param>
|
||||
/// <param name="value">Brightness in Percent as Int</param>
|
||||
/// <returns></returns>
|
||||
public Task SetBrightness(string deviceId, string deviceModel, int value);
|
||||
Task SetBrightness(string deviceId, string deviceModel, int value);
|
||||
|
||||
/// <summary>
|
||||
/// Sets a Rgb Color of a single Govee Device
|
||||
/// </summary>
|
||||
@ -54,7 +61,8 @@ public interface IGoveeApiService
|
||||
/// <param name="deviceModel">Device Model Number as string</param>
|
||||
/// <param name="color">Rgb Color</param>
|
||||
/// <returns></returns>
|
||||
public Task SetColor(string deviceId, string deviceModel, RgbColor color);
|
||||
Task SetColor(string deviceId, string deviceModel, RgbColor color);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the Color Temperature of a single Govee Device
|
||||
/// </summary>
|
||||
@ -62,6 +70,5 @@ public interface IGoveeApiService
|
||||
/// <param name="deviceModel">Device Model Number as string</param>
|
||||
/// <param name="value">Color Temp in Kelvin as Int</param>
|
||||
/// <returns></returns>
|
||||
public Task SetColorTemp(string deviceId, string deviceModel, int value);
|
||||
|
||||
Task SetColorTemp(string deviceId, string deviceModel, int value);
|
||||
}
|
||||
62
GoveeCSharpConnector/Interfaces/IGoveeService.cs
Normal file
62
GoveeCSharpConnector/Interfaces/IGoveeService.cs
Normal file
@ -0,0 +1,62 @@
|
||||
using GoveeCSharpConnector.Objects;
|
||||
|
||||
namespace GoveeCSharpConnector.Interfaces;
|
||||
|
||||
public interface IGoveeService
|
||||
{
|
||||
/// <summary>
|
||||
/// Govee Api Key
|
||||
/// </summary>
|
||||
string GoveeApiKey { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets a List of Govee Devices
|
||||
/// </summary>
|
||||
/// <param name="onlyLan">If true returns that are available on Api and Lan</param>
|
||||
/// <returns>List of Govee Devices</returns>
|
||||
Task<List<GoveeDevice>> GetDevices(bool onlyLan = true);
|
||||
|
||||
/// <summary>
|
||||
/// Gets the State of a GoveeDevice
|
||||
/// </summary>
|
||||
/// <param name="goveeDevice">GoveeDevice</param>
|
||||
/// <param name="useUdp">Use Udp Connection instead of the Api</param>
|
||||
/// <returns></returns>
|
||||
Task<GoveeState> GetDeviceState(GoveeDevice goveeDevice, bool useUdp = true);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the On/Off State of the GoveeDevice
|
||||
/// </summary>
|
||||
/// <param name="goveeDevice">GoveeDevice</param>
|
||||
/// <param name="on"></param>
|
||||
/// <param name="useUdp">Use Udp Connection instead of the Api</param>
|
||||
/// <returns></returns>
|
||||
Task ToggleState(GoveeDevice goveeDevice, bool on, bool useUdp = true);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the Brightness of the GoveeDevice
|
||||
/// </summary>
|
||||
/// <param name="goveeDevice">GoveeDevice</param>
|
||||
/// <param name="value">Brightness in Percent</param>
|
||||
/// <param name="useUdp">Use Udp Connection instead of the Api</param>
|
||||
/// <returns></returns>
|
||||
Task SetBrightness(GoveeDevice goveeDevice, int value, bool useUdp = true);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the Color of the GoveeDevice
|
||||
/// </summary>
|
||||
/// <param name="goveeDevice">GoveeDevice</param>
|
||||
/// <param name="color">RgBColor</param>
|
||||
/// <param name="useUdp">Use Udp Connection instead of the Api</param>
|
||||
/// <returns></returns>
|
||||
Task SetColor(GoveeDevice goveeDevice, RgbColor color, bool useUdp = true);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the Color Temperature in Kelvin for the GoveeDevice
|
||||
/// </summary>
|
||||
/// <param name="goveeDevice">GoveeDevice</param>
|
||||
/// <param name="value">Color Temp in Kelvin</param>
|
||||
/// <param name="useUdp">Use Udp Connection instead of the Api</param>
|
||||
/// <returns></returns>
|
||||
Task SetColorTemp(GoveeDevice goveeDevice, int value, bool useUdp = true);
|
||||
}
|
||||
@ -49,6 +49,15 @@ public interface IGoveeUdpService
|
||||
/// <param name="uniCastPort">Port of the Device. Standard 4003</param>
|
||||
/// <returns></returns>
|
||||
Task SetColor(string deviceAddress, RgbColor color, int uniCastPort = 4003);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the ColorTemp of the Device
|
||||
/// </summary>
|
||||
/// <param name="deviceAddress">Ip Address of the Device</param>
|
||||
/// <param name="colorTempInKelvin"></param>
|
||||
/// <param name="uniCastPort">Port of the Device. Standard 4003</param>
|
||||
/// <returns></returns>
|
||||
Task SetColorTemp(string deviceAddress, int colorTempInKelvin, int uniCastPort = 4003);
|
||||
/// <summary>
|
||||
/// Starts the Udp Listener
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user