/* * TeleStax, Open Source Cloud Communications Copyright 2012. * and individual contributors * by the @authors tag. See the copyright.txt in the distribution for a * full listing of individual contributors. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.mobicents.protocols.ss7.map.api.service.sms; import org.mobicents.protocols.ss7.map.api.MAPDialog; import org.mobicents.protocols.ss7.map.api.MAPException; import org.mobicents.protocols.ss7.map.api.primitives.AddressString; import org.mobicents.protocols.ss7.map.api.primitives.IMSI; import org.mobicents.protocols.ss7.map.api.primitives.ISDNAddressString; import org.mobicents.protocols.ss7.map.api.primitives.MAPExtensionContainer; import org.mobicents.protocols.ss7.map.api.service.mobility.subscriberManagement.TeleserviceCode; /** * * @author sergey vetyutnev * */ public interface MAPDialogSms extends MAPDialog { /** * Sending MAP-FORWARD-SHORT-MESSAGE request * * @param sm_RP_DA mandatory * @param sm_RP_OA mandatory * @param sm_RP_UI mandatory * @param moreMessagesToSend optional, default: false * @return invokeId * @throws MAPException */ Long addForwardShortMessageRequest(SM_RP_DA sm_RP_DA, SM_RP_OA sm_RP_OA, SmsSignalInfo sm_RP_UI, boolean moreMessagesToSend) throws MAPException; Long addForwardShortMessageRequest(int customInvokeTimeout, SM_RP_DA sm_RP_DA, SM_RP_OA sm_RP_OA, SmsSignalInfo sm_RP_UI, boolean moreMessagesToSend) throws MAPException; /** * Sending MAP-FORWARD-SHORT-MESSAGE response * * @param invokeId * @throws MAPException */ void addForwardShortMessageResponse(long invokeId) throws MAPException; /** * Sending MAP-MO-FORWARD-SHORT-MESSAGE request * * @param sm_RP_DA mandatory * @param sm_RP_OA mandatory * @param sm_RP_UI mandatory * @param extensionContainer optional * @param imsi optional * @return invokeId * @throws MAPException */ Long addMoForwardShortMessageRequest(SM_RP_DA sm_RP_DA, SM_RP_OA sm_RP_OA, SmsSignalInfo sm_RP_UI, MAPExtensionContainer extensionContainer, IMSI imsi) throws MAPException; Long addMoForwardShortMessageRequest(int customInvokeTimeout, SM_RP_DA sm_RP_DA, SM_RP_OA sm_RP_OA, SmsSignalInfo sm_RP_UI, MAPExtensionContainer extensionContainer, IMSI imsi) throws MAPException; /** * Sending MAP-MO-FORWARD-SHORT-MESSAGE response * * @param invokeId * @param sm_RP_UI optional * @param extensionContainer optional * @throws MAPException */ void addMoForwardShortMessageResponse(long invokeId, SmsSignalInfo sm_RP_UI, MAPExtensionContainer extensionContainer) throws MAPException; /** * Sending MAP-MT-FORWARD-SHORT-MESSAGE request * * @param sm_RP_DA mandatory * @param sm_RP_OA mandatory * @param sm_RP_UI mandatory * @param moreMessagesToSend optional * @param extensionContainer optional * @return * @throws MAPException */ Long addMtForwardShortMessageRequest(SM_RP_DA sm_RP_DA, SM_RP_OA sm_RP_OA, SmsSignalInfo sm_RP_UI, boolean moreMessagesToSend, MAPExtensionContainer extensionContainer) throws MAPException; Long addMtForwardShortMessageRequest(int customInvokeTimeout, SM_RP_DA sm_RP_DA, SM_RP_OA sm_RP_OA, SmsSignalInfo sm_RP_UI, boolean moreMessagesToSend, MAPExtensionContainer extensionContainer) throws MAPException; /** * Sending MAP-MT-FORWARD-SHORT-MESSAGE response * * @param invokeId * @param sm_RP_UI optional * @param extensionContainer optional * @throws MAPException */ void addMtForwardShortMessageResponse(long invokeId, SmsSignalInfo sm_RP_UI, MAPExtensionContainer extensionContainer) throws MAPException; /** * Sending MAP-SEND-ROUTING-INFO-FOR-SM request * * @param msisdn mandatory * @param sm_RP_PRI mandatory * @param serviceCentreAddress mandatory * @param extensionContainer optional * @param gprsSupportIndicator optional * @param sM_RP_MTI optional * @param sM_RP_SMEA optional * @return * @throws MAPException */ Long addSendRoutingInfoForSMRequest(ISDNAddressString msisdn, boolean sm_RP_PRI, AddressString serviceCentreAddress, MAPExtensionContainer extensionContainer, boolean gprsSupportIndicator, SM_RP_MTI sM_RP_MTI, SM_RP_SMEA sM_RP_SMEA, SMDeliveryNotIntended smDeliveryNotIntended, boolean ipSmGwGuidanceIndicator, IMSI imsi, boolean t4TriggerIndicator, boolean singleAttemptDelivery, TeleserviceCode teleservice) throws MAPException; Long addSendRoutingInfoForSMRequest(int customInvokeTimeout, ISDNAddressString msisdn, boolean sm_RP_PRI, AddressString serviceCentreAddress, MAPExtensionContainer extensionContainer, boolean gprsSupportIndicator, SM_RP_MTI sM_RP_MTI, SM_RP_SMEA sM_RP_SMEA, SMDeliveryNotIntended smDeliveryNotIntended, boolean ipSmGwGuidanceIndicator, IMSI imsi, boolean t4TriggerIndicator, boolean singleAttemptDelivery, TeleserviceCode teleservice) throws MAPException; /** * Sending MAP-SEND-ROUTING-INFO-FOR-SM response * * @param imsi mandatory * @param locationInfoWithLMSI mandatory * @param extensionContainer optional * @return * @throws MAPException */ void addSendRoutingInfoForSMResponse(long invokeId, IMSI imsi, LocationInfoWithLMSI locationInfoWithLMSI, MAPExtensionContainer extensionContainer, Boolean mwdSet, IpSmGwGuidance ipSmGwGuidance) throws MAPException; /** * Sending MAP-SEND-ROUTING-INFO-FOR-SM request * * @param msisdn mandatory * @param serviceCentreAddress mandatory * @param sMDeliveryOutcome mandatory * @param absentSubscriberDiagnosticSM mandatory * @param extensionContainer optional * @param gprsSupportIndicator optional * @param deliveryOutcomeIndicator optional * @param additionalSMDeliveryOutcome optional * @param additionalAbsentSubscriberDiagnosticSM optional * @return * @throws MAPException */ Long addReportSMDeliveryStatusRequest(ISDNAddressString msisdn, AddressString serviceCentreAddress, SMDeliveryOutcome sMDeliveryOutcome, Integer absentSubscriberDiagnosticSM, MAPExtensionContainer extensionContainer, boolean gprsSupportIndicator, boolean deliveryOutcomeIndicator, SMDeliveryOutcome additionalSMDeliveryOutcome, Integer additionalAbsentSubscriberDiagnosticSM) throws MAPException; Long addReportSMDeliveryStatusRequest(int customInvokeTimeout, ISDNAddressString msisdn, AddressString serviceCentreAddress, SMDeliveryOutcome sMDeliveryOutcome, Integer absentSubscriberDiagnosticSM, MAPExtensionContainer extensionContainer, boolean gprsSupportIndicator, boolean deliveryOutcomeIndicator, SMDeliveryOutcome additionalSMDeliveryOutcome, Integer additionalAbsentSubscriberDiagnosticSM) throws MAPException; /** * Sending MAP-SEND-ROUTING-INFO-FOR-SM response * * @param invokeId * @param storedMSISDN optional * @param extensionContainer optional * @return * @throws MAPException */ void addReportSMDeliveryStatusResponse(long invokeId, ISDNAddressString storedMSISDN, MAPExtensionContainer extensionContainer) throws MAPException; /** * Sending MAP-INFORM-SERVICE-CENTRE request * * @param storedMSISDN optional * @param mwStatus optional * @param extensionContainer optional * @param absentSubscriberDiagnosticSM optional * @param additionalAbsentSubscriberDiagnosticSM optional * @return * @throws MAPException */ Long addInformServiceCentreRequest(ISDNAddressString storedMSISDN, MWStatus mwStatus, MAPExtensionContainer extensionContainer, Integer absentSubscriberDiagnosticSM, Integer additionalAbsentSubscriberDiagnosticSM) throws MAPException; Long addInformServiceCentreRequest(int customInvokeTimeout, ISDNAddressString storedMSISDN, MWStatus mwStatus, MAPExtensionContainer extensionContainer, Integer absentSubscriberDiagnosticSM, Integer additionalAbsentSubscriberDiagnosticSM) throws MAPException; /** * Sending MAP-SEND-ROUTING-INFO-FOR-SM request * * @param msisdn mandatory * @param serviceCentreAddress mandatory * @return * @throws MAPException */ Long addAlertServiceCentreRequest(ISDNAddressString msisdn, AddressString serviceCentreAddress) throws MAPException; Long addAlertServiceCentreRequest(int customInvokeTimeout, ISDNAddressString msisdn, AddressString serviceCentreAddress) throws MAPException; /** * Sending MAP-SEND-ROUTING-INFO-FOR-SM response * * @param invokeId * @throws MAPException */ void addAlertServiceCentreResponse(long invokeId) throws MAPException; Long addReadyForSMRequest(IMSI imsi, AlertReason alertReason, boolean alertReasonIndicator, MAPExtensionContainer extensionContainer, boolean additionalAlertReasonIndicator) throws MAPException; Long addReadyForSMRequest(int customInvokeTimeout, IMSI imsi, AlertReason alertReason, boolean alertReasonIndicator, MAPExtensionContainer extensionContainer, boolean additionalAlertReasonIndicator) throws MAPException; void addReadyForSMResponse(long invokeId, MAPExtensionContainer extensionContainer) throws MAPException; Long addNoteSubscriberPresentRequest(IMSI imsi) throws MAPException; Long addNoteSubscriberPresentRequest(int customInvokeTimeout, IMSI imsi) throws MAPException; }