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

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

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

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

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

Decode Alphabet-7bits SMS PDU & emoji


۱۳ دیماه ۱۴۰۳


فرمانده سپاه ثارالله استان کرمان با اشاره به حمله تروریستی ۱۳ دی‌ماه سال گذشته در گلزار شهدا گفت: دشمنان ما گمان می‌کردند که با این‌گونه اقدامات کور می‌توانند مردم را از مکتب شهید سلیمانی جدا کنند، اما این تلاش‌ها بی‌ثمر بود. خون شهیدان و عشق مردم به مکتب حاج قاسم نشان داد که این راه ادامه دارد.




UTF-16

0021000C91890910325476000804D83DDE01

0021000C91890910325476001804D83DDE01

UTF-32

0011000C9189091032547600080008000000480001f440




PROTOCOL DATA UNIT

TP-DCS=00

Decoding :

17C8329BFD064D9B5362999DB697E565B96BFC6E8700

Len : 17 (hex)

UD(user data):

C8329BFD064D9B5362999DB697E565B96BFC6E8700

-Arrange Hex From The End To The First

00876EFC6BB965E597B69D9962539B4D06FD9B32C8

-Binary

00000000 10000111

01101110 11111100

01101011 10111001

01100101 11100101

10010111 10110110

10011101 10011001

01100010 01010011

10011011 01001101

00000110 11111101

10011011 00110010

11001000

-21×8/7>reminder=0 ( reminder>0 = Remove 

-Seperate 7digits from the begining

0000000 0100001

1101101 1101111

1100011 0101110

1110010 1100101

1110010 1100101

1110110 1101001

1101100 1100101

1000100 1010011

1001101 1010011

0100000 1101111

1101100 1101100

1100101 1001000

-Add Zero To The First Of Each 7 digits

000000000010000101101101011011110110001100101110011100100110010101110010011001010111011001101001011011000110010101000100010100110100110101010011001000000110111101101100011011000110010101001000

-Change To Hex

216D6F632E7265726576696C6544534D53206F6C6C6548

-Arrange Hex From The End To The First

48656C6C6F20534D5344656C6976657265722E636F6D21

-Hex To Ascii

hex-to-ascii

online-sms-pdu-encoder



Decode following : 

16C8329BFD06DDEF779798FD3ECFD779D7F8DD0E01

Length : 16 ( Hex )


C8329BFD06DDEF779798FD3ECFD779D7F8DD0E01


00100001011011010110111101100011001011100111100101101011011100110110011101101111011011000110001000101110011101110111011101110111001000000110111101101100011011000110010101001000

216D6F632E796B73676F6C622E777777206F6C6C6548

Final : 48656C6C6F207777772E626C6F67736B792E636F6D21

hex-to-ascii









Encoding




6d6f632e796b73676f6c622e6162767373656363612e777777206b63656843202c2021756f7920656573206f6e20656d697420676e6f4c202c206948

Count : 60 ( Hex : 3c = 3×16+12

011011010110111101100011001011100111100101101011011100110110011101101111011011000110001000101110011000010110001001110110011100110111001101100101011000110110001101100001001011100111011101110111011101110010000001101011011000110110010101101000010000110010000000101100001000000010000101110101011011110111100100100000011001010110010101110011001000000110111101101110001000000110010101101101011010010111010000100000011001110110111001101111010011000010000000101100001000000110100101001000

60×8÷7=68.57

60×8-68×7=4 ( Zero Quantity to Add)


0000110110111011111100011010111011110011101011111001111001111101111110110011000100101110110000111000101110110111001111100111100101110001111000111100001010111011101111110111111011101000001101011110001111001011101000100001101000000101100010000001000011110101110111111110010100000110010111001011110011010000011011111101110010000011001011101101110100111101000100000110011111011101101111100110001000000101100010000011010011001000


0DBBF1AEF3AF9E7DFB312EC38BB73E7971E3C2BBBF7EE835E3CBA21A058810F5DFE5065CBCD06FDC832EDD3D1067DDBE62058834C8



TP-UDL:3C

TP-UD: C834880562BEDD67103DDD2E83DC6FD0BC5C06E5DFF51088051AA2CBE335E87EBFBBC2E371793EB78BC32E31FB7D9EAFF3AEF1BB0D

 


0011000C918909103254760000AA3CC834880562BEDD67103DDD2E83DC6FD0BC5C06E5DFF51088051AA2CBE335E87EBFBBC2E371793EB78BC32E31FB7D9EAFF3AEF1BB0D

Length UD=3C(IN HEX)=60


Length: 66



AT+CMGS=69

0031000A91091032547600108F40C834880562BEDD67103DDD2E83DC6FD0BC5C06E5DFF51088051AA2CBE335E87EBFBBC2E371793EB78BC32E31FB7D9EAFF3AEF1BB0D82B3F5

TP-PID : 00

TP-DCS(7bits) :10 (flash message)

TP-VP : 8F : 12hours




3c6120687265663d2268747470733a2f2f7777772e6163636573737662612e626c6f67736b792e636f6d223e416c693c2f613e






Types of SMS Message

There are four classes of an SMS message. Classes identify the importance of an SMS message and also the location where it must be stored.

Class 0

This type of SMS message is displayed on the mobile screen without being saved in the message store or on the SIM card; unless explicitly saved by the mobile user.

Class 1

This message is to be stored in the device memory or the SIM card (depending on memory availability).




TP-DCS ( DCS VALUE S)

HEX:18

UCS2

Class 0 ( Flash message )


HEX:10

GSM 7bit

Class 0 ( Flash message )


HEX:00

GSM 7bit

Default


HEX:08

UCS2

Default


HEX:28

UCS2

Default

+ ( Compression ... Character set not compressed )





Decimal 1605 To Hex : 

                                   Reminder

1605/16 100        5  ( 1605-16×100)

100/16    6               4 (100-16×6)

6/16           0              6 (6-16×0)

Hex : 645 ( Unicode : 0645 )


16^(2)×6+16^(1)×4+16^(0)×5=1605






To encode U+10437 to UTF-16:

  • Subtract 0x10000 from the code point, leaving 0x0437.
  • For the high surrogate, shift right by 10 (divide by 0x400), then add 0xD800, resulting in 0x0001 + 0xD800 = 0xD801.
  • For the low surrogate, take the low 10 bits (remainder of dividing by 0x400), then add 0xDC00, resulting in 0x0037 + 0xDC00 = 0xDC37.

To decode U+10437  from UTF-16:

  • Take the high surrogate (0xD801) and subtract 0xD800, then multiply by 0x400, resulting in 0x0001 × 0x400 = 0x0400.
  • Take the low surrogate (0xDC37) and subtract 0xDC00, resulting in 0x37.
  • Add these two results together (0x0437), and finally add 0x10000 to get the final code point, 0x10437.




01F619-1000=0F619

Binary : 

0000 1111 0110 0001 1001

Separate 10 digits : 

0000 1111 01     10 0001 1001

Add  1101 10 , 1101 11

1101 10 0000 1111 01     1101 11 10 0001 1001

Separate 4 digits

1101 1000 0011 1101      1101 1110 0001 1001

Hex : 

D              8          3          D                 D         E           1           9


online-sms-pdu-decoder

0021000C91890910325476000804D83DDE19





OR 


U+01F619

1F619-Subtract(10000)=F619

Hex(400)=16^2×4+16^1×0+16^0×0=1024

Hex(F619)=63001


Hex value:
F619 ÷ 400 = 3D Remainder : 219

Decimal value:
63001 ÷ 1024 = 61 Remainder : 537


3D=3×16+13=61




D800=

16^(3)×13+16^(2)×8+16^(1)×0+16^(0)×0=55296

55296+61= 55357

55357 to Hex : 

55357 / 16  3459  13 ( D ) 

3459 / 16   216 3  ( 3 )

216 / 16 13  8 ( 8

13 / 16  0  13 ( D ) 

D83D





DC00

16^(3)×13+16^(2)×12+16^(1)×0+16^(0)×0=56320

56320+537= 56857

56857 to Hex : 

56857 / 16 3553 9 ( 9 )

3553 / 16 222 1 ( 1 )

222 / 16 13 14 ( )

13 / 16 0 13 ( D )

DE19



Add To Hex : 

D800+3D=D83D

DC00+219=DE19

DC00

+ 219

------

D (12+2)19

D       E         19


0021000C91899010325476000804D83EDD13









برخی مقامات ارشد نظامی اسرائیل اکنون بر این باور هستند که به جای حمله به حوثی‌ها در یمن «اقدام مستقیم» علیه ایران باید در اولویت قرار گیرد.





TP-DCS



26 خرداد 1402 

نتایج طرح فروش خودرو در سامانه یکپارچه اعلام شد و طی آن شاهد هستیم که برای بسیاری از متقاضیان، خودرویی تخصیص نیافته است و بسیاری دیگر نیز باید خودروهای خود را در زمستان ۱۴۰۳ تحویل بگیرند که این مسئله با قول هایی که پیش از این برای تحویل فوری خودروها به مردم داده شده بود کاملاً متناقض است.





11110010 : F2

F0 (240) GSM 7bit  Class 0 (Flash Message)

F1(241)  GSM 7bit Class 1 (ME-specific)

F2(242) GSM 7bit Class 2 (SIM/USIM specific)

F3(243) GSM 7bit Class 3 (TE-specific)

F4(244) 8 bit data Class 0 ( Flah message)

E3(227)    UCS2       Other Inactive

18(decimal:24)   Class 0 (Flash Msg)


76543210<<<Bits

00101000<<<Binary


Coding Group Bits 7..4 :

-00xx : Like 0001 : General Data Coding indication

--Bit 3..0

General Data Coding indication
Bits 5..0 indicate the following:
Bit 5
0    Text is uncompressed
1     Text is compressed
Bit 4
  0  Bits 1 and 0 are reserved and have no message class meaning
1    Bits 1 and 0 have a message class meaning
Bit3 Bit2   Alphabet being used
  0             0            Default alphabet
  0             1           8 bit data

  1             0           UCS2 (16bit)

  1             1            Reserved
Bit1 Bit0  Message class   Description
  0               0              Class 0                    Immediate display (alert)
  0               1              Class 1                         ME specific
  1               0              Class 2                         SIM specific
  1               1              Class 3                          TE specific


NOTE: The special case of bits 7..0 being 0000 0000 indicates the Default Alphabet as in Phase 2



-0100 ... 0111 : Message Marked for Automatic Deletion

-1100Message Waiting Indication Group: Discard Message

--Bits 3..0 are coded in exactly the same way as Group 1101, however, with bits 7..4 set to 1100 the mobile may discard the contents of the message, and only present the indication to the user.


00150008810100358500CB0002C834

CB : 1100  1011

(1011)

Bits1,0 : 11 : Other Message

Bit2 only set to 0

Bit 3 : Set Indication Active



-1101Message Waiting Indication Group: Store Message ( Only 7 bit)

-- This Group allows an indication to be provided for the user about the status of types of message waiting on systems connected to the GSM PLMN. The mobile may present this indication as an icon on the screen, or another MMI indication. The mobile may take note of the Origination Address for the message in this group and group 1100. For each indication supported, the mobile may provide storage for the Origination Address which is to control the mobile indication.

Text included in the user data is coded in the Default Alphabet.
Where a message is received with bits 7..4 set to 1101, the mobile will store the text of the SMS message in addition to setting the indication.
Bit 3           Descrption
   0         Set Indication Inactive
   1         Set Indication Active



Bit1  Bit0    Indication Type
   1       0      Voicemail Message Waiting
   0       1      Fax Message Waiting
   1       0      Electronic Mail Message Waiting
   1      1      Other Message Waiting

Bit 2 is reserved , and set to 0


* Mobile manufacturers may implement the "Other Message Waiting" indication as an additional indication without specifying the meaning. The meaning of this indication is intended to be standardized in the future, so Operators should not make use of this indication until the standard for this indication is finalized.



-1110Message Waiting Indication Group: Store Message (Only UCS2)

--The coding of bits 3..0 and functionality of this feature are the same as for the Message Waiting Indication Group above, (bits 7..4 set to 1101) with the exception that the text included in the user data is coded in the uncompressed UCS2 alphabet.


-1111Data coding/message class (Only GSM 7 bit & 8 bit data)

Bit 3 is reserved , set to 0

Bit2 Message coding

0             Default alphabet

1             8-bit data

Bit1 Bit0 Message Class  Description

0           0           Class 0                   Immediately

display(alert)

0          1          Class 1                  Me specific

1          0          Class 2                  SIM specific

1          1          Class 3                  TE specific



F0(240) GSM 7 bit Class 0 (Flash message)            -

F1(241) GSM 7 bit Class 1 (ME-specific)                   -

F2(242) GSM 7 bit Class 2 (SIM/USIM-specific) -

F3(243) GSM 7 bitClass 3 (TE-specific)                      -

F4(244) 8 bit data Class 0 (Flash message)             -

F5(245) 8 bit data Class 1 (ME-specific)                    -

F6(246) 8 bit data Class 2 (SIM/USIM-specific)  -

F7(247) 8 bit dataClass 3 (TE-specific)

- : Uncompressed , + : Compressed








0015000881010035850048000406450646


48 >>> 0 1 0 0 1 0 0 0

Bit5 : 0 : Uncompressed

Bit4 : 1 : Bits 1 and 0 have a message class 

Bits3,2 : 10 : UCS2(16bits)

Bits1,0 : 00 : Message Class 0


00150008810100358500600002C834

60(96) Gsm 7 bit Default (+: Compressed)

-0110 : Message Marked for Automatic Deletion



PDU TYPE : 15

00010101

Bits1,0 : 01 : SMS-SUBMIT

Bit2 : 1 : RD (Reject duplicate)

Bits4,3 : 10 : VPF : Present (here 00 after 60)

Bit5 : 0 : SRR : Status report not requested

Bit6 : 0 : UDHI : Not present

Bit7 : 0 : RP (Reply path)






























SMS-SUBMIT



-Decode UD(User data) in 7bit (Sending max 160 char)-(Ascii 140 Char Max Len)


below Text(fingilish)  to Hex


4d616e206d6f6469726520696e206d616a6d6f6f652068617374616d206c6f7466616e2062612062616e64652068616d6168616e672062617368696420676f6c616e616d2e


Length : 69 (2digits)-change to hex value

Hex : 69÷16=4 & 69-4×15=5 : 45

So UDL(User data length)=45 


Hex to binary  : 

2E=2×16+14=46(decimal)

46÷2=23 Reminder=0

23÷2=11 Reminder=1

11÷2=5    Reminder=1

5÷2=2     Reminder=1

2÷2=1        Reminder=0

1÷2=0   Reminder=1

0÷2=0 Reminder=0


From Down to up :


hex(2E):decimal(46):binary(0101110)




Reverse Hex : 

2E6D616E616C6F672064696873616220676E6168616D61682065646E6162206162206E6166746F6C206D617473616820656F6F6D6A616D206E6920657269646F6D206E614D



2E : octet(00101110)>>>septet(01011110)[Len 7 from the right]


0101110 1101101 1100001 1101110 1100001 1101100  1101111 1100111 0100000 1100100 1101001 1101000 1110011 1100001 1100010 0100000 1100111 1101110 1100001 1101000 1100001 1101101 1100001 1101000 0100000 1100101 1100100 1101110 1100001 1100010 0100000 1100001 1100010 0100000 1101110 1100001 1100110 1110100 1101111 1101100 0100000 1101101 1100001 1110100 1110011 1100001 1101000 0100000 1100101 1101111 1101111 1101101 1101010 1100001 1101101 0100000 1101110 1101001 0100000 1100101 1110010 1101001 1100100 1101111 1101101 0100000 1101110 1100001 1001101



Add the required zero from the left until it is devided by 8 : 

69×7+x Mod 8=0

7bit > 8bit

int(69×7/8)+1=61×8-69×7=5



00000 0101110 1101101 1100001 1101110 1100001 1101100  1101111 1100111 0100000 1100100 1101001 1101000 1110011 1100001 1100010 0100000 1100111 1101110 1100001 1101000 1100001 1101101 1100001 1101000 0100000 1100101 1100100 1101110 1100001 1100010 0100000 1100001 1100010 0100000 1101110 1100001 1100110 1110100 1101111 1101100 0100000 1101101 1100001 1110100 1110011 1100001 1101000 0100000 1100101 1101111 1101111 1101101 1101010 1100001 1101101 0100000 1101110 1101001 0100000 1100101 1110010 1101001 1100100 1101111 1101101 0100000 1101110 1100001 1001101


Seperate 8digits (octet) : 


00000010111011011011100001110111

01100001110110011011111100111010

00001100100110100111010001110011

11000011100010010000011001111101

11011000011101000110000111011011

10000111010000100000110010111001

00110111011000011100010010000011

00001110001001000001101110110000

11100110111010011011111101100010

00001101101110000111101001110011

11000011101000010000011001011101

11111011111101101110101011000011

10110101000001101110110100101000

00110010111100101101001110010011

01111110110101000001101110110000

11001101


تبدیل باینری های بالا  طبق جدول به Hex : 


02 ED B8 77 61 D9 BF 3A 0C 9A 74 73 C3 89 06 7D D8 74 61 DB 87 42 0C B9 37 61 C4 83 0E 24 1B B0 E6 E9 BF 62 0D B8 7A 73 C3 A1 06 5D FB F6 EA C3 B5 06 ED 28 32 F2 D3 93 7E D4 1B B0 CD



برعکس کردن مقادیر Hex : 


CDB01BD47E93D3F23228ED06B5C3EA

F6FB5D06A1C3737AB80D62BFE9E6B0

1B240E83C46137B90C4287DB6174D8

7D0689C373749A0C3ABFD96177B8ED

02


00110008810100358500000C45CDB01BD47E93D3F23228ED06B5C3EAF6FB5D06A1C3737AB80D62BFE9E6B01B240E83C46137B90C4287DB6174D87D0689C373749A0C3ABFD96177B8ED02

UDL(User data length)=45hex=69




Address Example  : 


Alphanumeric address is at first put to the GSM 7-bit default alphabet, then encoded the same way as any message text in TP-UD field (that means it is 7-bit packed) and then the address is supplied with the "number" length and TON and NPI.

For example, a fictional alphanumeric address Design@Home is converted to the GSM 7-bit default alphabet which yields 11 bytes 44 65 73 69 67 6E 00 48 6F 6D 65 (hex), the 7-bit packing transforms it to 77 bits stored in 10 octets as C4 F2 3C 7D 76 03 90 EF 76 19; 77 bits is 20 nibbles (14 hex) which is the value of the first octet of the address. The second octet contains TON (5) and NPI (0), which yields D0 hex. The complete address in the GSM format is 14 D0 C4 F2 3C 7D 76 03 90 EF 76 19.

-Text to Hex Value : Design@Home

44657369676e40486f6d65

Length : 11

-Reverse Hex Values

65 6D 6F 48 40 6E 67 69 73 65 44

-Binary ( 7 bit from the right )

1100101 1101101 1101111 1001000

1000000 1101110 1100111 1101001

1110011 1100101 1000100

-Add required zero to the left : 

int(11×7/8)+1=10×8-11×7=80-77=3

000 1100101 1101101 1101111 

1001000 1000000 1101110 1100111 

1101001 1110011 1100101 1000100

-Octet :

00011001011101101110111110010001

000000110111011001111101

001111001111001011000100

-Binary to Hex :

19 76 EF 91 03 76 7D 3C F2 C4

-Reverse Hex : 

C4 F2 3C 7D 76 03 91 EF 76 19


80÷4=20>>>hex(14)


The format of addresses in the GSM 03.40 is described in the following table:

octetMeaning
0address length in nibbles (semi-octets)
1EXT, TON, NPI
2-11address digits

the nibble is often called a semi-octet


-Ext : usaually 1

-TON ( Type of number )

bit 6,5,4 :

unknown 000

international number : 001

National number : 010

Network specific number : 011

Subscriber number  100

Alphanumeric, (coded according to 3GPP TS 23.038 [9] GSM 7-bit default alphabet)  101

Abbreviated number 110

Reserved for extension 111


-NPI ( Numbering plan id )

bit 3,2,1,0

Unknown 0000

ISDN/telephone numbering plan (E.164/E.163) 0001

Data numbering plan (X.121) 0011

Telex numbering plan 0100

Service Centre Specific plan 0101

Service Centre Specific plan 2) 0110

National numbering plan 1000

Private numbering plan 1001

ERMES numbering plan (ETSI DE/PS 3 01 3) 1010

Reserved for extension 1111



EXT : 1 , TON : 001 , NPI : 0001 :

10010001 >>>>  Hex : 91

EXT : 1 , TON : 000 , NPI : 0001 :

10000001 >>>> Hex : 81


1 010 1000 : A8


00110008A8010035850008051006450647080006650666


1 001 1001 : 99


0011000A9989010035850008051006450647080006650666






002414
D0C4F23C7D760390EF76190000111011315214000BE474D81C0EBB5DE3771B


-TP-DCS : 


Message Classes
ValueMessage Class
0 00 - Flash messages
0 11 - ME-specific
1 02 - SIM / USIM specific
1 13 - TE-specific

Flash messages are received by a mobile phone even though it has full memory. They are not stored in the phone, they just displayed on the phone display.


Coding Group : General Data Coding


00  0   GSM 7 bit Default
08  8   UCS2        Default
10 16 GSM 7 bit  Class 0 (Flash message)
14 20 8 bit data Class 0 (Flash message)
18 24 UCS2 Class 0 (Flash message)
20 32 GSM 7 bit   Default  +(compressed)
30 48 GSM 7 bit  Class 0 (Flash message) +(compressed)

Message Marked for Automatic Deletion :
40 64 GSM 7 bit Default
44 68 8 bit data Default
48 72 UCS2       Default

48 : Hex , 72 : decimal

50 80 GSM 7 bit Class 0 (Flash message)
60 96 GSM 7 bit Default  +(compressed)
54 84 8 bit data Class 0 (Flash message)
60 96 GSM 7 bit Default  +(compressed)
70 112 GSM 7 bit Class 0 (Flash message) +(compressed)


0031000B9189199370489400480036062F06310020062D062706440020062A0633062A0020062706310633062706440020067E06CC0627064506A9002006470633062A0645

UDL:decimal(54),Hex(36)

062F : د

Length from 0B to the end : 66