+
+func InitRMR(r *RICAlarm) error {
+ // Setup static RT for alarm system
+ endpoint := ALARM_MANAGER_RMR_URL
+ if r.moId == "my-pod" {
+ endpoint = "127.0.0.1:4560"
+ } else if r.moId == "my-pod-lib" {
+ endpoint = "127.0.0.1:4588"
+ }
+
+ alarmRT := fmt.Sprintf("newrt|start\nrte|13111|%s\nnewrt|end\n", endpoint)
+ alarmRTFile := "/tmp/alarm.rt"
+
+ if err := ioutil.WriteFile(alarmRTFile, []byte(alarmRT), 0644); err != nil {
+ log.Println("ioutil.WriteFile failed with error: ", err)
+ return err
+ }
+
+ os.Setenv("RMR_SEED_RT", alarmRTFile)
+ os.Setenv("RMR_RTG_SVC", "-1")
+
+ if ctx := C.rmrInit(); ctx != nil {
+ r.rmrCtx = ctx
+ r.rmrReady = true
+ return nil
+ }
+
+ return errors.New("rmrInit failed!")
+}