<?xml version="1.0" encoding="utf-8"?>

<wsdl:definitions targetNamespace="urn:icsy:venice:wsdl:voip:supp" name="SupplementaryServices"
	xmlns:tns="urn:icsy:venice:wsdl:voip:supp"
	xmlns:basic="urn:icsy:venice:types:basic"
	xmlns:domain="urn:icsy:venice:types:domain"
	xmlns:voip="urn:icsy:venice:types:voip"
	xmlns:faults="urn:icsy:venice:types:faults"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

	<!-- ========== Types ============ -->

	<wsdl:types>

		<xsd:schema elementFormDefault="qualified">
			<xsd:import namespace="urn:icsy:venice:types:basic" schemaLocation="http://www.v-grid.info/types/basic.xsd"/>
			<xsd:import namespace="urn:icsy:venice:types:domain" schemaLocation="http://www.v-grid.info/types/domain.xsd"/>
			<xsd:import namespace="urn:icsy:venice:types:voip" schemaLocation="http://www.v-grid.info/types/voip.xsd"/>
			<xsd:import namespace="urn:icsy:venice:types:faults" schemaLocation="http://www.v-grid.info/types/faults.xsd"/>
		</xsd:schema>

	</wsdl:types>

	<!-- ========== Messages ============ -->

	<wsdl:message name="Message_SupplementaryServices_getDefaultSupplementaryServices">
		<wsdl:documentation>The request message for the operation getDefaultSupplementaryServices().</wsdl:documentation>
		<wsdl:part name="sso" type="domain:SSOInformation"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_getDefaultSupplementaryServicesResponse">
		<wsdl:documentation>The response message for the operation getDefaultSupplementaryServices().</wsdl:documentation>
		<wsdl:part name="result" type="basic:AnyURIArray"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_getSupplementaryServices">
		<wsdl:documentation>The request message for the operation getSupplementaryServices().</wsdl:documentation>
		<wsdl:part name="sso" type="domain:SSOInformation"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_getSupplementaryServicesResponse">
		<wsdl:documentation>The response message for the operation getSupplementaryServices().</wsdl:documentation>
		<wsdl:part name="result" type="basic:AnyURIArray"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_setSupplementaryServices">
		<wsdl:documentation>The request message for the operation setSupplementaryServices().</wsdl:documentation>
		<wsdl:part name="sso" type="domain:SSOInformation"/>
		<wsdl:part name="services" type="basic:AnyURIArray"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_setSupplementaryServicesResponse">
		<wsdl:documentation>The response message for the operation setSupplementaryServices().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:boolean"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_getSupplementaryServicesForUser">
		<wsdl:documentation>The request message for the operation getSupplementaryServicesForUser().</wsdl:documentation>
		<wsdl:part name="sso" type="domain:SSOInformation"/>
		<wsdl:part name="user" type="basic:String"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_getSupplementaryServicesForUserResponse">
		<wsdl:documentation>The response message for the operation getSupplementaryServicesForUser().</wsdl:documentation>
		<wsdl:part name="result" type="basic:AnyURIArray"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_setSupplementaryServicesForUser">
		<wsdl:documentation>The request message for the operation setSupplementaryServicesForUser().</wsdl:documentation>
		<wsdl:part name="sso" type="domain:SSOInformation"/>
		<wsdl:part name="user" type="basic:String"/>
		<wsdl:part name="services" type="basic:AnyURIArray"/>
	</wsdl:message>

	<wsdl:message name="Message_SupplementaryServices_setSupplementaryServicesForUserResponse">
		<wsdl:documentation>The response message for the operation setSupplementaryServicesForUser().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:boolean"/>
	</wsdl:message>

	<!-- ========== Fault Messages ============ -->

	<wsdl:message name="FaultMessage_SupplementaryServices_AuthorizationFault">
		<wsdl:part name="fault" element="faults:AuthorizationFault"/>
	</wsdl:message>

	<wsdl:message name="FaultMessage_SupplementaryServices_IllegalArgumentFault">
		<wsdl:part name="fault" element="faults:IllegalArgumentFault"/>
	</wsdl:message>

	<wsdl:message name="FaultMessage_SupplementaryServices_ServiceMigratedFault">
		<wsdl:part name="fault" element="faults:ServiceMigratedFault"/>
	</wsdl:message>

	<wsdl:message name="FaultMessage_SupplementaryServices_ServiceNotReadyFault">
		<wsdl:part name="fault" element="faults:ServiceNotReadyFault"/>
	</wsdl:message>

	<wsdl:message name="FaultMessage_SupplementaryServices_ServiceLimitReachedFault">
		<wsdl:part name="fault" element="faults:ServiceLimitReachedFault"/>
	</wsdl:message>

	<!-- ========== Port Types ============ -->

	<wsdl:portType name="SupplementaryServicesPortType">

		<wsdl:operation name="getDefaultSupplementaryServices" parameterOrder="sso">
			<wsdl:documentation>Get default supplementary services.</wsdl:documentation>
			<wsdl:input message="tns:Message_SupplementaryServices_getDefaultSupplementaryServices"/>
			<wsdl:output message="tns:Message_SupplementaryServices_getDefaultSupplementaryServicesResponse"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_AuthorizationFault" name="AuthorizationFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getSupplementaryServices" parameterOrder="sso">
			<wsdl:documentation>Get supplementary services.</wsdl:documentation>
			<wsdl:input message="tns:Message_SupplementaryServices_getSupplementaryServices"/>
			<wsdl:output message="tns:Message_SupplementaryServices_getSupplementaryServicesResponse"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_AuthorizationFault" name="AuthorizationFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="setSupplementaryServices" parameterOrder="sso services">
			<wsdl:documentation>Set supplementary services.</wsdl:documentation>
			<wsdl:input message="tns:Message_SupplementaryServices_setSupplementaryServices"/>
			<wsdl:output message="tns:Message_SupplementaryServices_setSupplementaryServicesResponse"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_AuthorizationFault" name="AuthorizationFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getSupplementaryServicesForUser" parameterOrder="sso user">
			<wsdl:documentation>Get supplementary services for a user.</wsdl:documentation>
			<wsdl:input message="tns:Message_SupplementaryServices_getSupplementaryServicesForUser"/>
			<wsdl:output message="tns:Message_SupplementaryServices_getSupplementaryServicesForUserResponse"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_AuthorizationFault" name="AuthorizationFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="setSupplementaryServicesForUser" parameterOrder="sso user services">
			<wsdl:documentation>Set supplementary services for a user.</wsdl:documentation>
			<wsdl:input message="tns:Message_SupplementaryServices_setSupplementaryServicesForUser"/>
			<wsdl:output message="tns:Message_SupplementaryServices_setSupplementaryServicesForUserResponse"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_AuthorizationFault" name="AuthorizationFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_SupplementaryServices_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

	</wsdl:portType>

</wsdl:definitions>

