کلینیک فوق تخصصی اکسس ( کاربرد 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




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.