diff --git a/callstats-java-sdk/config/callstats-java-sdk.properties b/callstats-java-sdk/config/callstats-java-sdk.properties index 07595c1..ac6a91a 100644 --- a/callstats-java-sdk/config/callstats-java-sdk.properties +++ b/callstats-java-sdk/config/callstats-java-sdk.properties @@ -1,4 +1,4 @@ -CallStats.AuthBaseURL = http://127.0.0.1:3001 +CallStats.AuthBaseURL = https://auth.callstats.io CallStats.EventsBaseURL = http://127.0.0.1:3000 CallStats.StatsBaseURL = http://127.0.0.1:3000 CallStats.AuthTimeOut = 5000 diff --git a/callstats-java-sdk/src/main/java/io/callstats/sdk/CallStats.java b/callstats-java-sdk/src/main/java/io/callstats/sdk/CallStats.java index 784b2ac..f09edd5 100644 --- a/callstats-java-sdk/src/main/java/io/callstats/sdk/CallStats.java +++ b/callstats-java-sdk/src/main/java/io/callstats/sdk/CallStats.java @@ -13,6 +13,8 @@ import org.apache.logging.log4j.Logger; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; + +import io.callstats.sdk.data.AdditionalIDs; import io.callstats.sdk.data.BridgeStatusInfo; import io.callstats.sdk.data.ConferenceInfo; import io.callstats.sdk.data.ConferenceStats; @@ -260,9 +262,21 @@ public synchronized void sendCallStatsConferenceEvent(CallStatsConferenceEvents long apiTS = System.currentTimeMillis(); if (eventType == CallStatsConferenceEvents.CONFERENCE_SETUP) { + AdditionalIDs additionalIDs = new AdditionalIDs(); + additionalIDs.setFqExtensionID(conferenceInfo.getFqExtensionID()); + additionalIDs.setSessionID(conferenceInfo.getSessionID()); + additionalIDs.setServerName(conferenceInfo.getServerName()); + additionalIDs.setPbxID(conferenceInfo.getPbxID()); + additionalIDs.setPbxExtensionID(conferenceInfo.getPbxExtensionID()); + additionalIDs.setMeetingsName(conferenceInfo.getMeetingsName()); + additionalIDs.setProductName(conferenceInfo.getProductName()); + additionalIDs.setTenantID(conferenceInfo.getTenantID()); + additionalIDs.setXcaasID(conferenceInfo.getXcaasID()); + additionalIDs.setCustomerID(conferenceInfo.getCustomerID()); ConferenceSetupEvent eventMessage = - new ConferenceSetupEvent(bridgeId, conferenceInfo.getInitiatorID(), conferenceInfo.getInitiatorSiteID(), apiTS, serverInfo); + new ConferenceSetupEvent(bridgeId, conferenceInfo.getInitiatorID(), conferenceInfo.getInitiatorSiteID(), apiTS, serverInfo, additionalIDs); String requestMessageString = gson.toJson(eventMessage); + eventMessage.setLoginlID(conferenceInfo.getLoginID()); String url = ""; try { url = diff --git a/callstats-java-sdk/src/main/java/io/callstats/sdk/data/AdditionalIDs.java b/callstats-java-sdk/src/main/java/io/callstats/sdk/data/AdditionalIDs.java new file mode 100644 index 0000000..216af18 --- /dev/null +++ b/callstats-java-sdk/src/main/java/io/callstats/sdk/data/AdditionalIDs.java @@ -0,0 +1,96 @@ +package io.callstats.sdk.data; + +public class AdditionalIDs { + + private String sessionID; + private String pbxID; + private String pbxExtensionID; + private String tenantID; + private String productName; + private String meetingsName; + private String serverName; + private String fqExtensionID; + private String xcaasID; + private String customerID; + + public String getCustomerID() { + return customerID; + } + + public void setCustomerID(String customerID) { + this.customerID = customerID; + } + + public String getSessionID() { + return sessionID; + } + + public void setSessionID(String sessionID) { + this.sessionID = sessionID; + } + + public String getPbxID() { + return pbxID; + } + + public void setPbxID(String pbxID) { + this.pbxID = pbxID; + } + + public String getPbxExtensionID() { + return pbxExtensionID; + } + + public void setPbxExtensionID(String pbxExtensionID) { + this.pbxExtensionID = pbxExtensionID; + } + + public String getTenantID() { + return tenantID; + } + + public void setTenantID(String tenantID) { + this.tenantID = tenantID; + } + + public String getProductName() { + return productName; + } + + public void setProductName(String productName) { + this.productName = productName; + } + + public String getMeetingsName() { + return meetingsName; + } + + public void setMeetingsName(String meetingsName) { + this.meetingsName = meetingsName; + } + + public String getServerName() { + return serverName; + } + + public void setServerName(String serverName) { + this.serverName = serverName; + } + + public String getFqExtensionID() { + return fqExtensionID; + } + + public void setFqExtensionID(String fqExtensionID) { + this.fqExtensionID = fqExtensionID; + } + + public String getXcaasID() { + return xcaasID; + } + + public void setXcaasID(String xcaasID) { + this.xcaasID = xcaasID; + } + +} diff --git a/callstats-java-sdk/src/main/java/io/callstats/sdk/data/ConferenceInfo.java b/callstats-java-sdk/src/main/java/io/callstats/sdk/data/ConferenceInfo.java index 5b32eb7..3314f8e 100644 --- a/callstats-java-sdk/src/main/java/io/callstats/sdk/data/ConferenceInfo.java +++ b/callstats-java-sdk/src/main/java/io/callstats/sdk/data/ConferenceInfo.java @@ -5,6 +5,107 @@ public class ConferenceInfo { private String confID; private String initiatorID; private String initiatorSiteID; + + private String sessionID; + private String pbxID; + private String pbxExtensionID; + private String tenantID; + private String productName; + private String meetingsName; + private String serverName; + private String fqExtensionID; + private String loginID; + private String xcaasID; + private String customerID; + + + public String getCustomerID() { + return customerID; + } + + public void setCustomerID(String customerID) { + this.customerID = customerID; + } + + public String getSessionID() { + return sessionID; + } + + public void setSessionID(String sessionID) { + this.sessionID = sessionID; + } + + public String getPbxID() { + return pbxID; + } + + public void setPbxID(String pbxID) { + this.pbxID = pbxID; + } + + public String getPbxExtensionID() { + return pbxExtensionID; + } + + public void setPbxExtensionID(String pbxExtensionID) { + this.pbxExtensionID = pbxExtensionID; + } + + public String getTenantID() { + return tenantID; + } + + public void setTenantID(String tenantID) { + this.tenantID = tenantID; + } + + public String getProductName() { + return productName; + } + + public void setProductName(String productName) { + this.productName = productName; + } + + public String getMeetingsName() { + return meetingsName; + } + + public void setMeetingsName(String meetingsName) { + this.meetingsName = meetingsName; + } + + public String getServerName() { + return serverName; + } + + public void setServerName(String serverName) { + this.serverName = serverName; + } + + public String getFqExtensionID() { + return fqExtensionID; + } + + public void setFqExtensionID(String fqExtensionID) { + this.fqExtensionID = fqExtensionID; + } + + public String getLoginID() { + return loginID; + } + + public void setLoginID(String loginID) { + this.loginID = loginID; + } + + public String getXcaasID() { + return xcaasID; + } + + public void setXcaasID(String xcaasID) { + this.xcaasID = xcaasID; + } public String getConfID() { return confID; diff --git a/callstats-java-sdk/src/main/java/io/callstats/sdk/messages/ConferenceSetupEvent.java b/callstats-java-sdk/src/main/java/io/callstats/sdk/messages/ConferenceSetupEvent.java index ada6737..138aa7b 100644 --- a/callstats-java-sdk/src/main/java/io/callstats/sdk/messages/ConferenceSetupEvent.java +++ b/callstats-java-sdk/src/main/java/io/callstats/sdk/messages/ConferenceSetupEvent.java @@ -1,6 +1,7 @@ package io.callstats.sdk.messages; import io.callstats.sdk.data.ServerInfo; +import io.callstats.sdk.data.AdditionalIDs; public class ConferenceSetupEvent { @@ -9,6 +10,8 @@ public class ConferenceSetupEvent { String deviceID; long timestamp; ServerInfo endpointInfo; + AdditionalIDs additionalIDs; + String loginID; String siteID; public String getLocalID() { @@ -58,18 +61,28 @@ public String getSiteID() { public void setSiteID(String siteID) { this.siteID = siteID; } + + public String getLoginID() { + return loginID; + } + + public void setLoginlID(String loginID) { + this.loginID = loginID; + } public ConferenceSetupEvent(String localID, String originID, String siteID, long timestamp, - ServerInfo serverInfo) { + ServerInfo serverInfo, AdditionalIDs additionalIDs) { this.localID = localID; this.originID = originID; this.timestamp = timestamp; this.endpointInfo = serverInfo; this.deviceID = this.localID; this.siteID = siteID; + this.additionalIDs = additionalIDs; } + public ConferenceSetupEvent(String localID, String originID, long timestamp, - ServerInfo serverInfo) { - this(localID, originID, "", timestamp , serverInfo); + ServerInfo serverInfo, AdditionalIDs additionalIDs) { + this(localID, originID, "", timestamp , serverInfo, additionalIDs); } } diff --git a/callstats-java-sdk/src/test/java/io/callstats/sdk/CallStatsTest.java b/callstats-java-sdk/src/test/java/io/callstats/sdk/CallStatsTest.java index 22c048a..6a0e244 100644 --- a/callstats-java-sdk/src/test/java/io/callstats/sdk/CallStatsTest.java +++ b/callstats-java-sdk/src/test/java/io/callstats/sdk/CallStatsTest.java @@ -202,6 +202,8 @@ public void initializeTestWihSendCallStatsConferenceStartEvent() { Mockito.verify(listener).onInitialized(msg); ConferenceInfo conferenceInfo = new ConferenceInfo("callstats.io/room1", "2345", "site1"); + conferenceInfo.setMeetingsName("JVBMeeting"); + conferenceInfo.setTenantID("JVB tenant"); System.out.println("sending conference start "); callstatslib.sendCallStatsConferenceEvent(CallStatsConferenceEvents.CONFERENCE_SETUP, conferenceInfo, new CallStatsStartConferenceListener() {