+/*
+ * This method converts UUID to canonical format string.
+ *
+ * @param uuid Device UUID
+ * @param strUuid converted UUID in canonical format
+ * @return OC_STACK_OK for success.
+ *
+ * @note Caller needs to invoke OICFree after done using the return pointer
+ */
+OCStackResult ConvertUuidToStr(const OicUuid_t* uuid, char** strUuid);
+
+
+/*
+ * This method converts string UUID to OicUuid_t.
+ *
+ * @param strUuid Device UUID in string format
+ * @param uuid converted UUID in OicUuid_t format
+ * @return OC_STACK_OK for success.
+ *
+ */
+OCStackResult ConvertStrToUuid(const char* strUuid, OicUuid_t* uuid);
+
+
+#if defined(__WITH_DTLS__) || defined (__WITH_TLS__)
+/**
+ * API to save the seed value to generate device UUID.
+ *
+ * @param seed buffer of seed value.
+ * @param seedSize byte length of seed
+ *
+ * @return ::OC_STACK_OK for Success, otherwise some error value.
+ */
+OCStackResult SetDeviceIdSeed(const uint8_t* seed, size_t seedSize);
+
+/**
+ * API to register OTM event handler
+ *
+ * @param otmEventHandler implementation of OTM event handler (@ref OicSecOtmEventHandler_t)
+ */
+void SetOtmEventHandler(OicSecOtmEventHandler_t otmEventHandler);
+
+/**
+ * Invoke OTM event handler to notify the OTM state.
+ *
+ * @param addr PT's address (address can be NULL in case of init state)
+ * @param port PT's port (It is meaningless in case of init state & BLE)
+ * @param uuid PT's UUID (UUID can be NULL in case of init state & coap reqest)
+ * @param event OTM state (@ref OicSecOtmEvent_t)
+ * @param result OTM result code
+ */
+void InvokeOtmEventHandler(const char* addr, uint16_t port,
+ const OicUuid_t* uuid, OicSecOtmEvent_t event);
+#endif
+