ucs_binding.c: Add control message transmission
[apps/agl-service-unicens.git] / ucs2-afb / ucs_apidef.h
index 1dac82a..d3dfd3c 100644 (file)
@@ -43,7 +43,15 @@ static const char _afb_description_v2_UNICENS[] =
     "\"type\":\"integer\",\"format\":\"int32\"}},{\"in\":\"query\",\"name\":\""
     "data\",\"required\":true,\"schema\":{\"type\":\"array\",\"format\":\"int"
     "32\"},\"style\":\"simple\"}],\"responses\":{\"200\":{\"$ref\":\"#/compon"
-    "ents/responses/200\"}}}}}}"
+    "ents/responses/200\"}}}},\"/sendmessage\":{\"description\":\"Transmits a"
+    " control message to a node.\",\"get\":{\"x-permissions\":{\"$ref\":\"#/c"
+    "omponents/x-permissions/monitor\"},\"parameters\":[{\"in\":\"query\",\"n"
+    "ame\":\"node\",\"required\":true,\"schema\":{\"type\":\"integer\",\"form"
+    "at\":\"int32\"}},{\"in\":\"query\",\"name\":\"msgid\",\"required\":true,"
+    "\"schema\":{\"type\":\"integer\",\"format\":\"int32\"}},{\"in\":\"query\""
+    ",\"name\":\"data\",\"required\":true,\"schema\":{\"type\":\"array\",\"fo"
+    "rmat\":\"int32\"},\"style\":\"simple\"}],\"responses\":{\"200\":{\"$ref\""
+    ":\"#/components/responses/200\"}}}}}}"
 ;
 
 static const struct afb_auth _afb_auths_v2_UNICENS[] = {
@@ -55,6 +63,7 @@ static const struct afb_auth _afb_auths_v2_UNICENS[] = {
  void ucs2_initialise(struct afb_req req);
  void ucs2_subscribe(struct afb_req req);
  void ucs2_writei2c(struct afb_req req);
+ void ucs2_sendmessage(struct afb_req req);
 
 static const struct afb_verb_v2 _afb_verbs_v2_UNICENS[] = {
     {
@@ -85,6 +94,13 @@ static const struct afb_verb_v2 _afb_verbs_v2_UNICENS[] = {
         .info = "Writes I2C command to remote node.",
         .session = AFB_SESSION_NONE_V2
     },
+    {
+        .verb = "sendmessage",
+        .callback = ucs2_sendmessage,
+        .auth = &_afb_auths_v2_UNICENS[1],
+        .info = "Transmits a control message to a node.",
+        .session = AFB_SESSION_NONE_V2
+    },
     {
         .verb = NULL,
         .callback = NULL,