کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی
کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی

decode SMS-SUBMIT



SMS-SUBMIT including : 
SCA-PDU TYPE-MR-DA-PID-DCS-VP-UDL-UD



0891683108200805F01151048181160000FF16C8329BFD66B5F320B8BC4CA7E741F7B79C4D0E01



-SMSC : 0891683108200805F0

--Length : 08 (2digit 2digit)

--number : 91683108200805F0

---International : 91 (+ )

---683108200805F0

Reverse 2digits

86 13 80 02 80 50 00

number is >>> +8613800280500

-PDU Type : 11

--00010001

>>>from right to left 

---MTI : 01 ( SMS SUBMIT )

---RD : 0 ( Reject duplicate )

---VPF : 10 means present see FF after DCS

---SRR : 0 status report not requested

---UDHI : 0 no header present in multi part sms

---RP : 0 (Replay path )

-MR : 51 in hex : 5×16+1=81

-DA : 04818116

--Length : 04

--Number : 818116

---national : 81

---8116

Reverse

1861

number >>> 1861

-PID : 00 ( Protocol ID )

-DCS : 00 ( Data coding scheme : alphabet 7bit )

-VPF : FF in hex 141 days

( Validity period format bit3,4 present in pdu type )

-UDL : 16

-UD : C8329BFD66B5F320B8BC4CA7E741F7B79C4D0E01---Decoding User Data 

C8329BFD66B5F320B8BC4CA7E7

41F7B79C4D0E01

---Reverse hex

01 0E 4D 9C B7 F7 41 E7 A7 4C

BC B8 20 F3 B5 66 FD 9B 32 C8

hex_count :20

---hex to binary

00000001 00001110 01001101

10011100 10110111 11110111

01000001 11100111 10100111

01001100 10111100 10111000

00100000 11110011 10110101

01100110 11111101 10011011

00110010 11001000

---Remove zeros from the left

20×8-int((20×(8/7))×7=6

20×822×7=6


00000001 00001110 01001101

10011100 10110111 11110111

01000001 11100111 10100111

01001100 10111100 10111000

00100000 11110011 10110101

01100110 11111101 10011011

00110010 11001000


---Seperate in 7bits

0100001 1100100 1101100

1110010 1101111 1110111

0100000 1111001 1110100

1110100 1100101 1110010

1110000 0100000 1111001

1101101 0101100 1101111

1101100 1101100 1100101

1001000

---Binary to hex


21 64 6C 72 6F 77 20 79 74

74 65 72 70 20 79 6D 2C 6F

6C 6C 65 48


---Reverse hex


48656C6C6F2C6D79207072657474

7920776F726C6421


hex_count=22>>>22÷16=1 Reminder=6

UDL=16


---Put hex here

https://codebeautify.org/hex-string-converter



Finally decoded done successfully.


Encoding : 

Hex_Count:22

Int(22×(7÷8))+1-22×7=6

Add 6 Zero to the first

Decoding : 

Hex_Count :20

20×8-int(20×(8/7))=6

Remove 6 zero from the first







GSM-7 messages break down as follows:

  • Standard single SMS messages: For GSM phones with 7-bit character encoding, a standard SMS message can contain a maximum of 160 characters. That is 1120 bits / (7 bits/character) = 160 characters for a single SMS message.
  • GSM-7 multi-part or concatenated messages: When the message text is longer than 160 GSM characters, the message is concatenated and sent. When a message is concatenated, the user data header (UDH) consumes 6 bytes or 48 bits. This reduces the maximum number of characters in each message part:

1120 bits - 48 bits = 1072 bits

1072 bits / (7 bits/character) = 153 characters per message part.





























decode SMS-SUBMIT




079144872000626011000C914477000910320011002154747A0E4ACF416190BD2CCF83E6E9369C5D06B5CBF379F85C06E95A29



-0791448720006260 : SMSC

--07 : Length(Hex)

---Number :

91448720006260

91 : International ( + )

448720006260

Reverse 2digits from left

number is ... 44 78 02 00 26 06

-11 : PDU Type

--00010001

bit0,1(from right) : 01 : MTI

SMS-SUBMIT :01 & DELIVER : 00

bit2 : 0 : RD ( Reject duplicate )

bit3,4 : 10 : VPF : present

bit5 : 0 : SRR

bit6: 0 : UDHI : not present ( for concatenated messages or multi part)

bit7 : 0 : RP ( Reply path )

-00 : MR ( Message refrence in hex )

-0C91447700091032 : DA (send To this)

--0C : Length in hex

C=0×16+12=12

---Number

91 : International ( + )

447700091032

Reverse 2digits from the left

number is ... 44 77 00 90 01 23

-00 : PID

-11 : DCS ( Data coding scheme )

Alphabet 7bit

--Group coding

General data coding

11 GSM 7BIT CLASS 1 (ME-specific)


-00 : VPF
( Ckeck bit3,4 of PDU Type [10] ,it means present)

-21 : UDL in hex

-54747A0E4ACF416190BD2CCF83E6E9369C5D06B5CBF379F85C06E95A29 : UD


---Decoding User Data ( UD )

Data coding is ... alphabet mode 


54747A0E4ACF416190BD2CCF8

3E6E9369C5D06B5CBF379F85C06

E95A29


-Reverse above Hex 

29 5A E9 06 5C F8 79 F3 CB B5 06 

5D 9C 36 E9 E6 83 CF 2C BD 90 61

41 CF 4A 0E 7A 74 54


-Hex to binary

00101001 01011010 11101001

00000110 01011100 11111000

01111001 11110011 11001011

10110101 00000110 01011101

10011100 00110110 11101001

11100110 10000011 11001111

00101100 10111101 10010000

01100001 01000001 11001111

01001010 00001110 01111010

01110100 01010100



Hex_Count (2digits)=29

How many zeros to be remove? ( from the left of binery [Octet])

29×8-int(29×8/7)×7=1


Remove 1 Zero from the left then Set to septet (7bit) All binaries

0101001 0101101 0111010

0100000 1100101 1100111

1100001 1110011 1110011

1100101 1101101 0100000

1100101 1101100 1110000

1101101 1101001 1110011

0100000 1111001 1110010

1100101 1110110 0100000

1100001 0100000 1110011

1101001 010 0000 1110011

1101001 1101000  1010100


-Binary to hex

Ex : 010 1001:010=2,1001:9

29 2D 3A 20 65 67 61 73 73

65 6D 20 65 6C 70 6D 69 73

20 79 72 65 76 20 61 20 73

69 20 73 69 68 54

-Reverse hex 

546869732069732061207665727920

73696D706C65206D65737361676520

3A2D29

Hex_Count=33

33 >>> 33÷16=2 Reminder=1>>21

21... is the actual length of UDL

-Put hex here

https://codebeautify.org/hex-string-converter


Finally decoded done successfully!!!

do not forget >>> like & comment 



Have a sweet day 

































decode SMS-SUBMIT




0001AB0B915121551532F400C80F3190BB7C07D9DFE971B91D4EB301


Data coding : SMS Default Alphabet


00 : SMSC ( use cell phone default )

01 : PDU Type

-00000001 : 01 >>> SMS-SUBMIT

--bit0,1:01 MTI message type indicator

--bit2 : 0 RD reject duplicate

--bit3,4 : 00 VPF not presented

--bit5 : 0 SRR status not requested

--bit6 : 0 UDHI not presented

--bit7 : 0 RP reply path

Decimal =10×16+11=171
AB : MR ( Message refrence ) hex value

DA : 0B915121551532F4

Destination address

--0B : Length hex value

decimal=0×16+11=11

International number : 91(+)

number : 5121551532F4

51 21 55 15 32 F4 ( remove F )

decode : 15125551234

finally >>> +15125551234

00 : PID

C8 : DCS 

--Coding Group: Message Waiting Info: Discard Message

C8  : Voicemail Active
C9  : Fax Active
CA  : E-mail Active

0F : UDL

3190BB7C07D9DFE971B91D4EB301 : UD


decoding User Data :

-Reverse hex

01B34E1DB971E9DFD9077CBB9031

-Change to bunary

00000001 10110011  01001110

00011101 10111001 01110001

11101001 11011111 11011001

00000111 01111100 10111011

10010000 00110001

-How many zeros to be remove from the left?

14×814×(8÷7)×7=0 ( means nothing )


--convert 7bits 7bits to hex value


0000000:00

1101100:6C

1101001:69

1100001:61

1101101:6D

1100101:65

1100011:63

1101001:69

1101111:6F

1110110:76

0100000:20

1110111:77

1100101:65

1101110:6E

0100000:20

0110001:31


-Reverse hex

31206E657720766F6963656D61696C00

-Hex to string ( Copy here )

https://codebeautify.org/hex-string-converter




finally decoded done successfully.