Example usage for org.apache.commons.configuration Configuration subset

List of usage examples for org.apache.commons.configuration Configuration subset

Introduction

In this page you can find the example usage for org.apache.commons.configuration Configuration subset.

Prototype

Configuration subset(String prefix);

Source Link

Document

Return a decorator Configuration containing every key from the current Configuration that starts with the specified prefix.

Usage

From source file:org.mobicents.servlet.restcomm.interpreter.SubVoiceInterpreter.java

public SubVoiceInterpreter(final Configuration configuration, final Sid account, final Sid phone,
        final String version, final URI url, final String method, final URI fallbackUrl,
        final String fallbackMethod, final URI statusCallback, final String statusCallbackMethod,
        final String emailAddress, final ActorRef callManager, final ActorRef conferenceManager,
        final ActorRef sms, final DaoManager storage, final Boolean hangupOnEnd) {
    super();/*from w  w  w .  j a v  a  2 s  .  c om*/
    source = self();
    downloadingRcml = new State("downloading rcml", new DownloadingRcml(source), null);
    ready = new State("ready", new Ready(source), null);
    notFound = new State("notFound", new NotFound(source), null);
    rejecting = new State("rejecting", new Rejecting(source), null);
    finished = new State("finished", new Finished(source), null);

    transitions.add(new Transition(acquiringAsrInfo, finished));
    transitions.add(new Transition(acquiringSynthesizerInfo, finished));
    transitions.add(new Transition(acquiringCallInfo, downloadingRcml));
    transitions.add(new Transition(acquiringCallInfo, finished));
    transitions.add(new Transition(downloadingRcml, ready));
    transitions.add(new Transition(downloadingRcml, notFound));
    transitions.add(new Transition(downloadingRcml, hangingUp));
    transitions.add(new Transition(downloadingRcml, finished));
    transitions.add(new Transition(ready, faxing));
    transitions.add(new Transition(ready, pausing));
    transitions.add(new Transition(ready, checkingCache));
    transitions.add(new Transition(ready, caching));
    transitions.add(new Transition(ready, synthesizing));
    transitions.add(new Transition(ready, rejecting));
    transitions.add(new Transition(ready, redirecting));
    transitions.add(new Transition(ready, processingGatherChildren));
    transitions.add(new Transition(ready, creatingRecording));
    transitions.add(new Transition(ready, creatingSmsSession));
    transitions.add(new Transition(ready, hangingUp));
    transitions.add(new Transition(ready, finished));
    transitions.add(new Transition(pausing, ready));
    transitions.add(new Transition(pausing, finished));
    transitions.add(new Transition(rejecting, finished));
    transitions.add(new Transition(faxing, ready));
    transitions.add(new Transition(faxing, finished));
    transitions.add(new Transition(caching, finished));
    transitions.add(new Transition(playing, ready));
    transitions.add(new Transition(playing, finished));
    transitions.add(new Transition(synthesizing, finished));
    transitions.add(new Transition(redirecting, ready));
    transitions.add(new Transition(redirecting, finished));
    transitions.add(new Transition(creatingRecording, finished));
    transitions.add(new Transition(finishRecording, ready));
    transitions.add(new Transition(finishRecording, finished));
    transitions.add(new Transition(processingGatherChildren, finished));
    transitions.add(new Transition(gathering, finished));
    transitions.add(new Transition(finishGathering, finished));
    transitions.add(new Transition(creatingSmsSession, finished));
    transitions.add(new Transition(sendingSms, ready));
    transitions.add(new Transition(sendingSms, finished));
    transitions.add(new Transition(hangingUp, finished));

    // Initialize the FSM.
    this.fsm = new FiniteStateMachine(uninitialized, transitions);
    // Initialize the runtime stuff.
    this.accountId = account;
    this.phoneId = phone;
    this.version = version;
    this.url = url;
    this.method = method;
    this.fallbackUrl = fallbackUrl;
    this.fallbackMethod = fallbackMethod;
    this.statusCallback = statusCallback;
    this.statusCallbackMethod = statusCallbackMethod;
    this.emailAddress = emailAddress;
    this.configuration = configuration;
    this.callManager = callManager;
    this.asrService = asr(configuration.subset("speech-recognizer"));
    this.faxService = fax(configuration.subset("fax-service"));
    this.smsService = sms;
    this.smsSessions = new HashMap<Sid, ActorRef>();
    this.storage = storage;
    this.synthesizer = tts(configuration.subset("speech-synthesizer"));
    final Configuration runtime = configuration.subset("runtime-settings");
    String path = runtime.getString("cache-path");
    if (!path.endsWith("/")) {
        path = path + "/";
    }
    path = path + accountId.toString();
    cachePath = path;
    String uri = runtime.getString("cache-uri");
    if (!uri.endsWith("/")) {
        uri = uri + "/";
    }
    try {
        uri = UriUtils.resolve(new URI(uri)).toString();
    } catch (URISyntaxException e) {
        logger.error("URISyntaxException while trying to resolve Cache URI: " + e);
    }
    uri = uri + accountId.toString();
    this.cache = cache(path, uri);
    this.downloader = downloader();
    this.hangupOnEnd = hangupOnEnd;
}

From source file:org.mobicents.servlet.restcomm.interpreter.VoiceInterpreter.java

public VoiceInterpreter(final Configuration configuration, final Sid account, final Sid phone,
        final String version, final URI url, final String method, final URI fallbackUrl,
        final String fallbackMethod, final URI statusCallback, final String statusCallbackMethod,
        final String emailAddress, final ActorRef callManager, final ActorRef conferenceManager,
        final ActorRef bridgeManager, final ActorRef sms, final DaoManager storage, final ActorRef monitoring,
        final String rcml) {
    super();/*w w  w.  jav  a2 s.c om*/
    final ActorRef source = self();
    downloadingRcml = new State("downloading rcml", new DownloadingRcml(source), null);
    downloadingFallbackRcml = new State("downloading fallback rcml", new DownloadingFallbackRcml(source), null);
    initializingCall = new State("initializing call", new InitializingCall(source), null);
    // initializedCall = new State("initialized call", new InitializedCall(source), new PostInitializedCall(source));
    ready = new State("ready", new Ready(source), null);
    notFound = new State("notFound", new NotFound(source), null);
    rejecting = new State("rejecting", new Rejecting(source), null);
    startDialing = new State("start dialing", new StartDialing(source), null);
    processingDialChildren = new State("processing dial children", new ProcessingDialChildren(source), null);
    acquiringOutboundCallInfo = new State("acquiring outbound call info", new AcquiringOutboundCallInfo(source),
            null);
    forking = new State("forking", new Forking(source), null);
    // joiningCalls = new State("joining calls", new JoiningCalls(source), null);
    this.creatingBridge = new State("creating bridge", new CreatingBridge(source), null);
    this.initializingBridge = new State("initializing bridge", new InitializingBridge(source), null);
    this.bridging = new State("bridging", new Bridging(source), null);
    bridged = new State("bridged", new Bridged(source), null);
    finishDialing = new State("finish dialing", new FinishDialing(source), null);
    acquiringConferenceInfo = new State("acquiring conference info", new AcquiringConferenceInfo(source), null);
    joiningConference = new State("joining conference", new JoiningConference(source), null);
    conferencing = new State("conferencing", new Conferencing(source), null);
    finishConferencing = new State("finish conferencing", new FinishConferencing(source), null);
    finished = new State("finished", new Finished(source), null);
    /*
     * dialing = new State("dialing", null, null); bridging = new State("bridging", null, null); conferencing = new
     * State("conferencing", null, null);
     */
    transitions.add(new Transition(acquiringAsrInfo, finished));
    transitions.add(new Transition(acquiringSynthesizerInfo, finished));
    transitions.add(new Transition(acquiringCallInfo, initializingCall));
    transitions.add(new Transition(acquiringCallInfo, downloadingRcml));
    transitions.add(new Transition(acquiringCallInfo, finished));
    transitions.add(new Transition(acquiringCallInfo, ready));
    transitions.add(new Transition(initializingCall, downloadingRcml));
    transitions.add(new Transition(initializingCall, ready));
    transitions.add(new Transition(initializingCall, finishDialing));
    transitions.add(new Transition(initializingCall, hangingUp));
    transitions.add(new Transition(initializingCall, finished));
    transitions.add(new Transition(downloadingRcml, ready));
    transitions.add(new Transition(downloadingRcml, notFound));
    transitions.add(new Transition(downloadingRcml, downloadingFallbackRcml));
    transitions.add(new Transition(downloadingRcml, hangingUp));
    transitions.add(new Transition(downloadingRcml, finished));
    transitions.add(new Transition(downloadingFallbackRcml, ready));
    transitions.add(new Transition(downloadingFallbackRcml, hangingUp));
    transitions.add(new Transition(downloadingFallbackRcml, finished));
    transitions.add(new Transition(downloadingFallbackRcml, notFound));
    transitions.add(new Transition(ready, initializingCall));
    transitions.add(new Transition(ready, faxing));
    transitions.add(new Transition(ready, sendingEmail));
    transitions.add(new Transition(ready, pausing));
    transitions.add(new Transition(ready, checkingCache));
    transitions.add(new Transition(ready, caching));
    transitions.add(new Transition(ready, synthesizing));
    transitions.add(new Transition(ready, rejecting));
    transitions.add(new Transition(ready, redirecting));
    transitions.add(new Transition(ready, processingGatherChildren));
    transitions.add(new Transition(ready, creatingRecording));
    transitions.add(new Transition(ready, creatingSmsSession));
    transitions.add(new Transition(ready, startDialing));
    transitions.add(new Transition(ready, hangingUp));
    transitions.add(new Transition(ready, finished));
    transitions.add(new Transition(pausing, ready));
    transitions.add(new Transition(pausing, finished));
    transitions.add(new Transition(rejecting, finished));
    transitions.add(new Transition(faxing, ready));
    transitions.add(new Transition(faxing, finished));
    transitions.add(new Transition(sendingEmail, ready));
    transitions.add(new Transition(sendingEmail, finished));
    transitions.add(new Transition(sendingEmail, finishDialing));
    transitions.add(new Transition(checkingCache, caching));
    transitions.add(new Transition(checkingCache, conferencing));
    transitions.add(new Transition(caching, finished));
    transitions.add(new Transition(caching, conferencing));
    transitions.add(new Transition(caching, finishConferencing));
    transitions.add(new Transition(playing, ready));
    transitions.add(new Transition(playing, finishConferencing));
    transitions.add(new Transition(playing, finished));
    transitions.add(new Transition(synthesizing, finished));
    transitions.add(new Transition(redirecting, ready));
    transitions.add(new Transition(redirecting, finished));
    transitions.add(new Transition(creatingRecording, finished));
    transitions.add(new Transition(finishRecording, ready));
    transitions.add(new Transition(finishRecording, finished));
    transitions.add(new Transition(processingGatherChildren, finished));
    transitions.add(new Transition(gathering, finished));
    transitions.add(new Transition(finishGathering, ready));
    transitions.add(new Transition(finishGathering, finishGathering));
    transitions.add(new Transition(finishGathering, finished));
    transitions.add(new Transition(creatingSmsSession, finished));
    transitions.add(new Transition(sendingSms, ready));
    transitions.add(new Transition(sendingSms, startDialing));
    transitions.add(new Transition(sendingSms, finished));
    transitions.add(new Transition(startDialing, processingDialChildren));
    transitions.add(new Transition(startDialing, acquiringConferenceInfo));
    transitions.add(new Transition(startDialing, faxing));
    transitions.add(new Transition(startDialing, sendingEmail));
    transitions.add(new Transition(startDialing, pausing));
    transitions.add(new Transition(startDialing, checkingCache));
    transitions.add(new Transition(startDialing, caching));
    transitions.add(new Transition(startDialing, synthesizing));
    transitions.add(new Transition(startDialing, redirecting));
    transitions.add(new Transition(startDialing, processingGatherChildren));
    transitions.add(new Transition(startDialing, creatingRecording));
    transitions.add(new Transition(startDialing, creatingSmsSession));
    transitions.add(new Transition(startDialing, startDialing));
    transitions.add(new Transition(startDialing, hangingUp));
    transitions.add(new Transition(startDialing, finished));
    transitions.add(new Transition(processingDialChildren, processingDialChildren));
    transitions.add(new Transition(processingDialChildren, forking));
    transitions.add(new Transition(processingDialChildren, hangingUp));
    transitions.add(new Transition(processingDialChildren, finished));
    transitions.add(new Transition(forking, acquiringOutboundCallInfo));
    transitions.add(new Transition(forking, finishDialing));
    transitions.add(new Transition(forking, hangingUp));
    transitions.add(new Transition(forking, finished));
    transitions.add(new Transition(forking, ready));
    // transitions.add(new Transition(acquiringOutboundCallInfo, joiningCalls));
    transitions.add(new Transition(acquiringOutboundCallInfo, hangingUp));
    transitions.add(new Transition(acquiringOutboundCallInfo, finished));
    transitions.add(new Transition(acquiringOutboundCallInfo, creatingBridge));
    transitions.add(new Transition(creatingBridge, initializingBridge));
    transitions.add(new Transition(creatingBridge, finishDialing));
    transitions.add(new Transition(initializingBridge, bridging));
    transitions.add(new Transition(initializingBridge, hangingUp));
    transitions.add(new Transition(bridging, bridged));
    transitions.add(new Transition(bridging, finishDialing));
    // transitions.add(new Transition(joiningCalls, finishDialing));
    // transitions.add(new Transition(joiningCalls, bridged));
    // transitions.add(new Transition(joiningCalls, hangingUp));
    // transitions.add(new Transition(joiningCalls, finished));
    transitions.add(new Transition(bridged, finishDialing));
    transitions.add(new Transition(bridged, finished));
    transitions.add(new Transition(finishDialing, ready));
    transitions.add(new Transition(finishDialing, faxing));
    transitions.add(new Transition(finishDialing, sendingEmail));
    transitions.add(new Transition(finishDialing, pausing));
    transitions.add(new Transition(finishDialing, checkingCache));
    transitions.add(new Transition(finishDialing, caching));
    transitions.add(new Transition(finishDialing, synthesizing));
    transitions.add(new Transition(finishDialing, redirecting));
    transitions.add(new Transition(finishDialing, processingGatherChildren));
    transitions.add(new Transition(finishDialing, creatingRecording));
    transitions.add(new Transition(finishDialing, creatingSmsSession));
    transitions.add(new Transition(finishDialing, startDialing));
    transitions.add(new Transition(finishDialing, hangingUp));
    transitions.add(new Transition(finishDialing, finished));
    transitions.add(new Transition(finishDialing, initializingCall));
    transitions.add(new Transition(acquiringConferenceInfo, joiningConference));
    transitions.add(new Transition(acquiringConferenceInfo, hangingUp));
    transitions.add(new Transition(acquiringConferenceInfo, finished));
    transitions.add(new Transition(joiningConference, conferencing));
    transitions.add(new Transition(joiningConference, hangingUp));
    transitions.add(new Transition(joiningConference, finished));
    transitions.add(new Transition(conferencing, finishConferencing));
    transitions.add(new Transition(conferencing, hangingUp));
    transitions.add(new Transition(conferencing, finished));
    transitions.add(new Transition(conferencing, checkingCache));
    transitions.add(new Transition(conferencing, caching));
    transitions.add(new Transition(conferencing, playing));
    transitions.add(new Transition(finishConferencing, ready));
    transitions.add(new Transition(finishConferencing, faxing));
    transitions.add(new Transition(finishConferencing, sendingEmail));
    transitions.add(new Transition(finishConferencing, pausing));
    transitions.add(new Transition(finishConferencing, checkingCache));
    transitions.add(new Transition(finishConferencing, caching));
    transitions.add(new Transition(finishConferencing, synthesizing));
    transitions.add(new Transition(finishConferencing, redirecting));
    transitions.add(new Transition(finishConferencing, processingGatherChildren));
    transitions.add(new Transition(finishConferencing, creatingRecording));
    transitions.add(new Transition(finishConferencing, creatingSmsSession));
    transitions.add(new Transition(finishConferencing, startDialing));
    transitions.add(new Transition(finishConferencing, hangingUp));
    transitions.add(new Transition(finishConferencing, finished));
    transitions.add(new Transition(hangingUp, finished));
    transitions.add(new Transition(hangingUp, finishDialing));
    transitions.add(new Transition(uninitialized, finished));
    // Initialize the FSM.
    this.fsm = new FiniteStateMachine(uninitialized, transitions);
    // Initialize the runtime stuff.
    this.accountId = account;
    this.phoneId = phone;
    this.version = version;
    this.url = url;
    this.method = method;
    this.fallbackUrl = fallbackUrl;
    this.fallbackMethod = fallbackMethod;
    this.statusCallback = statusCallback;
    this.statusCallbackMethod = statusCallbackMethod;
    this.emailAddress = emailAddress;
    this.configuration = configuration;
    this.callManager = callManager;
    this.conferenceManager = conferenceManager;
    this.bridgeManager = bridgeManager;
    this.asrService = asr(configuration.subset("speech-recognizer"));
    this.faxService = fax(configuration.subset("fax-service"));
    this.smsService = sms;
    this.smsSessions = new HashMap<Sid, ActorRef>();
    this.storage = storage;
    this.synthesizer = tts(configuration.subset("speech-synthesizer"));
    final Configuration runtime = configuration.subset("runtime-settings");
    String path = runtime.getString("cache-path");
    if (!path.endsWith("/")) {
        path = path + "/";
    }
    path = path + accountId.toString();
    cachePath = path;
    String uri = runtime.getString("cache-uri");
    if (!uri.endsWith("/")) {
        uri = uri + "/";
    }
    try {
        uri = UriUtils.resolve(new URI(uri)).toString();
    } catch (URISyntaxException e) {
        logger.error("URISyntaxException while trying to resolve Cache URI: " + e);
    }
    uri = uri + accountId.toString();
    playMusicForConference = Boolean.parseBoolean(runtime.getString("play-music-for-conference", "false"));
    this.cache = cache(path, uri);
    this.downloader = downloader();
    this.monitoring = monitoring;
    this.rcml = rcml;
}

From source file:org.mobicents.servlet.restcomm.provisioning.number.bandwidth.BandwidthNumberProvisioningManager.java

@Override
public void init(org.apache.commons.configuration.Configuration phoneNumberProvisioningConfiguration,
        org.apache.commons.configuration.Configuration telestaxProxyConfiguration,
        ContainerConfiguration containerConfiguration) {
    this.containerConfiguration = containerConfiguration;
    telestaxProxyEnabled = telestaxProxyConfiguration.getBoolean("enabled", false);
    if (telestaxProxyEnabled) {
        uri = telestaxProxyConfiguration.getString("uri");
        username = telestaxProxyConfiguration.getString("login");
        password = telestaxProxyConfiguration.getString("password");
        accountId = telestaxProxyConfiguration.getString("endpoint");
        siteId = telestaxProxyConfiguration.getString("siteId");
        activeConfiguration = telestaxProxyConfiguration;
    } else {//w  w w  .j  a  va 2  s  .c  om
        Configuration bandwidthConfiguration = phoneNumberProvisioningConfiguration.subset("bandwidth");
        uri = bandwidthConfiguration.getString("uri");
        username = bandwidthConfiguration.getString("username");
        password = bandwidthConfiguration.getString("password");
        accountId = bandwidthConfiguration.getString("accountId");
        siteId = bandwidthConfiguration.getString("siteId");
        activeConfiguration = bandwidthConfiguration;
    }
    httpClient = new DefaultHttpClient();
    Credentials credentials = new UsernamePasswordCredentials(username, password);
    httpClient.getCredentialsProvider().setCredentials(AuthScope.ANY, credentials);
}

From source file:org.mobicents.servlet.restcomm.provisioning.number.nexmo.NexmoPhoneNumberProvisioningManager.java

@Override
public void init(Configuration phoneNumberProvisioningConfiguration, Configuration telestaxProxyConfiguration,
        ContainerConfiguration containerConfiguration) {
    this.containerConfiguration = containerConfiguration;
    telestaxProxyEnabled = telestaxProxyConfiguration.getBoolean("enabled", false);
    if (telestaxProxyEnabled) {
        uri = telestaxProxyConfiguration.getString("uri");
        apiKey = telestaxProxyConfiguration.getString("api-key");
        apiSecret = telestaxProxyConfiguration.getString("api-secret");
        smppSystemType = telestaxProxyConfiguration.getString("smpp-system-type", "inbound");
        activeConfiguration = telestaxProxyConfiguration;
    } else {/* www.  ja  v a2 s .  co  m*/
        Configuration nexmoConfiguration = phoneNumberProvisioningConfiguration.subset("nexmo");
        uri = nexmoConfiguration.getString("uri");
        apiKey = nexmoConfiguration.getString("api-key");
        apiSecret = nexmoConfiguration.getString("api-secret");
        smppSystemType = nexmoConfiguration.getString("smpp-system-type", "inbound");
        activeConfiguration = nexmoConfiguration;
    }
    searchURI = uri + "/number/search/" + apiKey + "/" + apiSecret + "/";
    buyURI = uri + "/number/buy/" + apiKey + "/" + apiSecret + "/";
    updateURI = uri + "/number/update/" + apiKey + "/" + apiSecret + "/";
    cancelURI = uri + "/number/cancel/" + apiKey + "/" + apiSecret + "/";
}

From source file:org.mobicents.servlet.restcomm.provisioning.number.vi.VoIPInnovationsNumberProvisioningManager.java

@Override
public void init(Configuration phoneNumberProvisioningConfiguration, Configuration telestaxProxyConfiguration,
        ContainerConfiguration containerConfiguration) {
    this.containerConfiguration = containerConfiguration;
    telestaxProxyEnabled = telestaxProxyConfiguration.getBoolean("enabled", false);
    if (telestaxProxyEnabled) {
        uri = telestaxProxyConfiguration.getString("uri");
        username = telestaxProxyConfiguration.getString("login");
        password = telestaxProxyConfiguration.getString("password");
        endpoint = telestaxProxyConfiguration.getString("endpoint");
        activeConfiguration = telestaxProxyConfiguration;
    } else {// w  w w .  j  a  v a2  s.  com
        Configuration viConf = phoneNumberProvisioningConfiguration.subset("voip-innovations");
        uri = viConf.getString("uri");
        username = viConf.getString("login");
        password = viConf.getString("password");
        endpoint = viConf.getString("endpoint");
        activeConfiguration = viConf;
    }

    this.header = header(username, password);
    xstream = new XStream();
    xstream.alias("response", VoipInnovationsResponse.class);
    xstream.alias("header", VoipInnovationsHeader.class);
    xstream.alias("body", VoipInnovationsBody.class);
    xstream.alias("lata", LATAConverter.class);
    xstream.alias("npa", NPAConverter.class);
    xstream.alias("nxx", NXXConverter.class);
    xstream.alias("rate_center", RateCenterConverter.class);
    xstream.alias("state", StateConverter.class);
    xstream.alias("tn", TNConverter.class);
    xstream.registerConverter(new VoipInnovationsResponseConverter());
    xstream.registerConverter(new VoipInnovationsHeaderConverter());
    xstream.registerConverter(new VoipInnovationsBodyConverter());
    xstream.registerConverter(new GetDIDListResponseConverter());
    xstream.registerConverter(new LATAConverter());
    xstream.registerConverter(new NPAConverter());
    xstream.registerConverter(new NXXConverter());
    xstream.registerConverter(new RateCenterConverter());
    xstream.registerConverter(new StateConverter());
    xstream.registerConverter(new TNConverter());
}

From source file:org.mobicents.servlet.restcomm.provisioning.number.voxbone.VoxbonePhoneNumberProvisioningManager.java

@Override
public void init(Configuration phoneNumberProvisioningConfiguration, Configuration telestaxProxyConfiguration,
        ContainerConfiguration containerConfiguration) {
    this.containerConfiguration = containerConfiguration;
    telestaxProxyEnabled = telestaxProxyConfiguration.getBoolean("enabled", false);
    if (telestaxProxyEnabled) {
        uri = telestaxProxyConfiguration.getString("uri");
        username = telestaxProxyConfiguration.getString("username");
        password = telestaxProxyConfiguration.getString("password");
        activeConfiguration = telestaxProxyConfiguration;
    } else {//from  w w  w.jav a2  s  .co  m
        Configuration voxboneConfiguration = phoneNumberProvisioningConfiguration.subset("voxbone");
        uri = voxboneConfiguration.getString("uri");
        username = voxboneConfiguration.getString("username");
        password = voxboneConfiguration.getString("password");
        activeConfiguration = voxboneConfiguration;
    }
    searchURI = uri + "/inventory/didgroup";
    createCartURI = uri + "/ordering/cart";
    voiceURI = uri + "/configuration/voiceuri";
    updateURI = uri + "/configuration/configuration";
    cancelURI = uri + "/ordering/cancel";
    countriesURI = uri + "/inventory/country";
    listDidsURI = uri + "/inventory/did";

    Configuration callbackUrlsConfiguration = phoneNumberProvisioningConfiguration.subset("callback-urls");
    Client jerseyClient = Client.create();
    jerseyClient.addFilter(new HTTPBasicAuthFilter(username, password));

    WebResource webResource = jerseyClient.resource(voiceURI);
    String body = "{\"voiceUri\":{\"voiceUriProtocol\":\"SIP\",\"uri\":\""
            + callbackUrlsConfiguration.getString("voice[@url]") + "\"}}";
    ClientResponse clientResponse = webResource.accept(CONTENT_TYPE).type(CONTENT_TYPE)
            .put(ClientResponse.class, body);

    String voiceURIResponse = clientResponse.getEntity(String.class);
    if (logger.isDebugEnabled())
        logger.debug("response " + voiceURIResponse);

    JsonParser parser = new JsonParser();
    JsonObject jsonVoiceURIResponse = parser.parse(voiceURIResponse).getAsJsonObject();

    if (clientResponse.getClientResponseStatus() == Status.OK) {
        JsonObject voxVoiceURI = jsonVoiceURIResponse.get("voiceUri").getAsJsonObject();
        voiceUriId = voxVoiceURI.get("voiceUriId").getAsString();
    } else if (clientResponse.getClientResponseStatus() == Status.UNAUTHORIZED) {
        JsonObject error = jsonVoiceURIResponse.get("errors").getAsJsonArray().get(0).getAsJsonObject();
        throw new IllegalArgumentException(error.get("apiErrorMessage").getAsString());
    } else {
        webResource = jerseyClient.resource(voiceURI);
        clientResponse = webResource.queryParam(PAGE_NUMBER, "0").queryParam(PAGE_SIZE, "300")
                .accept(CONTENT_TYPE).type(CONTENT_TYPE).get(ClientResponse.class);

        String listVoiceURIResponse = clientResponse.getEntity(String.class);
        if (logger.isDebugEnabled())
            logger.debug("response " + listVoiceURIResponse);

        JsonObject jsonListVoiceURIResponse = parser.parse(listVoiceURIResponse).getAsJsonObject();
        // TODO go through the list of voiceURI id and check which one is matching
        JsonObject voxVoiceURI = jsonListVoiceURIResponse.get("voiceUris").getAsJsonArray().get(0)
                .getAsJsonObject();
        voiceUriId = voxVoiceURI.get("voiceUriId").getAsString();
    }
}

From source file:org.mobicents.servlet.restcomm.sms.smpp.SmppService.java

public SmppService(final ActorSystem system, final Configuration configuration, final SipFactory factory,
        final DaoManager storage, final ServletContext servletContext, final ActorRef smppMessageHandler) {

    super();/*www.ja va  2  s .com*/
    this.system = system;
    this.smppMessageHandler = smppMessageHandler;
    this.configuration = configuration;
    final Configuration runtime = configuration.subset("runtime-settings");
    this.authenticateUsers = runtime.getBoolean("authenticate");
    this.servletConfig = (ServletConfig) configuration.getProperty(ServletConfig.class.getName());
    this.sipFactory = factory;
    this.storage = storage;
    this.servletContext = servletContext;

    Configuration config = this.configuration.subset("smpp");
    smppActivated = config.getString("[@activateSmppConnection]");

    //get smpp address map from restcomm.xml file
    this.smppSourceAddressMap = config.getString("connections.connection[@sourceAddressMap]");
    this.smppDestinationAddressMap = config.getString("connections.connection[@destinationAddressMap]");
    this.smppTonNpiValue = config.getString("connections.connection[@tonNpiValue]");

    this.initializeSmppConnections();
}

From source file:org.mobicents.servlet.restcomm.sms.SmsService.java

public SmsService(final ActorSystem system, final Configuration configuration, final SipFactory factory,
        final DaoManager storage, final ServletContext servletContext) {
    super();//from   w  w w.j a va 2s .com
    this.system = system;
    this.configuration = configuration;
    final Configuration runtime = configuration.subset("runtime-settings");
    this.authenticateUsers = runtime.getBoolean("authenticate");
    this.servletConfig = (ServletConfig) configuration.getProperty(ServletConfig.class.getName());
    this.sipFactory = factory;
    this.storage = storage;
    this.servletContext = servletContext;
    monitoringService = (ActorRef) servletContext.getAttribute(MonitoringService.class.getName());
    // final Configuration runtime = configuration.subset("runtime-settings");
    // TODO this.useTo = runtime.getBoolean("use-to");
    patchForNatB2BUASessions = runtime.getBoolean("patch-for-nat-b2bua-sessions", true);
}

From source file:org.mobicents.servlet.restcomm.sms.SmsServiceProxy.java

@Override
public void servletInitialized(SipServletContextEvent event) {
    if (event.getSipServlet().getClass().equals(SmsServiceProxy.class)) {
        context = event.getServletContext();
        final SipFactory factory = (SipFactory) context.getAttribute(SIP_FACTORY);
        Configuration configuration = (Configuration) context.getAttribute(Configuration.class.getName());
        final DaoManager storage = (DaoManager) context.getAttribute(DaoManager.class.getName());
        system = (ActorSystem) context.getAttribute(ActorSystem.class.getName());
        service = service(configuration, factory, storage);
        context.setAttribute(SmsService.class.getName(), service);
        if (configuration.subset("smpp").getString("[@activateSmppConnection]", "false")
                .equalsIgnoreCase("true")) {
            if (logger.isInfoEnabled()) {
                logger.info("Will initialize SMPP");
            }/*from www.j a  va  2s. c o m*/
            smppMessageHandler = smppMessageHandler();
            smppService = smppService(configuration, factory, storage, context, smppMessageHandler);
            context.setAttribute(SmppService.class.getName(), smppService);
            context.setAttribute(SmppMessageHandler.class.getName(), smppMessageHandler);
        }
    }
}

From source file:org.mobicents.servlet.restcomm.sms.SmsSession.java

public SmsSession(final Configuration configuration, final SipFactory factory, final SipURI transport,
        final DaoManager storage, final ActorRef monitoringService, final ServletContext servletContext) {
    super();// w  w w  .j  av a  2  s  .  c  o  m
    this.configuration = configuration;
    this.smsConfiguration = configuration.subset("sms-aggregator");
    this.factory = factory;
    this.observers = new ArrayList<ActorRef>();
    this.transport = transport;
    this.attributes = new HashMap<String, Object>();
    this.storage = storage;
    this.monitoringService = monitoringService;
    this.servletContext = servletContext;
    this.smppActivated = Boolean
            .parseBoolean(this.configuration.subset("smpp").getString("[@activateSmppConnection]", "false"));
    if (smppActivated) {
        smppMessageHandler = (ActorRef) servletContext.getAttribute(SmppMessageHandler.class.getName());
    }
    String defaultHost = transport.getHost();
    this.externalIP = this.configuration.subset("runtime-settings").getString("external-ip");
    if (externalIP == null || externalIP.isEmpty() || externalIP.equals(""))
        externalIP = defaultHost;
}