org.mobicents.protocols.ss7.map.api.service.mobility.MAPDialogMobility Java Examples
The following examples show how to use
org.mobicents.protocols.ss7.map.api.service.mobility.MAPDialogMobility.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: SS7Honeypot.java From SigFW with GNU Affero General Public License v3.0 | 4 votes |
public void onAnyTimeInterrogationRequest(AnyTimeInterrogationRequest atir) { logger.debug("[[[[[[[[[[ onAnyTimeInterrogationRequest ]]]]]]]]]]"); try { MAPDialogMobility curDialog = atir.getMAPDialog(); long invokeId = curDialog.getLocalDialogId(); ISDNAddressString vlrNumber = mapProvider.getMAPParameterFactory().createISDNAddressString(AddressNature.international_number, NumberingPlan.ISDN, HP_VLR_NUMBER); LocationNumberMap locationNumber = null; LSAIdentity selectedLSAId = null; ISDNAddressString mscNumber = null; LocationInformationEPS locationInformationEPS = null; UserCSGInformation userCSGInformation = null; int mcc = HP_MCC; int mnc = HP_MNC; int lac = HP_LAC; int cellId = HP_CELLID; int ageOfLocationInformation = HP_AGE_OF_LOCATION; GeographicalInformation geographicalInformation = mapProvider.getMAPParameterFactory().createGeographicalInformation(HP_GEO_INFO_d, HP_GEO_INFO_d1, HP_GEO_INFO_d2); boolean saiPresent = false; GeodeticInformation geodeticInformation = null; boolean currentLocationRetrieved = false; CellGlobalIdOrServiceAreaIdFixedLength cellGlobalIdOrServiceAreaIdFixedLength = mapProvider.getMAPParameterFactory() .createCellGlobalIdOrServiceAreaIdFixedLength(mcc, mnc, lac, cellId); CellGlobalIdOrServiceAreaIdOrLAI cellGlobalIdOrServiceAreaIdOrLAI = mapProvider.getMAPParameterFactory().createCellGlobalIdOrServiceAreaIdOrLAI( cellGlobalIdOrServiceAreaIdFixedLength); LocationInformation li = mapProvider.getMAPParameterFactory().createLocationInformation(ageOfLocationInformation, geographicalInformation, vlrNumber, locationNumber, cellGlobalIdOrServiceAreaIdOrLAI, null, selectedLSAId, mscNumber, geodeticInformation, currentLocationRetrieved, saiPresent, locationInformationEPS, userCSGInformation); SubscriberState ss = this.mapProvider.getMAPParameterFactory().createSubscriberState(SubscriberStateChoice.netDetNotReachable, NotReachableReason.imsiDetached); SubscriberInfo si = this.mapProvider.getMAPParameterFactory().createSubscriberInfo(li, ss, null, null, null, null, null, null, null); // clamp InvokeID if (invokeId > 127) { invokeId = 127; } if (invokeId < -128) { invokeId = -128; } curDialog.addAnyTimeInterrogationResponse(invokeId, si, null); } catch (MAPException e) { logger.error("Error while sending SendRoutingInfoForSMResponse ", e); } }
Example #2
Source File: SS7Honeypot.java From SigFW with GNU Affero General Public License v3.0 | 4 votes |
public void onProvideSubscriberInfoRequest(ProvideSubscriberInfoRequest psir) { logger.debug("[[[[[[[[[[ onProvideSubscriberInfoRequest ]]]]]]]]]]"); try { MAPDialogMobility curDialog = psir.getMAPDialog(); long invokeId = curDialog.getLocalDialogId(); ISDNAddressString vlrNumber = mapProvider.getMAPParameterFactory().createISDNAddressString(AddressNature.international_number, NumberingPlan.ISDN, "5555555666"); LocationNumberMap locationNumber = null; LSAIdentity selectedLSAId = null; ISDNAddressString mscNumber = null; LocationInformationEPS locationInformationEPS = null; UserCSGInformation userCSGInformation = null; int mcc = HP_MCC; int mnc = HP_MNC; int lac = HP_LAC; int cellId = HP_CELLID; int ageOfLocationInformation = HP_AGE_OF_LOCATION; GeographicalInformation geographicalInformation = mapProvider.getMAPParameterFactory().createGeographicalInformation(HP_GEO_INFO_d, HP_GEO_INFO_d1, HP_GEO_INFO_d2); boolean saiPresent = false; GeodeticInformation geodeticInformation = null; boolean currentLocationRetrieved = false; CellGlobalIdOrServiceAreaIdFixedLength cellGlobalIdOrServiceAreaIdFixedLength = mapProvider.getMAPParameterFactory() .createCellGlobalIdOrServiceAreaIdFixedLength(mcc, mnc, lac, cellId); CellGlobalIdOrServiceAreaIdOrLAI cellGlobalIdOrServiceAreaIdOrLAI = mapProvider.getMAPParameterFactory().createCellGlobalIdOrServiceAreaIdOrLAI( cellGlobalIdOrServiceAreaIdFixedLength); LocationInformation li = mapProvider.getMAPParameterFactory().createLocationInformation(ageOfLocationInformation, geographicalInformation, vlrNumber, locationNumber, cellGlobalIdOrServiceAreaIdOrLAI, null, selectedLSAId, mscNumber, geodeticInformation, currentLocationRetrieved, saiPresent, locationInformationEPS, userCSGInformation); SubscriberState ss = this.mapProvider.getMAPParameterFactory().createSubscriberState(SubscriberStateChoice.netDetNotReachable, NotReachableReason.imsiDetached); SubscriberInfo si = this.mapProvider.getMAPParameterFactory().createSubscriberInfo(li, ss, null, null, null, null, null, null, null); // clamp InvokeID if (invokeId > 127) { invokeId = 127; } if (invokeId < -128) { invokeId = -128; } curDialog.addProvideSubscriberInfoResponse(invokeId, si, null); } catch (MAPException e) { logger.error("Error while sending SendRoutingInfoForSMResponse ", e); } }
Example #3
Source File: ProvideSubscriberInformationResp.java From SigPloit with MIT License | 4 votes |
@Override public void onProvideSubscriberInfoRequest(ProvideSubscriberInfoRequest provideSubscriberInfoRequest) { try{ long invokeId = provideSubscriberInfoRequest.getInvokeId(); //Creating Subscriber Information //cs domain info double Lat = 29.13; double Long = 31.56; double Uncertain = 10.123; //more accurate info from ps domain double Lat_ps = 28.113; double Long_ps = 32.568; double Uncertain_ps = 2.12; int mcc = 602; int mnc = 03; int LAC = 1234; int CI = 5678; GeographicalInformation geographicalInformation = this.mapProvider.getMAPParameterFactory() .createGeographicalInformation(Lat,Long,Uncertain); CellGlobalIdOrServiceAreaIdFixedLength cellGlobalIdOrServiceAreaIdFixedLength = this.mapProvider.getMAPParameterFactory().createCellGlobalIdOrServiceAreaIdFixedLength(mcc,mnc,LAC,CI); CellGlobalIdOrServiceAreaIdOrLAI cellGlobalIdOrServiceAreaIdOrLAI = this.mapProvider .getMAPParameterFactory().createCellGlobalIdOrServiceAreaIdOrLAI(cellGlobalIdOrServiceAreaIdFixedLength); ISDNAddressString Vmsc = this.mapProvider.getMAPParameterFactory() .createISDNAddressString(AddressNature.international_number,NumberingPlan.ISDN,"2015512458123"); LocationInformation locationInformation = this.mapProvider.getMAPParameterFactory() .createLocationInformation(30,geographicalInformation,Vmsc,null,cellGlobalIdOrServiceAreaIdOrLAI ,null,null,null,null,false,false,null,null); IMEI imei = this.mapProvider.getMAPParameterFactory().createIMEI("35209900176148"); SubscriberState subscriberState = this.mapProvider.getMAPParameterFactory() .createSubscriberState(SubscriberStateChoice.assumedIdle,null); ISDNAddressString sgsn = this.mapProvider.getMAPParameterFactory() .createISDNAddressString(AddressNature.international_number,NumberingPlan.ISDN,"20155555555"); GeographicalInformation geographicalInformation_ps = this.mapProvider.getMAPParameterFactory() .createGeographicalInformation(Lat_ps,Long_ps,Uncertain_ps); RAIdentity raIdentity = this.mapProvider.getMAPParameterFactory().createRAIdentity(new byte[] {(byte) 0x06,(byte)0x0020, (byte) 0x3, (byte) 0x40, (byte)0x2d, (byte) 0x21}); LocationInformationGPRS locationInformationGPRS = this.mapProvider.getMAPParameterFactory(). createLocationInformationGPRS(null,raIdentity,geographicalInformation_ps,sgsn,null,null,false,null, true,30); SubscriberInfo subscriberInfo = this.mapProvider.getMAPParameterFactory() .createSubscriberInfo(locationInformation,subscriberState,null,locationInformationGPRS,null,imei,null, null,null); MAPDialogMobility mapDialogMobility = provideSubscriberInfoRequest.getMAPDialog(); mapDialogMobility.setUserObject(invokeId); mapDialogMobility.addProvideSubscriberInfoResponse(invokeId,subscriberInfo,null); mapDialogMobility.send(); logger.info("Subscriber Information Sent....."); } catch (MAPException e){ e.printStackTrace(); } }
Example #4
Source File: AnyTimeInterrogationResp.java From SigPloit with MIT License | 4 votes |
@Override public void onAnyTimeInterrogationRequest(AnyTimeInterrogationRequest anyTimeInterrogationRequest) { try{ long invokeId = anyTimeInterrogationRequest.getInvokeId(); //Creating Subscriber Information //cs domain info double Lat = 29.13; double Long = 31.56; double Uncertain = 10.123; //more accurate info from ps domain double Lat_ps = 28.113; double Long_ps = 32.568; double Uncertain_ps = 2.12; int mcc = 419; int mnc = 02; int LAC = 1234; int CI = 5678; GeographicalInformation geographicalInformation = this.mapProvider.getMAPParameterFactory() .createGeographicalInformation(Lat,Long,Uncertain); CellGlobalIdOrServiceAreaIdFixedLength cellGlobalIdOrServiceAreaIdFixedLength = this.mapProvider.getMAPParameterFactory().createCellGlobalIdOrServiceAreaIdFixedLength(mcc,mnc,LAC,CI); CellGlobalIdOrServiceAreaIdOrLAI cellGlobalIdOrServiceAreaIdOrLAI = this.mapProvider .getMAPParameterFactory().createCellGlobalIdOrServiceAreaIdOrLAI(cellGlobalIdOrServiceAreaIdFixedLength); ISDNAddressString Vmsc = this.mapProvider.getMAPParameterFactory() .createISDNAddressString(AddressNature.international_number,NumberingPlan.ISDN,"2015512458123"); LocationInformation locationInformation = this.mapProvider.getMAPParameterFactory() .createLocationInformation(30,geographicalInformation,Vmsc,null,cellGlobalIdOrServiceAreaIdOrLAI ,null,null,null,null,true,false,null,null); IMEI imei = this.mapProvider.getMAPParameterFactory().createIMEI("35209900176148"); SubscriberState subscriberState = this.mapProvider.getMAPParameterFactory() .createSubscriberState(SubscriberStateChoice.assumedIdle,null); ISDNAddressString sgsn = this.mapProvider.getMAPParameterFactory() .createISDNAddressString(AddressNature.international_number,NumberingPlan.ISDN,"20155555555"); GeographicalInformation geographicalInformation_ps = this.mapProvider.getMAPParameterFactory() .createGeographicalInformation(Lat_ps,Long_ps,Uncertain_ps); LocationInformationGPRS locationInformationGPRS = this.mapProvider.getMAPParameterFactory(). createLocationInformationGPRS(null,null,geographicalInformation_ps,sgsn,null,null,false,null, true,30); SubscriberInfo subscriberInfo = this.mapProvider.getMAPParameterFactory() .createSubscriberInfo(locationInformation,subscriberState,null,locationInformationGPRS,null,imei,null, null,null); MAPDialogMobility mapDialogMobility = anyTimeInterrogationRequest.getMAPDialog(); mapDialogMobility.setUserObject(invokeId); mapDialogMobility.addAnyTimeInterrogationResponse(invokeId,subscriberInfo,null); mapDialogMobility.send(); logger.info("Subscriber Information Sent....."); } catch (MAPException e){ e.printStackTrace(); } }
Example #5
Source File: UpdateLocationResp.java From SigPloit with MIT License | 4 votes |
@Override public void onUpdateLocationRequest(UpdateLocationRequest updateLocationRequest) { try { long invokeIdU = updateLocationRequest.getInvokeId(); ISDNAddressString MscFake = updateLocationRequest.getMscNumber(); ISDNAddressString VlrFake = updateLocationRequest.getVlrNumber(); IMSI TargetImsi = updateLocationRequest.getImsi(); Category category = this.mapProvider.getMAPParameterFactory().createCategory(5); ArrayList<ExtBearerServiceCode> bearerServiceList = new ArrayList<ExtBearerServiceCode>(); ExtBearerServiceCode extBearerServiceCode = this.mapProvider.getMAPParameterFactory() .createExtBearerServiceCode(BearerServiceCodeValue.padAccessCA_9600bps); bearerServiceList.add(extBearerServiceCode); boolean roamingResttrictionDueToUnsupportedFeature = false; ISDNAddressString sgsnNumber = this.mapProvider.getMAPParameterFactory(). createISDNAddressString(AddressNature.international_number,NumberingPlan.ISDN,"201022222222"); SSCode ssCode = this.mapProvider.getMAPParameterFactory().createSSCode(SupplementaryCodeValue.allForwardingSS); //ArrayList<ExtSSInfo> provisionedSS = logger.info("New Fake MSC/VLR: "+ MscFake); logger.info("Victim IMSI: "+ TargetImsi); ISDNAddressString msisdn = this.mapProvider.getMAPParameterFactory().createISDNAddressString( AddressNature.international_number, NumberingPlan.ISDN, "2010789123456"); GlobalTitle0100 GtHlr = this.sccpProvider.getParameterFactory().createGlobalTitle( "201012345678",0, org.mobicents.protocols.ss7.indicator.NumberingPlan.ISDN_TELEPHONY,null, NatureOfAddress.INTERNATIONAL); GlobalTitle0100 GtMsc = this.sccpProvider.getParameterFactory(). createGlobalTitle("96512345678",0, org.mobicents.protocols.ss7.indicator.NumberingPlan.ISDN_TELEPHONY,null,NatureOfAddress.INTERNATIONAL); SccpAddress callingParty = this.sccpStack.getSccpProvider().getParameterFactory(). createSccpAddress(RoutingIndicator.ROUTING_BASED_ON_GLOBAL_TITLE,GtHlr,SERVER_SPC,SSN_Server); SccpAddress calledParty = this.sccpStack.getSccpProvider().getParameterFactory() .createSccpAddress(RoutingIndicator.ROUTING_BASED_ON_GLOBAL_TITLE,GtMsc,CLIENT_SPC,SSN_Client); MAPDialogMobility dialogMobility = this.mapProvider.getMAPServiceMobility().createNewDialog( MAPApplicationContext.getInstance(MAPApplicationContextName.subscriberDataMngtContext,MAPApplicationContextVersion.version3), callingParty,null,calledParty,null); dialogMobility.addInsertSubscriberDataRequest(TargetImsi,msisdn,category,SubscriberStatus.serviceGranted,null,null,null,null, false,null,null,null,null,null,null,null,false,null,null,false,null,15,null,null, null,null,null,null,false,null,null,false,sgsnNumber,null,null,false,false,null); dialogMobility.send(); logger.info("InsertSubscriberDataRequest Message Sent...."); } catch (MAPException e){ e.printStackTrace(); } }
Example #6
Source File: Server.java From gmlc with GNU Affero General Public License v3.0 | 4 votes |
@Override public void onAnyTimeInterrogationRequest(AnyTimeInterrogationRequest atiReq) { if (logger.isDebugEnabled()) { logger.debug( String.format("onAnyTimeInterrogationRequest for DialogId=%d", atiReq.getMAPDialog().getLocalDialogId())); } if (logger.isInfoEnabled()) { logger.info(String.format("onAnyTimeInterrogationRequest for DialogId=%d", atiReq.getMAPDialog().getLocalDialogId())); } /*else { logger.warn(String.format("onAnyTimeInterrogationRequest for DialogId=%d", atiReq.getMAPDialog().getLocalDialogId())); }*/ try { long invokeId = atiReq.getInvokeId(); MAPDialogMobility mapDialogMobility = atiReq.getMAPDialog(); mapDialogMobility.setUserObject(invokeId); MAPParameterFactoryImpl mapFactory = new MAPParameterFactoryImpl(); // Create Subscriber Information parameters including Location Information and Subscriber State // for concerning MAP operation int mcc, mnc, lac, cellIdOrServiceAreaCode; mcc = 748; mnc = 1; lac = 23; cellIdOrServiceAreaCode = 369; CellGlobalIdOrServiceAreaIdFixedLength cellGlobalIdOrServiceAreaIdFixedLength = mapFactory .createCellGlobalIdOrServiceAreaIdFixedLength(mcc, mnc, lac, cellIdOrServiceAreaCode); CellGlobalIdOrServiceAreaIdOrLAI cellGlobalIdOrServiceAreaIdOrLAI = mapFactory .createCellGlobalIdOrServiceAreaIdOrLAI(cellGlobalIdOrServiceAreaIdFixedLength); ISDNAddressString vlrNumber = new ISDNAddressStringImpl(AddressNature.international_number, org.mobicents.protocols.ss7.map.api.primitives.NumberingPlan.ISDN, "5982123007"); ISDNAddressString mscNumber = new ISDNAddressStringImpl(AddressNature.international_number, org.mobicents.protocols.ss7.map.api.primitives.NumberingPlan.ISDN, "5982123007"); Integer ageOfLocationInformation = 0; // ageOfLocationInformation GeographicalInformation geographicalInformation = null; LocationNumberMap locationNumber = null; MAPExtensionContainer mapExtensionContainer = null; LSAIdentity selectedLSAId = null; GeodeticInformation geodeticInformation = null; boolean currentLocationRetrieved = false; boolean saiPresent = false; LocationInformationEPS locationInformationEPS = null; UserCSGInformation userCSGInformation = null; LocationInformationGPRS locationInformationGPRS = null; PSSubscriberState psSubscriberState = null; IMEI imei = null; MSClassmark2 msClassmark2 = null; GPRSMSClass gprsMSClass = null; MNPInfoRes mnpInfoRes = null; SubscriberStateChoice subscriberStateChoice = SubscriberStateChoice.assumedIdle; // 0=assumedIdle, 1=camelBusy, 2=notProvidedFromVLR NotReachableReason notReachableReason = null; LocationInformation locationInformation = mapFactory.createLocationInformation(ageOfLocationInformation, geographicalInformation, vlrNumber, locationNumber, cellGlobalIdOrServiceAreaIdOrLAI, mapExtensionContainer, selectedLSAId, mscNumber, geodeticInformation, currentLocationRetrieved, saiPresent, locationInformationEPS, userCSGInformation); SubscriberState subscriberState = mapFactory.createSubscriberState(subscriberStateChoice, notReachableReason); SubscriberInfo subscriberInfo = mapFactory.createSubscriberInfo(locationInformation, subscriberState, mapExtensionContainer, locationInformationGPRS, psSubscriberState, imei, msClassmark2, gprsMSClass, mnpInfoRes); mapDialogMobility.addAnyTimeInterrogationResponse(invokeId, subscriberInfo, mapExtensionContainer); // This will initiate the TC-BEGIN with INVOKE component mapDialogMobility.close(false); } catch (MAPException mapException) { logger.error("MAP Exception while processing AnyTimeInterrogationRequest ", mapException); } catch (Exception e) { logger.error("Exception while processing AnyTimeInterrogationRequest ", e); } }
Example #7
Source File: ClientServer.java From gmlc with GNU Affero General Public License v3.0 | 4 votes |
public void onAnyTimeInterrogationRequest(AnyTimeInterrogationRequest atiReq) { if (logger.isDebugEnabled()) { logger.debug( String.format("onAnyTimeInterrogationRequest for DialogId=%d", atiReq.getMAPDialog().getLocalDialogId())); } if (logger.isInfoEnabled()) { logger.info(String.format("onAnyTimeInterrogationRequest for DialogId=%d", atiReq.getMAPDialog().getLocalDialogId())); } /*else { logger.warn(String.format("onAnyTimeInterrogationRequest for DialogId=%d", atiReq.getMAPDialog().getLocalDialogId())); }*/ try { long invokeId = atiReq.getInvokeId(); MAPDialogMobility mapDialogMobility = atiReq.getMAPDialog(); mapDialogMobility.setUserObject(invokeId); MAPParameterFactoryImpl mapFactory = new MAPParameterFactoryImpl(); // Create Subscriber Information parameters including Location Information and Subscriber State // for concerning MAP operation int mcc, mnc, lac, cellIdOrServiceAreaCode; mcc = 748; mnc = 1; lac = 23; cellIdOrServiceAreaCode = 369; CellGlobalIdOrServiceAreaIdFixedLength cellGlobalIdOrServiceAreaIdFixedLength = mapFactory .createCellGlobalIdOrServiceAreaIdFixedLength(mcc, mnc, lac, cellIdOrServiceAreaCode); CellGlobalIdOrServiceAreaIdOrLAI cellGlobalIdOrServiceAreaIdOrLAI = mapFactory .createCellGlobalIdOrServiceAreaIdOrLAI(cellGlobalIdOrServiceAreaIdFixedLength); ISDNAddressString vlrNumber = new ISDNAddressStringImpl(AddressNature.international_number, org.mobicents.protocols.ss7.map.api.primitives.NumberingPlan.ISDN, "5982123007"); ISDNAddressString mscNumber = new ISDNAddressStringImpl(AddressNature.international_number, org.mobicents.protocols.ss7.map.api.primitives.NumberingPlan.ISDN, "5982123007"); Integer ageOfLocationInformation = 0; // ageOfLocationInformation GeographicalInformation geographicalInformation = null; LocationNumberMap locationNumber = null; MAPExtensionContainer mapExtensionContainer = null; LSAIdentity selectedLSAId = null; GeodeticInformation geodeticInformation = null; boolean currentLocationRetrieved = false; boolean saiPresent = false; LocationInformationEPS locationInformationEPS = null; UserCSGInformation userCSGInformation = null; LocationInformationGPRS locationInformationGPRS = null; PSSubscriberState psSubscriberState = null; IMEI imei = null; MSClassmark2 msClassmark2 = null; GPRSMSClass gprsMSClass = null; MNPInfoRes mnpInfoRes = null; SubscriberStateChoice subscriberStateChoice = SubscriberStateChoice.assumedIdle; // 0=assumedIdle, 1=camelBusy, 2=notProvidedFromVLR NotReachableReason notReachableReason = null; LocationInformation locationInformation = mapFactory.createLocationInformation(ageOfLocationInformation, geographicalInformation, vlrNumber, locationNumber, cellGlobalIdOrServiceAreaIdOrLAI, mapExtensionContainer, selectedLSAId, mscNumber, geodeticInformation, currentLocationRetrieved, saiPresent, locationInformationEPS, userCSGInformation); SubscriberState subscriberState = mapFactory.createSubscriberState(subscriberStateChoice, notReachableReason); SubscriberInfo subscriberInfo = mapFactory.createSubscriberInfo(locationInformation, subscriberState, mapExtensionContainer, locationInformationGPRS, psSubscriberState, imei, msClassmark2, gprsMSClass, mnpInfoRes); mapDialogMobility.addAnyTimeInterrogationResponse(invokeId, subscriberInfo, mapExtensionContainer); // This will initiate the TC-BEGIN with INVOKE component mapDialogMobility.close(false); } catch (MAPException mapException) { logger.error("MAP Exception while processing AnyTimeInterrogationRequest ", mapException); } catch (Exception e) { logger.error("Exception while processing AnyTimeInterrogationRequest ", e); } }