diff --git a/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessage.java b/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessage.java
index 02c132b..8f51334 100644
--- a/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessage.java
+++ b/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessage.java
@@ -24,6 +24,7 @@ private ServerMessage() {}
public enum MsgCase {
PLAY_AUDIO(1),
+ SET_MIC_MUTE(2),
MSG_NOT_SET(0);
private final int value;
@@ -43,6 +44,8 @@ public static MsgCase forNumber(int value) {
switch (value) {
case 1:
return PLAY_AUDIO;
+ case 2:
+ return SET_MIC_MUTE;
case 0:
return MSG_NOT_SET;
default:
@@ -67,13 +70,29 @@ private void clearMsg() {
public static final int PLAY_AUDIO_FIELD_NUMBER = 1;
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ *
+ * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
@java.lang.Override
public boolean hasPlayAudio() {
return msgCase_ == 1;
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
@java.lang.Override
public com.thejeffcooper.hassmic.proto.PlayAudio getPlayAudio() {
if (msgCase_ == 1) {
@@ -82,14 +101,30 @@ public com.thejeffcooper.hassmic.proto.PlayAudio getPlayAudio() {
return com.thejeffcooper.hassmic.proto.PlayAudio.getDefaultInstance();
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
private void setPlayAudio(com.thejeffcooper.hassmic.proto.PlayAudio value) {
value.getClass();
msg_ = value;
msgCase_ = 1;
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
private void mergePlayAudio(com.thejeffcooper.hassmic.proto.PlayAudio value) {
value.getClass();
if (msgCase_ == 1 && msg_ != com.thejeffcooper.hassmic.proto.PlayAudio.getDefaultInstance()) {
@@ -104,7 +139,15 @@ private void mergePlayAudio(com.thejeffcooper.hassmic.proto.PlayAudio value) {
msgCase_ = 1;
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
private void clearPlayAudio() {
if (msgCase_ == 1) {
msgCase_ = 0;
@@ -112,6 +155,75 @@ private void clearPlayAudio() {
}
}
+ public static final int SET_MIC_MUTE_FIELD_NUMBER = 2;
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @return Whether the setMicMute field is set.
+ */
+ @java.lang.Override
+ public boolean hasSetMicMute() {
+ return msgCase_ == 2;
+ }
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @return The setMicMute.
+ */
+ @java.lang.Override
+ public boolean getSetMicMute() {
+ if (msgCase_ == 2) {
+ return (java.lang.Boolean) msg_;
+ }
+ return false;
+ }
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @param value The setMicMute to set.
+ */
+ private void setSetMicMute(boolean value) {
+ msgCase_ = 2;
+ msg_ = value;
+ }
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ */
+ private void clearSetMicMute() {
+ if (msgCase_ == 2) {
+ msgCase_ = 0;
+ msg_ = null;
+ }
+ }
+
public static com.thejeffcooper.hassmic.proto.ServerMessage parseFrom(java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return com.google.protobuf.GeneratedMessageLite.parseFrom(DEFAULT_INSTANCE, data);
@@ -225,46 +337,161 @@ public Builder clearMsg() {
return this;
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
@java.lang.Override
public boolean hasPlayAudio() {
return instance.hasPlayAudio();
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
@java.lang.Override
public com.thejeffcooper.hassmic.proto.PlayAudio getPlayAudio() {
return instance.getPlayAudio();
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
public Builder setPlayAudio(com.thejeffcooper.hassmic.proto.PlayAudio value) {
copyOnWrite();
instance.setPlayAudio(value);
return this;
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
public Builder setPlayAudio(com.thejeffcooper.hassmic.proto.PlayAudio.Builder builderForValue) {
copyOnWrite();
instance.setPlayAudio(builderForValue.build());
return this;
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
public Builder mergePlayAudio(com.thejeffcooper.hassmic.proto.PlayAudio value) {
copyOnWrite();
instance.mergePlayAudio(value);
return this;
}
- /** .hassmic.PlayAudio play_audio = 1;
*/
+ /**
+ *
+ *
+ * + * A command to play audio + *+ * + *
.hassmic.PlayAudio play_audio = 1;
+ */
public Builder clearPlayAudio() {
copyOnWrite();
instance.clearPlayAudio();
return this;
}
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @return Whether the setMicMute field is set.
+ */
+ @java.lang.Override
+ public boolean hasSetMicMute() {
+ return instance.hasSetMicMute();
+ }
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @return The setMicMute.
+ */
+ @java.lang.Override
+ public boolean getSetMicMute() {
+ return instance.getSetMicMute();
+ }
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @param value The setMicMute to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSetMicMute(boolean value) {
+ copyOnWrite();
+ instance.setSetMicMute(value);
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearSetMicMute() {
+ copyOnWrite();
+ instance.clearSetMicMute();
+ return this;
+ }
+
// @@protoc_insertion_point(builder_scope:hassmic.ServerMessage)
}
@@ -290,7 +517,8 @@ protected final java.lang.Object dynamicMethod(
"msg_", "msgCase_", com.thejeffcooper.hassmic.proto.PlayAudio.class,
};
java.lang.String info =
- "\u0000\u0001\u0001\u0000\u0001\u0001\u0001\u0000\u0000\u0000\u0001<\u0000";
+ "\u0000\u0002\u0001\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001<\u0000\u0002:"
+ + "\u0000";
return newMessageInfo(DEFAULT_INSTANCE, info, objects);
}
// fall through
diff --git a/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessageOrBuilder.java b/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessageOrBuilder.java
index 51c9048..923d22f 100644
--- a/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessageOrBuilder.java
+++ b/app/android/app/src/main/java/com/thejeffcooper/hassmic/proto/ServerMessageOrBuilder.java
@@ -9,6 +9,12 @@ public interface ServerMessageOrBuilder
com.google.protobuf.MessageLiteOrBuilder {
/**
+ *
+ *
+ * + * A command to play audio + *+ * *
.hassmic.PlayAudio play_audio = 1;
*
* @return Whether the playAudio field is set.
@@ -16,11 +22,43 @@ public interface ServerMessageOrBuilder
boolean hasPlayAudio();
/**
+ *
+ *
+ * + * A command to play audio + *+ * *
.hassmic.PlayAudio play_audio = 1;
*
* @return The playAudio.
*/
com.thejeffcooper.hassmic.proto.PlayAudio getPlayAudio();
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @return Whether the setMicMute field is set.
+ */
+ boolean hasSetMicMute();
+
+ /**
+ *
+ *
+ * + * Set whether the mic should be muted + *+ * + *
bool set_mic_mute = 2;
+ *
+ * @return The setMicMute.
+ */
+ boolean getSetMicMute();
+
public com.thejeffcooper.hassmic.proto.ServerMessage.MsgCase getMsgCase();
}
diff --git a/app/app/cheyenne.ts b/app/app/cheyenne.ts
index 58b5b0e..ad9c049 100644
--- a/app/app/cheyenne.ts
+++ b/app/app/cheyenne.ts
@@ -29,6 +29,9 @@ class CheyenneServer {
// settable callback for connection state
private _connectionStateCallback: CallbackType