All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.mobius.software.telco.protocols.diameter.primitives.tsp.DeviceNotification Maven / Gradle / Ivy

package com.mobius.software.telco.protocols.diameter.primitives.tsp;
/*
 * Mobius Software LTD
 * Copyright 2023, Mobius Software LTD and individual contributors
 * by the @authors tag.
 *
 * This program is free software: you can redistribute it and/or modify
 * under the terms of the GNU Affero General Public License as
 * published by the Free Software Foundation; either version 3 of
 * the License, or (at your option) any later version.
 *
 * This program 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 Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see 
 */

import com.mobius.software.telco.protocols.diameter.TgppAvpCodes;
import com.mobius.software.telco.protocols.diameter.VendorIDs;
import com.mobius.software.telco.protocols.diameter.annotations.DiameterAvpDefinition;
import com.mobius.software.telco.protocols.diameter.exceptions.MissingAvpException;
import com.mobius.software.telco.protocols.diameter.primitives.DiameterGroupedAvp;
import com.mobius.software.telco.protocols.diameter.primitives.t4.MTCErrorDiagnosticEnum;

import io.netty.buffer.ByteBuf;

/**
*
* @author yulian oifa
*
*/

/*
 * 	6.4.3	Device-Notification AVP
	The Device-Notification AVP (AVP code 3002) is of type Grouped. It is used by the MTC-IWF to report any action requested by the SCS.
	AVP Format:
	Device-Notification ::=             < AVP Header: 3002 >
			 [ External-Id ]
			 [ MSISDN ]
			 [ SCS-Identity ]
			 { Reference-Number }
			 { Action-Type }
			 [ Request-Status ]
			 [ MTC-Error-Diagnostic ]
			 [ Delivery-Outcome ]
			 [ SM-RP-UI ]
			 [ Application-Port-Identifier ]
 			*[ AVP ]
 */
@DiameterAvpDefinition(code = TgppAvpCodes.DEVICE_NOTIFICATION, vendorId = VendorIDs.TGPP_ID, name = "Device-Notification")
public interface DeviceNotification extends DiameterGroupedAvp
{
	String getExternalID();
	
	void setExternalID(String value);	
	
	String getMSISDN();
	
	void setMSISDN(String value);
	
	ByteBuf getSCSIdentity();
	
	void setSCSIdentity(ByteBuf value);
	
	Long getReferenceNumber();
	
	void setReferenceNumber(Long value) throws MissingAvpException;
	
	ActionTypeEnum getActionType();
	
	void setActionType(ActionTypeEnum value) throws MissingAvpException;
	
	RequestStatusEnum getRequestStatus();
	
	void setRequestStatus(RequestStatusEnum value);
	
	MTCErrorDiagnosticEnum getMTCErrorDiagnostic();
	
	void setMTCErrorDiagnostic(MTCErrorDiagnosticEnum value);
	
	DeliveryOutcomeEnum getDeliveryOutcome();
	
	void setDeliveryOutcome(DeliveryOutcomeEnum value);
	
	ByteBuf getSMRPUI();
	
	void setSMRPUI(ByteBuf value);
	
	Long getApplicationPortIdentifier();
	
	void setApplicationPortIdentifier(Long value);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy