package es.ejie.frmk.infraestructura.sms;

import java.util.HashMap;

import javax.servlet.http.HttpServletRequest;

/**
 * Interfaz que especfica los metodos a implementar/acceso en el envío de SMS.
 * @version 2.0 Fecha: 07-jun-06
 */
public interface Q70GestorSMSInterface {

	/**
	 * Método al que pasándole un Q70SMSPeticion es capaz de enviar los SMS de dicha petición.
	 * @param peticionSMS Objeto que representa una petición de envío de mensajes SMS.
	 * @throws Q70SMSException
	 */
	public void dispatch (Q70SMSPeticion peticionSMS) throws Q70SMSException;
	
	/**
	 * Método al que pasándole la petición realizada por la pasarela SMS a la
	 * URL de la aplicación, es capaz de interpretar el SMS recibido
	 * retornando una estructura de datos con los datos del SMS recibido.
	 * @param request Petición realizada por la pasarela SMS a la URL de la
	 * aplicación.
	 * @return HashMap Estructura de datos con los datos del SMS recibido.
	 * @throws Q70SMSException
	 */
	public HashMap interpretarSMSRecibido (HttpServletRequest request) throws Q70SMSException;

}
