Package javax.servlet.sip

Examples of javax.servlet.sip.SipURI


     
      if (connectors != null)
      {
        for (SipConnector connector : connectors)
        {
          SipURI uri = new SipURIImpl(null, connector.getAddr().getHostAddress(), connector.getLocalPort());
          if (!outbounds.contains(uri))
            outbounds.add(new ReadOnlySipURI(uri));
          if (!externals.contains(connector.getSipUri()))
            externals.add(new ReadOnlySipURI(connector.getSipUri()));
        }
View Full Code Here


    _dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
  }
 
  public String getAor(Address address)
  {
    SipURI uri = (SipURI) address.getURI();
    return "sip:" + uri.getUser() + "@" + uri.getHost().toLowerCase();
  }
View Full Code Here

    public boolean isLocalUri(URI uri)
    {
        if (!uri.isSipURI())
            return false;
       
        SipURI sipUri = (SipURI) uri;

        if (!sipUri.getLrParam())
            return false;

        String host = sipUri.getHost();
       
        // Normalize IPv6 address
    if (host.indexOf("[") != -1)
    {
      try
      {
        host = InetAddress.getByName(host).getHostAddress();
      }
      catch (UnknownHostException e)
      {
        Log.ignore(e);
      }
    }
   
        for (int i = 0; i < _connectors.length; i++)
        {
            SipConnector connector = _connectors[i];
           
            String connectorHost = connector.getSipUri().getHost();
           
            boolean samePort = connector.getPort() == sipUri.getPort() || sipUri.getPort() == -1;
            if (samePort)
            {
              if ((connectorHost.equals(host) || connector.getAddr().getHostAddress().equals(host)))
              {
                if (sipUri.getPort() != -1)
                  return true;
               
                // match on host address and port is not set ==> NAPTR case
                if (connector.getAddr().getHostAddress().equals(host)
                    && connector.getPort() != connector.getDefaultPort())
View Full Code Here

       
        try
        {
          if (route != null)
          {
            SipURI uri = (SipURI) route.getURI();
            if (RouterInfoUtil.ROUTER_INFO.equals(uri.getUser()))
            {
              routerInfo = RouterInfoUtil.decode(uri);
              route = popLocalRoute(request);
            }
            if (route != null)
View Full Code Here

        }
      }
      else if (SipRouteModifier.ROUTE_BACK == routerInfo.getRouteModifier() && routes != null)
      {
        SipConnector defaultConnector = getConnectorManager().getDefaultConnector();
          SipURI ownRoute = new SipURIImpl(null, defaultConnector.getHost(), defaultConnector.getPort());
          RouterInfoUtil.encode(ownRoute, routerInfo);

          ownRoute.setLrParam(true);
        request.pushRoute(ownRoute);
        for (int i = routes.length; i >= 0; --i)
          request.pushRoute(new NameAddr(routes[i]));
        request.send();
        return true;
View Full Code Here

        contact = sipUri.getUser() + "@" + sipUri.getHost() + ":" + sipUri.getPort();
        return contact;
    }

    private Address createSipAddress(String hostName, int port) {
        SipURI feSipUri = new SipURIImpl();
        feSipUri.setHost(hostName);
        feSipUri.setPort(port);
        feSipUri.setLrParam(true);
        feSipUri.setParameter(CLBConstants.FE_LB_PARAM, "TRUE");
        Address feAddress = SipFactoryImpl.getInstance().createAddress(feSipUri);
        return feAddress;
    }
View Full Code Here

        SipURIImpl uri = null;

        if (nextTarget != null && nextTarget.isSipURI())
        {
            SipURI targetUri = (SipURI) nextTarget;
            boolean isTransportParamTls =
                    targetUri.getTransportParam() != null &&
                            targetUri.getTransportParam().equalsIgnoreCase("tls");

            if (targetUri.isSecure() || isTransportParamTls)
            {
                uri = (SipURIImpl) m_SURI.clone();

                // Do not use SIPS URI scheme if transport=TLS
                if (isTransportParamTls)
View Full Code Here

        SipURIImpl uri = null;

        if (nextTarget != null && nextTarget.isSipURI())
        {
            SipURI targetUri = (SipURI) nextTarget;
            boolean isTransportParamTls =
                    targetUri.getTransportParam() != null &&
                            targetUri.getTransportParam().equalsIgnoreCase("tls");

            if (targetUri.isSecure() || isTransportParamTls)
            {
                uri = (SipURIImpl) m_SURI.clone();

                // Do not use SIPS URI scheme if transport=TLS
                if (isTransportParamTls)
View Full Code Here

            return req.getRequestURI().getScheme();
        }

        if (req.getRequestURI().isSipURI()) {
            // these parameters is only valid for SipURI's
            SipURI uri = (SipURI) req.getRequestURI();

            if (name.equals("request.uri.user")) {
                return uri.getUser();
            }

            if (name.equals("request.uri.host")) {
                return uri.getHost();
            }

            if (name.equals("request.uri.port")) {
                return getUriPort(uri);
            }

            if (name.equals("request.uri.tel") &&
                    "phone".equals(uri.getParameter("user"))) {
                return getPhoneNumber(uri.getUser());
            }
        } else if (req.getRequestURI().getScheme()
                          .equalsIgnoreCase(SipFactoryImpl.TEL_URI_PROTOCOL)) {
            if (name.equals("request.uri.tel")) {
                return getPhoneNumber(((TelURL) req.getRequestURI()).getPhoneNumber());
            }
        }

        StringTokenizer token = new StringTokenizer(name, ".");
        int ntok = token.countTokens();
        String[] elements = new String[ntok];

        for (int i = 0; i < ntok; i++) {
            elements[i] = token.nextToken();
        }

        // Request URI parameters
        if (name.startsWith("request.uri.param")) {
            if (elements.length > 3) {
                return new UriWrapper(req).getParameter(elements[3]);
            }
        }

        // General Headers
        //
        // request.<header>.uri
        // request.<header>.uri.scheme
        // request.<header>.uri.user
        // request.<header>.uri.host
        // request.<header>.uri.port
        // request.<header>.uri.display-name
        if (name.startsWith("request.")) {
            if ((elements.length > 2) && "uri".equals(elements[2])) {
                try {
                    if (elements.length < 4) {
                        return req.getHeader(elements[1]);
                    }

                    // Handle request.<header>.uri.scheme
                    if ("scheme".equals(elements[3])) {
                        return req.getAddressHeader(elements[1]).getURI()
                                  .getScheme();
                    }

                    // request.<header>.uri.display-name
                    if ("display-name".equals(elements[3])) {
                        return req.getAddressHeader(elements[1]).getDisplayName();
                    }

                    if (req.getAddressHeader(elements[1]).getURI().isSipURI()) {
                        SipURI headerURI = (SipURI) req.getAddressHeader(elements[1])
                                                       .getURI();

                        if ("user".equals(elements[3])) {
                            return headerURI.getUser();
                        }

                        if ("host".equals(elements[3])) {
                            return headerURI.getHost();
                        }

                        if ("port".equals(elements[3])) {
                            return getUriPort(headerURI);
                        }
View Full Code Here

            return req.getRequestURI().getScheme();
        }

        if (req.getRequestURI().isSipURI()) {
            // these parameters is only valid for SipURI's
            SipURI uri = (SipURI) req.getRequestURI();

            if (name.equals("request.uri.user")) {
                return uri.getUser();
            }

            if (name.equals("request.uri.host")) {
                return uri.getHost();
            }

            if (name.equals("request.uri.port")) {
                return getUriPort(uri);
            }

            if (name.equals("request.uri.tel") &&
                    "phone".equals(uri.getParameter("user"))) {
                return getPhoneNumber(uri.getUser());
            }
        } else if (req.getRequestURI().getScheme()
                          .equalsIgnoreCase(SipConstants.TEL_URI_PROTOCOL)) {
            if (name.equals("request.uri.tel")) {
                return getPhoneNumber(((TelURL) req.getRequestURI()).getPhoneNumber());
            }
        }

        StringTokenizer token = new StringTokenizer(name, ".");
        int ntok = token.countTokens();
        String[] elements = new String[ntok];

        for (int i = 0; i < ntok; i++) {
            elements[i] = token.nextToken();
        }

        // Request URI parameters
        if (name.startsWith("request.uri.param")) {
            if (elements.length > 3) {
                if (req.getRequestURI() instanceof SipURI) {
                    SipURI sipUri = (SipURI) req.getRequestURI();
                    return sipUri.getParameter(elements[3]);
                } else {
                    TelURL telUrl = (TelURL) req.getRequestURI();
                    return telUrl.getParameter(elements[3]);
                }
            }
        }

        // General Headers
        //
        // request.<header>.uri
        // request.<header>.uri.scheme
        // request.<header>.uri.user
        // request.<header>.uri.host
        // request.<header>.uri.port
        // request.<header>.uri.display-name
        if (name.startsWith("request.")) {
            if ((elements.length > 2) && "uri".equals(elements[2])) {
                try {
                    if (elements.length < 4) {
                        return req.getHeader(elements[1]);
                    }

                    // Handle request.<header>.uri.scheme
                    if ("scheme".equals(elements[3])) {
                        return req.getAddressHeader(elements[1]).getURI()
                                  .getScheme();
                    }

                    // request.<header>.uri.display-name
                    if ("display-name".equals(elements[3])) {
                        return req.getAddressHeader(elements[1]).getDisplayName();
                    }

                    if (req.getAddressHeader(elements[1]).getURI().isSipURI()) {
                        SipURI headerURI = (SipURI) req.getAddressHeader(elements[1])
                                                       .getURI();

                        if ("user".equals(elements[3])) {
                            return headerURI.getUser();
                        }

                        if ("host".equals(elements[3])) {
                            return headerURI.getHost();
                        }

                        if ("port".equals(elements[3])) {
                            return getUriPort(headerURI);
                        }
View Full Code Here

TOP

Related Classes of javax.servlet.sip.SipURI

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.