Servicios para aplicaciones del Departamento de Educación
- SERVICIO DE USUARIOS
- Objetivos
- Bloqueos de acceso por orden judicial
- Datos personales
- Datos profesionales
- Contexto del usuario
- Contexto del usuario para la mensajería interna
- Usuarios bloqueados
- Listados de datos auxiliares
- Tipos de puesto de trabajo. (PRSPuestoSubTipo)
- Cuerpos
- Datos de contacto. tipos
- Idiomas
- Descripción de los objetos de transferencia de datos DTO empleados
- EJEMPLOS DE CLIENTES SOAP
- SERVICIO DE PREVISIÓN DATOS DE ALUMNADO Y NÚMERO DE GRUPOS
- SERVICIO DE ENVÍO DE NOTIFICACIONES
- SERVICIO DE CONSULTA DE PROVEEDORES (Censo genérico)
- SERVICIO DE PLAN DE ESTUDIOS
SERVICIO DE USUARIOS
Objetivos
Proporcionar acceso a los datos de usuario a otras aplicaciones internas del Departamento de Educación.
URL WSDL: https://educages.navarra.es/Educa/services/usr/USRWS?wsdl
Bloqueos de acceso por orden judicial
En determinadas ocasiones, y por orden judicial, se bloquea el acceso de padres, madres o tutores a los datos de sus hijos e hijas.
Para poder comprobar esto, se define el método "getUsuariosBloqueados" al que se le pasa como parámetro el nombre del usuario del que queremos comprobar si puede acceder a datos de otros usuarios.
Devuelve un listado de usuarios y sede a las que no puede acceder.
Parámetros de entrada
Datos de salida
Donde:
id es el id de la sede
valor es el nombre del usuario al que no puede acceder
Parámetros de entrada
<usuario>userName</usuario>
</usr:getUsuariosBloqueados>
Ejemplo de uso
<ns2:getDatosPersonalesResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<id>456</id>
<valor>userName2</valor>
</return>
</ns2:getDatosPersonalesResponse>
Datos personales
A partir de un número de documento (DNI, Pasaporte...)
Devuelve los datos personales de un usuario a partir de un tipo de documento y su número.
Los tipos de documento válidos son:
- 1.- DNI
- 2.- Pasaporte
- 3.- NIE
- 6.- DNI sin letra
Parámetros de entrada
Datos de salida
Definición SOAP
<iDocumentoTipo>1</iDocumentoTipo>
<txDocumentoNumero>1234567A</txDocumentoNumero>
</usr:getDatosPersonales>
Ejemplo de uso
<return>
<apellido1>Martínez</apellido1>
<apellido2>Etxeberria</apellido2>
<datosContacto>
<id>5</id>
<valor>657670001</valor>
</datosContacto>
<datosContacto>
<id>7</id>
<valor>sucorreo@proveedor.com</valor>
</datosContacto>
<datosContacto>
<id>8</id>
<valor>otrocorreo@educacion.navarra.es</valor>
</datosContacto>
<documentoNumero>1234567A</documentoNumero>
<documentoTipo>1</documentoTipo>
<fechaNacimiento>1972-02-21T00:00:00+01:00</fechaNacimiento>
<idLocalizador>5836</idLocalizador>
<nombre>Mariano</nombre>
<sexo>H</sexo>
<ubicacionDomicilio>
<calleEs>Calle Rue del Percebe</calleEs>
<calleEu>Rue del Percebe Kalea</calleEu>
<codigoINE>312010002</codigoINE>
<codigoPostal>31026</codigoPostal>
<idCalle>2604</idCalle>
<idLocalidad>747</idLocalidad>
<idPais>724</idPais>
<idProvincia>31</idProvincia>
<localidadEs>Pamplona</localidadEs>
<localidadEu>Iruña</localidadEu>
<portal>27</portal>
<puerta>4ºA</puerta>
</ubicacionDomicilio>
<usuario>mmartin32</usuario>
</return>
</ns2:getDatosPersonalesResponse>
A partir del identificador único de persona
Devuelve los datos personales de un usuario
Parámetros de entrada
Datos de salida
Definición SOAP
<idLocalizador>1234</idLocalizador>
</usr:getDatosPersonalesPorLocalizador>
Ejemplo de uso
<return>
<apellido1>Martínez</apellido1>
<apellido2>Etxeberria</apellido2>
<datosContacto>
<id>5</id>
<valor>657670001</valor>
</datosContacto>
<datosContacto>
<id>7</id>
<valor>sucorreo@proveedor.com</valor>
</datosContacto>
<datosContacto>
<id>8</id>
<valor>otrocorreo@educacion.navarra.es</valor>
</datosContacto>
<documentoNumero>1234567A</documentoNumero>
<documentoTipo>1</documentoTipo>
<fechaNacimiento>1972-02-21T00:00:00+01:00</fechaNacimiento>
<idLocalizador>1234</idLocalizador>
<nombre>Mariano</nombre>
<sexo>H</sexo>
<ubicacionDomicilio>
<calleEs>Calle Rue del Percebe</calleEs>
<calleEu>Rue del Percebe Kalea</calleEu>
<codigoINE>312010002</codigoINE>
<codigoPostal>31026</codigoPostal>
<idCalle>2604</idCalle>
<idLocalidad>747</idLocalidad>
<idPais>724</idPais>
<idProvincia>31</idProvincia>
<localidadEs>Pamplona</localidadEs>
<localidadEu>Iruña</localidadEu>
<portal>27</portal>
<puerta>4ºA</puerta>
</ubicacionDomicilio>
<usuario>mmartin32</usuario>
</return>
</ns2:getDatosPersonalesResponse>
Datos profesionales
Devuelve los datos profesionales
La entrada es por número de documento, no tiene sentido para menores que no tienen documento de identidad.
Parámetros de entrada
Datos de salida
Definición SOAP
<iDocumentoTipo>1</iDocumentoTipo>
<txDocumentoNumero>12345678A</txDocumentoNumero>
<idioma>es</idioma>
</usr:getDatosProfesionales>
Ejemplo de uso
<return>
<especialidad>
<id>590011</id>
<idSede>1254</idSede>
<nombre>Inglés</nombre>
<idioma>1</idioma>
</especialidad>
<etapa>
<id>623</id>
<valor>Educación Básica (U.C.E.)</valor>
</etapa>
<etapa>
<id>4</id>
<valor>Educación Secundaria Obligatoria</valor>
</etapa>
<idLocalizador>1234</idLocalizador>
<perfil>101</perfil>
<puesto>
<id>25</id>
<idSede>1254</idSede>
<nombre>Coordinador EOIDNA</nombre>
</puesto>
<sede>
<id>1254</id>
<valor>Pedro de Ursua</valor>
</sede>
</return>
</ns2:getDatosProfesionalesResponse>
Contexto del usuario
Para los profesores: Devuelve los datos asociados a los puestos de trabajo en las distintas sedes
Alumnos: Datos a sociados a las matrículas en las distintas sedes.
Otos datos de otros puestos de trabajo.
Parámetros de entrada
getContextoUsuario(String usuario, String idioma)
usuario es el nombre de usuario de educa (nombreUsuarioUnico)
Datos de salida
Definición SOAP
<usr:getContextoUsuario>
<usuario>pmartine238</usuario>
<idioma>es</idioma>
</usr:getContextoUsuario>
Ejemplo de uso
Un profesor normal
<ns2:getContextoUsuarioResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<cargo>
<id>25</id>
<idSede>1254</idSede>
<nombre>Coordinador EOIDNA</nombre>
</cargo>
<idLocalizador>1234</idLocalizador>
<profesor>
<id>1</id>
<idSede>1254</idSede>
<nombre>Profesor/a</nombre>
</profesor>
</return>
</ns2:getContextoUsuarioResponse>
Un director que además es jefe de estudios
<ns2:getContextoUsuarioResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<cargo>
<id>3</id>
<idSede>483</idSede>
<nombre>Jefe de Estudios</nombre>
</cargo>
<cargo>
<id>1</id>
<idSede>483</idSede>
<nombre>Director</nombre>
</cargo>
<idLocalizador>1234</idLocalizador>
<profesor>
<id>1</id>
<idSede>483</idSede>
<nombre>Profesor/a</nombre>
</profesor>
</return>
</ns2:getContextoUsuarioResponse>
Un alumno con varias matrículas
<ns2:getContextoUsuarioResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<idLocalizador>1234</idLocalizador>
<matricula>
<curso>4º ESO</curso>
<fechaInicio>2013-09-02T00:00:00+02:00</fechaInicio>
<grupo>4M</grupo>
<idCurso>23</idCurso>
<idGrupo>55192</idGrupo>
<idModalidad>167</idModalidad>
<idModeloLinguistico>4</idModeloLinguistico>
<idSede>1254</idSede>
<modalidad>Única 4ESO</modalidad>
<modeloLinguistico>D</modeloLinguistico>
</matricula>
<matricula>
<curso>Nivel Intermedio</curso>
<fechaInicio>2013-09-02T00:00:00+02:00</fechaInicio>
<idCurso>12182</idCurso>
<idGrupo>0</idGrupo>
<idModalidad>870</idModalidad>
<idModeloLinguistico>1242</idModeloLinguistico>
<idSede>467</idSede>
<modalidad>Inglés</modalidad>
<modeloLinguistico>Cas.</modeloLinguistico>
</matricula>
<matricula>
<curso>2º Nivel avanzado</curso>
<fechaInicio>2013-09-02T00:00:00+02:00</fechaInicio>
<idCurso>12216</idCurso>
<idGrupo>0</idGrupo>
<idModalidad>872</idModalidad>
<idModeloLinguistico>1242</idModeloLinguistico>
<idSede>467</idSede>
<modalidad>Euskera</modalidad>
<modeloLinguistico>Cas.</modeloLinguistico>
</matricula>
</return>
</ns2:getContextoUsuarioResponse>
Contexto del usuario para la mensajería interna
Extiende los datos mostrados por el método 'getContextoUsuario' para su uso delsde el cliente de mensajería 'RoundCube'.
Proporciona el DTO 'USRContextoUsuarioMSGDTO' que añade los campos al USRContextoUsuarioDTO:
protected boolean puedeCambiarCE; True si puede cambiar el curso escolar en la generación de las libretas
protected int idCursoEscolar; Curso escolar actual
protected List<String> libretas; Nombres de las libretas que puede cambiar
Parámetros de entrada
getContextoUsuarioMSG(String usuario, String idioma)
usuario es el nombre de usuario de educa (nombreUsuarioUnico)
Datos de salida
Definición SOAP
<usr:getContextoUsuarioMSG>
<usuario>pmartine238</usuario>
<idioma>es</idioma>
</usr:getContextoUsuario>
Ejemplo de uso
Un profesor normal
<ns2:getContextoUsuarioMSGResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<cargo>
<id>25</id>
<idSede>1254</idSede>
<nombre>Coordinador EOIDNA</nombre>
</cargo>
<idLocalizador>1234</idLocalizador>
<profesor>
<id>1</id>
<idSede>1254</idSede>
<nombre>Profesor/a</nombre>
</profesor>
<idCursoEscolar>129</idCursoEscolar>
<libretas>libretaAlumnado</libretas>
<libretas>libretaCargosOrientacion</libretas>
<libretas>libretaPAS</libretas>
<libretas>libretaProfesorado</libretas>
<libretas>libretaRepresentantesLegales</libretas>
<libretas>libreta.sede.para-pas.1</libretas>
<libretas>libreta.sede.para-pas.1</libretas>
<libretas>libreta.sede.equipodirectivo.para-todos.1254</libretas>
<puedeCambiarCE>false</puedeCambiarCE>
</return>
</ns2:getContextoUsuarioMSGResponse>
Usuarios bloqueados
Devuelve un listado con aquellos usuarios a cuyos datos el usuario pasado como argumento no uede acceder.
Puede haber sido bloqueado el acceso por orden judicial.
El id devuelto es el id de la sede a la que afecta el bloqueo.
El valor es el nombre de usuario a cuyos datos no se puede acceder.
Parámetros de entrada
getUsuariosBloqueados(String usuarioQueQuiereAcceder)
usuarioQueQuiereAccederes el nombre de usuario de educa (nombreUsuarioUnico)
Datos de salida
Definición SOAP
<usr:getUsuariosBloqueados>
<usuario>nombreUsuario</usuario>
</usr:getUsuariosBloqueados>
Ejemplo de uso
<ns2:getUsuariosBloqueadosResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<id>26</id>
<valor>otroNombreUsuario</valor>
</return>
</ns2:getUsuariosBloqueadosResponse>
Listados de datos auxiliares
Tipos de puesto en la sede. Cargos. (CTRPuestoTipo)
Parámetros de entrada
Datos de salida
Definición SOAP
<usr:getCTRPuestoTipos>
<activo>true</activo>
<idioma>eu</idioma>
</usr:getCTRPuestoTipos>
Ejemplo de uso
<ns2:getCTRPuestoTiposResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<id>26</id>
<valor>Otro</valor>
</return>
<return>
<id>27</id>
<valor>General</valor>
</return>
<return>
<id>28</id>
<valor>Orientación</valor>
</return>
<return>
<id>29</id>
<valor>PAS - Administrativo</valor>
</return>
<return>
<id>30</id>
<valor>Jefe/Encargado de Calidad</valor>
</return>
<return>
<id>31</id>
<valor>APYMA</valor>
</return>
<return>
<id>1</id>
<valor>Director</valor>
</return>
<return>
<id>2</id>
<valor>Director Adjunto</valor>
</return>
<return>
<id>3</id>
<valor>Jefe de Estudios</valor>
</return>
<return>
<id>4</id>
<valor>Jefe de Estudios de Euskera</valor>
</return>
<return>
<id>5</id>
<valor>Jefe de Estudios Adjunto</valor>
</return>
<return>
<id>6</id>
<valor>Secretario</valor>
</return>
<return>
<id>7</id>
<valor>Administrador</valor>
</return>
<return>
<id>8</id>
<valor>Vicedirector</valor>
</return>
<return>
<id>9</id>
<valor>Coordinador de ciclo</valor>
</return>
<return>
<id>10</id>
<valor>Jefe de Departamento</valor>
</return>
<return>
<id>11</id>
<valor>Jefe de Departamento de Familia Profesional</valor>
</return>
<return>
<id>12</id>
<valor>Jefe de Estudios Nocturno</valor>
</return>
<return>
<id>13</id>
<valor>Jefe de Departamento de Actividades Profesionales Externas</valor>
</return>
<return>
<id>14</id>
<valor>Coordinador de ciclos formativos</valor>
</return>
<return>
<id>15</id>
<valor>Responsable Módulo Formación Centro de Trabajo</valor>
</return>
<return>
<id>21</id>
<valor>Coordinador de la Unidad de Apoyo Educativo</valor>
</return>
<return>
<id>16</id>
<valor>Encargado de comedor</valor>
</return>
<return>
<id>17</id>
<valor>Responsable de Nuevas Tecnologías</valor>
</return>
<return>
<id>18</id>
<valor>Encargado de actividades artístico-culturales</valor>
</return>
<return>
<id>19</id>
<valor>Encargado de actividades específicas</valor>
</return>
<return>
<id>20</id>
<valor>Coordinador de actividades deportivas</valor>
</return>
<return>
<id>22</id>
<valor>Coordinador de Biblioteca</valor>
</return>
<return>
<id>23</id>
<valor>Gestor Educa</valor>
</return>
<return>
<id>24</id>
<valor>Secretario adjunto</valor>
</return>
<return>
<id>25</id>
<valor>Coordinador EOIDNA</valor>
</return>
<return>
<id>32</id>
<valor>Coordinador EDUCA</valor>
</return>
</ns2:getCTRPuestoTiposResponse>
Tipos de puesto de trabajo. (PRSPuestoSubTipo)
Parámetros de entrada
Datos de salida
Definición SOAP
<usr:getPRSPuestoSubtipos>
<activo>true</activo>
<idioma>es</idioma>
</usr:getPRSPuestoSubtipos>
Ejemplo de uso
<ns2:getPRSPuestoSubtiposResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<id>1</id>
<valor>Profesor/a</valor>
</return>
<return>
<id>2</id>
<valor>Orientador/a</valor>
</return>
<return>
<id>104</id>
<valor>Subalterno/a</valor>
</return>
<return>
<id>105</id>
<valor>Servicios Generales</valor>
</return>
<return>
<id>106</id>
<valor>Mantenimiento</valor>
</return>
<return>
<id>107</id>
<valor>Limpiador/a</valor>
</return>
<return>
<id>108</id>
<valor>Jardinero/a</valor>
</return>
<return>
<id>101</id>
<valor>Oficial de Administración</valor>
</return>
<return>
<id>102</id>
<valor>Auxiliar Administración</valor>
</return>
<return>
<id>103</id>
<valor>Conserje</valor>
</return>
<return>
<id>111</id>
<valor>Cuidador/a</valor>
</return>
<return>
<id>201</id>
<valor>Comisión de Escolarización</valor>
</return>
<return>
<id>202</id>
<valor>Administrador</valor>
</return>
<return>
<id>203</id>
<valor>Inspector</valor>
</return>
<return>
<id>204</id>
<valor>Inspector Administrador</valor>
</return>
<return>
<id>205</id>
<valor>Gestor Evaluación Diagnóstica</valor>
</return>
<return>
<id>206</id>
<valor>Administrador sólo lectura</valor>
</return>
<return>
<id>207</id>
<valor>Censo 1</valor>
</return>
<return>
<id>208</id>
<valor>Censo 2</valor>
</return>
<return>
<id>209</id>
<valor>Gestor Libros de texto</valor>
</return>
<return>
<id>210</id>
<valor>Gestor FCT</valor>
</return>
<return>
<id>211</id>
<valor>Director Servicio</valor>
</return>
<return>
<id>212</id>
<valor>Auxiliar de inspección</valor>
</return>
<return>
<id>213</id>
<valor>Gestor Salud</valor>
</return>
<return>
<id>214</id>
<valor>Gestor Títulos</valor>
</return>
<return>
<id>215</id>
<valor>Estadísticas</valor>
</return>
<return>
<id>216</id>
<valor>Gestor PNTE</valor>
</return>
<return>
<id>217</id>
<valor>Incidencias GDP</valor>
</return>
<return>
<id>218</id>
<valor>Gestor validaciones</valor>
</return>
</ns2:getPRSPuestoSubtiposResponse>
Cuerpos
Devuelve el listado de cuerpos a los que pueden pertenecer los profesores con su código
Parámetros de entrada
Datos de salida
Definición SOAP
<usr:getCuerpos>
<!--Optional:-->
<idioma>es</idioma>
</usr:getCuerpos>
Ejemplo de uso
<ns2:getCuerposResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<id>595</id>
<valor>Profesores de Artes Plásticas y Diseño</valor>
</return>
<return>
<id>594</id>
<valor>Profesores de Música y Artes Escénicas</valor>
</return>
<return>
<id>597</id>
<valor>Maestros</valor>
</return>
<return>
<id>511</id>
<valor>Inspectores de Educación</valor>
</return>
<return>
<id>596</id>
<valor>Maestros de Taller de Artes Plásticas y Diseño</valor>
</return>
<return>
<id>599</id>
<valor>NA-Profesores de Iniciación Musical</valor>
</return>
<return>
<id>598</id>
<valor>NA-Profesores de Religión</valor>
</return>
<return>
<id>590</id>
<valor>Profesores de Enseñanza Secundaria</valor>
</return>
<return>
<id>526</id>
<valor>Profesores Especialidades de I.T.E.M.</valor>
</return>
<return>
<id>591</id>
<valor>Profesores Técnicos de Formación Profesional</valor>
</return>
<return>
<id>592</id>
<valor>Profesores de Escuelas Oficiales de Idiomas</valor>
</return>
<return>
<id>593</id>
<valor>Catedráticos de Música y Artes Escénicas</valor>
</return>
</ns2:getCuerposResponse>
Datos de contacto. tipos
Devuelve el listado de tipos de datos de contacto con su código
Parámetros de entrada
Datos de salida
Definición SOAP
<usr:getDatosContactoTipos>
<!--Optional:-->
<idioma>es</idioma>
</usr:getDatosContactoTipos>
Ejemplo de uso
<ns2:getDatosContactoTiposResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<id>3</id>
<valor>Teléfono particular 3</valor>
</return>
<return>
<id>2</id>
<valor>Teléfono particular 2</valor>
</return>
<return>
<id>1</id>
<valor>Teléfono particular</valor>
</return>
<return>
<id>7</id>
<valor>Email</valor>
</return>
<return>
<id>6</id>
<valor>Móvil 2</valor>
</return>
<return>
<id>5</id>
<valor>Móvil</valor>
</return>
<return>
<id>4</id>
<valor>Fax</valor>
</return>
<return>
<id>8</id>
<valor>Email Google (PNTEApps)</valor>
</return>
</ns2:getDatosContactoTiposResponse>
Idiomas
Devuelve el listado de idiomas con su código que se utiliza en las respuestas.
Son idiomas correspondientes a las enseñanzas.
En la llamada a los métodos se utilizan los códigos "es" (Español) y "eu" (Euskera)
Parámetros de entrada
Datos de salida
Definición SOAP
<usr:getIdiomas>
<idioma>es</idioma>
</usr:getIdiomas>
Ejemplo de uso
<ns2:getIdiomasResponse xmlns:ns2="http://usr.ws.educa.educacion.navarra.es/">
<return>
<id>3</id>
<valor>Inglés</valor>
</return>
<return>
<id>2</id>
<valor>Euskera</valor>
</return>
<return>
<id>1</id>
<valor>Castellano</valor>
</return>
<return>
<id>5</id>
<valor>Aleman</valor>
</return>
<return>
<id>4</id>
<valor>Francés</valor>
</return>
</ns2:getIdiomasResponse>
Descripción de los objetos de transferencia de datos DTO empleados
GNRDatosPersonalesDTO
String nombre;
String apellido1;
String apellido2;
String usuario;
int documentoTipo;
String documentoNumero;
Date fechaNacimiento;
String descripcion;
String sexo;
USRDatosProfesionalesDTO
int perfil;
List<DataSingleDTO> sede; // Sedes en las que da clase
List<CTRDatoSedeIdiomaDTO> especialidad;
List<CTRDatoSedeDTO> puesto;
List<DataSingleDTO> etapa;
USRContextoUsuarioDTO
List<CTRDatoSedeDTO> pas;
List<CTRDatoSedeDTO> profesor;
List<CTRDatoSedeDTO> cargo;
int idLocalizador;
USRContextoUsuarioMSGDTO
List<CTRDatoSedeDTO> pas;
List<CTRDatoSedeDTO> profesor;
List<CTRDatoSedeDTO> cargo;
int idLocalizador;
boolean puedeCambiarCE;
int idCursoEscolar;
List<String> libretas;
DataSingleDTO
String valor;
CTRDatoSedeDTO
int idSede;
String nombre;
CTRDatoSedeIdiomaDTO
int idSede;
String nombre;
int idioma;
MatriculaContextoDTO
int idCurso;
String curso;
int idModeloLinguistico;
String modeloLinguistico;
int idModalidad;
String modalidad;
Date fechaInicio;
Date fechaFin;
int idGrupo;
String grupo;
EJEMPLOS DE CLIENTES SOAP
PHP
Ciente sin autentificar
$wsdl = "http://educa.navarra.es/Educa/services/ConsultaCentros?wsdl";
$params = array(
'sede' => '9',
'cursoEscolar' => 125,
'idioma' => 'es'
);
$client = new SoapClient($wsdl);
$response = $client->detalleCentro($params);
print_r($response);
?>
Ciente autentificado
En este caso necesitgamos pasar una cabecera con los datos de autentificación y el tipo.
Para ello extenderemos la clase SoapHeader
<?php
/**
* Extendemos la clase SoapHeader para crear una autenticación acorde con Wsse
*/
class WsseAuthHeader extends SoapHeader {
private $wss_ns = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd';
/**
* Constructor de la cabecera
* @param $user Nombre de usuario
* @param $pass Contraseña del usuario
* @param $ns Esquema alternativo para la definición de la seguridad. Por defecto (null), contraseña sin encruptar
*/
function __construct($user, $pass, $ns = null) {
if ($ns) {
$this->wss_ns = $ns;
}
$auth = new stdClass();
$auth->Username = new SoapVar($user, XSD_STRING, NULL, $this->wss_ns, NULL, $this->wss_ns);
//$auth->Password = new SoapVar($pass, XSD_STRING, "PasswordText", $this->wss_ns, NULL, $this->wss_ns);
$p = '<ns2:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">'.htmlspecialchars($pass)."</ns2:Password>";
$auth->Password = new SoapVar($p, XSD_ANYXML);
$username_token = new stdClass();
$username_token->UsernameToken = new SoapVar($auth, SOAP_ENC_OBJECT, NULL, $this->wss_ns, 'UsernameToken', $this->wss_ns);
$security_sv = new SoapVar(
new SoapVar($username_token, SOAP_ENC_OBJECT, NULL, $this->wss_ns, 'UsernameToken', $this->wss_ns),
SOAP_ENC_OBJECT, NULL, $this->wss_ns, 'Security', $this->wss_ns);
parent::__construct($this->wss_ns, 'Security', $security_sv, true);
}
}
?>
Y el ejemplo de conexión quedaría así
<?php
/* Ejemplo de uso de un cliente autentificado con contraseña plana*/
include "WsseAuthHeader.php";
//Definimos el nombre de usuario, contraseña y wsdl del servicio
$username = 'el_nombre_de_usuario';
$password = 'la_contraseña';
$wsdl = "http://educa.navarra.es/Educa/services/usr/USRWS?wsdl"; //url a la definición del servicio (wsdl)
//Definimos la cabecera
$wsse_header = new WsseAuthHeader($username, $password);
$client = new SoapClient($wsdl, array("trace" => 1, "exception" => 0));
$client->__setSoapHeaders(array($wsse_header));
//Parámetros del método llamado
$params = array(
'usuario' => 'usuario_buscado',
'idioma' => 'es'
);
//Llamada al método
$response = $client->getContextoUsuario($params);
print_r($response);
//Llamada alternativa
$response = $client->__soapCall("getContextoUsuario",$params);
print_r($response);
?>
SERVICIO DE PREVISIÓN DATOS DE ALUMNADO Y NÚMERO DE GRUPOS
En este espacio se incluye la definición de los servicios web necesarios para resolver las necesidades de previsión de datos de alumnado y número de grupos.
FASES
1.- Previsión inicial
2.- Previsión Preinscripción
3.- Previsión Matrícula Junio
4.- Previsión Matrícula Septiembre
5.- Matriculación Actual
Método previsión número de alumnos
Se define el método "previsiónAlumnos" al que se le pasa como parámetro un lista de códigos MEC de centros y el curso escolar. Devuelve un objeto con la previsión del curso escolar.
Parámetros de entrada
Datos de salida
Método previsión número de grupos de alumnos
Se define el método "previsiónGrupos" al que se le pasa como parámetro un lista de códigos MEC de centros y el curso escolar. Devuelve un objeto con la previsión del curso escolar.
Parámetros de entrada
Datos de salida
Más información:
SERVICIO DE ENVÍO DE NOTIFICACIONES
En este espacio se incluye la definición del servicio web necesario para la creación y envío de notificaciones de aplicaciones externas (servicios) a través de la plataforma Educa.
Método de generación de SMS
Se define el método "enviarSMS" al que se le pasa como parámetro un lista de notificaciones a generar. Las notificaciones son objetos que contienen uno o más destinatarios de la notificación, el mensaje que se desea entregar, una referencia externa y el nombre del servicio que solicita la notificación. Devuelve una lista de objetos con la información de cada SMS generado (destinatario, identificador del mensaje en Educa, referencia externa y servicio solicitante).
Parámetros de entrada
Datos de salida
Método de consulta del estado los SMS generados
Se define el método "consultarEstadoSMS" que consulta el estado de envío y entrega de los SMS generados. Para realizar la consulta hay que indicar el servicio que ha generado las notificaciones y se pueden pasar como parámetros una lista de destinatarios, una lista de referencias externas, una fecha de creación a partir de la cuál se quiere consultar y una fecha de creación máxima hasta la que se quiere consultar. Devuelve una lista de objetos con el detalle, incluyendo la información de envío y entrega, de cada SMS filtrado por los parámetros de entrada.
Parámetros de entrada
Datos de salida
Método de búsqueda de un SMS generado
Se define el método "buscarSMS" al que se le pasa como parámetro el identificador del SMS generado por Educa y devuelve el detalle del SMS, incluyendo la información de envío y entrega.
Parámetros de entrada
Datos de salida
Más información
SERVICIO DE CONSULTA DE PROVEEDORES (Censo genérico)
Objetivo
Servicio de consulta que proporciona información de proveedores utilizados por el Gobierno de Navarra. Imita la funcionalidad del servicio equivalente de la Junta de Andalucía para dar soporte a Ecoeduca.
Fuente de los datos
Los datos de obtienen de un servicio al efecto proporcionado por el SAP además de entradas manuales introducidas por el Servicio de Gestión Económica del Departamento de Educación.
Almacena las entradas para poder funcionar aunque el servicio del SAP no esté en línea.
Autentificación
Anónima.
Métodos
obtieneDatosCliente
Devuelve los datos de un proveedor cuyo NIF se pasa como parámetro.
Parámetros de entrada
De todos los parámetros pasados, sólo se utiliza nifAconsultar, el resto se mantiene por compatibilidad con el formato de Andalucía.
Datos de salida
Ejemplo de uso
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cen="http://es/juntadeandalucia/economiayhacienda/serviciosWeb/censoGenerico">
<soapenv:Header/>
<soapenv:Body>
<cen:obtieneDatosCliente>
<nombreAplicacion></nombreAplicacion>
<nifSolicitante></nifSolicitante>
<nombreSolicitante></nombreSolicitante>
<nifAconsultar>A20002572</nifAconsultar>
</cen:obtieneDatosCliente>
</soapenv:Body>
</soapenv:Envelope>
Respuesta
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:obtieneDatosClienteResponse xmlns:ns1="http://es/juntadeandalucia/economiayhacienda/serviciosWeb/censoGenerico">
<obtieneDatosClienteReturn>
<item>
<codigoPostal>20140</codigoPostal>
<localidad>ANDOAIN</localidad>
<nifCliente>A20002572</nifCliente>
<nombreCliente>PAPELERA DEL LEIZARAN SA</nombreCliente>
<pais>724</pais>
<provincia>20</provincia>
</item>
</obtieneDatosClienteReturn>
</ns1:obtieneDatosClienteResponse>
</soap:Body>
</soap:Envelope>
obtieneTodosLosClientes
Devuelve los datos de varios proveedores cuyos NIFs se pasan como parámetro (Lista).
Parámetros de entrada
De todos los parámetros pasados, sólo se utiliza nifAconsultar, el resto se mantiene por compatibilidad con el formato de Andalucía.
Datos de salida
Ejemplo de uso
<soapenv:Header/>
<soapenv:Body>
<cen:obtieneTodosLosClientes>
<nombreAplicacion>a</nombreAplicacion>
<nifSolicitante>b</nifSolicitante>
<nombreSolicitante>b</nombreSolicitante>
<nifs>
<!--Zero or more repetitions:-->
<item>B61503355</item>
<item>A01020080</item>
</nifs>
</cen:obtieneTodosLosClientes>
</soapenv:Body>
</soapenv:Envelope>
Respuesta
<soap:Body>
<ns1:obtieneTodosLosClientesResponse xmlns:ns1="http://es/juntadeandalucia/economiayhacienda/serviciosWeb/censoGenerico">
<obtieneTodosLosClientesReturn xsi:type="ns3:DatosClienteArray" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns3="http://es/juntadeandalucia/economiayhacienda/serviciosWeb/censoGenerico">
<item>
<codigoPostal>01010</codigoPostal>
<localidad>VITORIA</localidad>
<nifCliente>A01020080</nifCliente>
<nombreCliente>AUTOBUSES HERMANOS ARRIAGA SA</nombreCliente>
<pais>724</pais>
<provincia>01</provincia>
</item>
<item>
<codigoPostal>08174</codigoPostal>
<fax>935834340</fax>
<localidad>SANT CUGAT DEL VALLES</localidad>
<nifCliente>B61503355</nifCliente>
<nombreCliente>ROCHE DIAGNOSTICS SL</nombreCliente>
<pais>724</pais>
<provincia>08</provincia>
<telefono>935834000</telefono>
</item>
</obtieneTodosLosClientesReturn>
</ns1:obtieneTodosLosClientesResponse>
</soap:Body>
</soap:Envelope>
Estructura del DTO de respuesta "DatosCliente"
@XmlType(name = "DatosCliente", propOrder = {
"calificadorNumeroVia",
"codIneMunicipio",
"codigoPostal",
"complentoVia",
"descMunicipio",
"direccionEmail",
"escalera",
"fax",
"letraVia",
"localidad",
"municipio",
"nifCliente",
"nombreCliente",
"nombreVia",
"numeroVia",
"pais",
"piso",
"portal",
"provincia",
"puerta",
"telefono",
"tipoNumeracionVia",
"tipoVia" })
SERVICIO DE PLAN DE ESTUDIOS
Objetivos
Proporcionar la organización del plan de estudios en Educa.
WSDL e información de tallada de los métodos y DTOs
URL WSDL: https://educages.navarra.es/Educa/services/pe/PEPlanEstudiosWS?wsdl
URL Información detallada: http://educadev.educacion.navarra.es/api/PEPlanEstudios/service_ns0_PEPlanEstudiosWSService.html