From 6c98a31b980d1d6cbbc9aeb2064d3f1c2252c3da Mon Sep 17 00:00:00 2001 From: gokuls Date: Wed, 17 May 2017 21:52:10 -0700 Subject: VES5.0 development changes not for test Change-Id: Ib44b38d24e8c841c1a85aaf82265b10f3d387b0c Signed-off-by: Gokul Singaraju --- .../evel_training/09-raise-state-change/Makefile | 31 ++++++ .../09-raise-state-change/hello_evel_world.c | 117 +++++++++++++++++++++ 2 files changed, 148 insertions(+) create mode 100644 VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/Makefile create mode 100644 VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/hello_evel_world.c (limited to 'VES5.0/evel/evel-library/code/evel_training/09-raise-state-change') diff --git a/VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/Makefile b/VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/Makefile new file mode 100644 index 00000000..6acfdd42 --- /dev/null +++ b/VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/Makefile @@ -0,0 +1,31 @@ +CC=gcc + +ARCH=$(shell getconf LONG_BIT) +CODE_ROOT=$(CURDIR)/../../.. +LIBS_DIR=$(CODE_ROOT)/libs/x86_$(ARCH) +INCLUDE_DIR=$(CODE_ROOT)/code/evel_library + +#****************************************************************************** +# Standard compiler flags. * +#****************************************************************************** +CPPFLAGS= +CFLAGS=-Wall -g -fPIC + +all: hello_evel_world + +hello_evel_world: hello_evel_world.c + $(CC) $(CPPFLAGS) $(CFLAGS) -o hello_evel_world \ + -L $(LIBS_DIR) \ + -I $(INCLUDE_DIR) \ + hello_evel_world.c \ + -lpthread \ + -level \ + -lcurl + +#****************************************************************************** +# Configure the vel_username and vel_password to +# vel_username = username +# vel_password = password +#****************************************************************************** +run: all + ./hello_evel_world localhost 30000 username password diff --git a/VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/hello_evel_world.c b/VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/hello_evel_world.c new file mode 100644 index 00000000..db0ab8b6 --- /dev/null +++ b/VES5.0/evel/evel-library/code/evel_training/09-raise-state-change/hello_evel_world.c @@ -0,0 +1,117 @@ +#include +#include +#include + +#include "evel.h" + +/*****************************************************************************/ +/* Local prototypes. */ +/*****************************************************************************/ +static void demo_state_change(void); + +int main(int argc, char ** argv) +{ + EVEL_ERR_CODES evel_rc = EVEL_SUCCESS; + EVENT_HEADER * heartbeat = NULL; + + printf("\nHello AT&T Vendor Event world!\n"); + fflush(stdout); + + if (argc != 5) + { + fprintf(stderr, + "Usage: %s | " + " \n", argv[0]); + exit(-1); + } + + /***************************************************************************/ + /* Initialize */ + /***************************************************************************/ + if (evel_initialize(argv[1], /* FQDN */ + atoi(argv[2]), /* Port */ + NULL, /* optional path */ + NULL, /* optional topic */ + 0, /* HTTPS? */ + argv[3], /* Username */ + argv[4], /* Password */ + EVEL_SOURCE_VIRTUAL_MACHINE, /* Source type */ + "EVEL training demo", /* Role */ + 0)) /* Verbosity */ + { + fprintf(stderr, "\nFailed to initialize the EVEL library!!!\n"); + exit(-1); + } + else + { + printf("\nInitialization completed\n"); + } + + /***************************************************************************/ + /* Send a heartbeat just to show we're alive! */ + /***************************************************************************/ + heartbeat = evel_new_heartbeat(); + if (heartbeat != NULL) + { + evel_rc = evel_post_event(heartbeat); + if (evel_rc != EVEL_SUCCESS) + { + printf("Post failed %d (%s)", evel_rc, evel_error_string()); + } + } + else + { + printf("New heartbeat failed"); + } + + /***************************************************************************/ + /* Raise a state change */ + /***************************************************************************/ + demo_state_change(); + + /***************************************************************************/ + /* Terminate */ + /***************************************************************************/ + sleep(1); + evel_terminate(); + printf("Terminated\n"); + + return 0; +} + +/**************************************************************************//** + * Create and send a state change event. + *****************************************************************************/ +void demo_state_change(void) +{ + EVENT_STATE_CHANGE * state_change = NULL; + EVEL_ERR_CODES evel_rc = EVEL_SUCCESS; + + /***************************************************************************/ + /* State Change */ + /***************************************************************************/ + state_change = evel_new_state_change(EVEL_ENTITY_STATE_IN_SERVICE, + EVEL_ENTITY_STATE_OUT_OF_SERVICE, + "Interface"); + if (state_change != NULL) + { + evel_state_change_type_set(state_change, "State Change"); + evel_state_change_addl_field_add(state_change, "Name1", "Value1"); + evel_state_change_addl_field_add(state_change, "Name2", "Value2"); + evel_rc = evel_post_event((EVENT_HEADER *)state_change); + if (evel_rc == EVEL_SUCCESS) + { + printf("Post OK!\n"); + } + else + { + printf("Post Failed %d (%s)\n", evel_rc, evel_error_string()); + } + } + else + { + printf("Failed to create event (%s)\n", evel_error_string()); + } + + printf(" Processed State Change\n"); +} -- cgit 1.2.3-korg