Class ButtClient
A framework-independent library for controlling your sex toys (.NET Standard 2.0 compliant).
Requires the standalone receiver application ButtServer.
Inheritance
Inherited Members
Namespace: ButtClient
Assembly: ButtClient.dll
Syntax
public class ButtClient
Remarks
Implementation-wise, this a transparent wrapper around the BasicButtManager library,
via the ButtServer proxy.
The public-facing interface is identical to that of BasicButtManager besides the class name.
Constructors
| Improve this Doc View SourceButtClient(String)
Initialize this ButtClient and connect it to the ButtServer.
Declaration
public ButtClient(string clientName)
Parameters
Type | Name | Description |
---|---|---|
System.String | clientName | Identify this client to the server. |
Methods
| Improve this Doc View SourceControl(Single, Single, Boolean)
Directly control your toys with the provided parameters.
Declaration
public void Control(float intensity, float position = -1F, bool oscillate = false)
Parameters
Type | Name | Description |
---|---|---|
System.Single | intensity | Intensity for vibrators, oscillators, rotators, pressurizers, etc. |
System.Single | position | Position of linear actuators, if omitted will take the value of intensity. |
System.Boolean | oscillate | If true, let the linear actuators move automatically at a set speed (based on intensity). Only applicable if position not given. |
Remarks
It is recommended in most cases to use one of the provided convenient functions instead, most notably Set().
Disconnect()
Disconnect this client from the ButtServer.
Declaration
public void Disconnect()
Exit()
Stop all connected toys and close server connection.
Declaration
public void Exit()
Fade(Single, Single)
Fade the intensity of all toys to a certain point.
Declaration
public void Fade(float targetIntensity, float smoothness = 1F)
Parameters
Type | Name | Description |
---|---|---|
System.Single | targetIntensity | The target intensity, can be higher or lower than the current intensity. |
System.Single | smoothness | Between 0f and 1f, the higher the smoother the transition. |
Remarks
Does not support multiple fades at one time.
FadeIn()
Fade all toys in from zero intensity to max power.
Declaration
public void FadeIn()
Remarks
Does not support multiple fades at one time.
FadeOut()
Fade all toys out from max intensity to zero power.
Declaration
public void FadeOut()
Remarks
Does not support multiple fades at one time.
Hold(Single)
Push all strokers down, buzz vibrators for a bit, then push strokers back up.
Declaration
public void Hold(float reboundSpeed)
Parameters
Type | Name | Description |
---|---|---|
System.Single | reboundSpeed | How long the action is held before being released, from 0f to 1f. |
Remarks
Basically the slow version of Pulse().
Press(Single)
Set all toys to the same constant speed AND location.
Declaration
public void Press(float actionValue)
Parameters
Type | Name | Description |
---|---|---|
System.Single | actionValue | The intensity or location to be set to all connected toys. |
Pulse(Single)
Press for a single buzz/squeeze/stroke/spin.
Declaration
public void Pulse(float reboundSpeed)
Parameters
Type | Name | Description |
---|---|---|
System.Single | reboundSpeed | How long the action is held before being released, from 0f to 1f. |
Remarks
Client must make sure to not pulse too often too quickly (~ once per second is ideal).
Set(Single)
Vibrate, oscillate, stroke, etc. all connected devices according to the one given intensity value.
Declaration
public void Set(float intensity)
Parameters
Type | Name | Description |
---|---|---|
System.Single | intensity | The intensity to be applied to all connected toys. |
Stop()
Stop all connected toys.
Declaration
public void Stop()