Added compatibility parsing for commands
This commit is contained in:
		
							parent
							
								
									f1f618bbcd
								
							
						
					
					
						commit
						6f648d5a60
					
				
							
								
								
									
										12
									
								
								varicode.cpp
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								varicode.cpp
									
									
									
									
									
								
							@ -43,12 +43,22 @@ QString alphanumeric = {"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ /@"}; // callsign
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
QMap<QString, int> directed_cmds = {
 | 
					QMap<QString, int> directed_cmds = {
 | 
				
			||||||
    // any changes here need to be made also in the directed regular xpression for parsing
 | 
					    // any changes here need to be made also in the directed regular xpression for parsing
 | 
				
			||||||
 | 
					    // ?*^&@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {" SNR?",     0  }, // query snr
 | 
					    {" SNR?",     0  }, // query snr
 | 
				
			||||||
 | 
					    {"?",         0  }, // compat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {" QTH?",     1  }, // query qth
 | 
					    {" QTH?",     1  }, // query qth
 | 
				
			||||||
 | 
					    {"@",         1  }, // compat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {" QTC?",     2  }, // query station message
 | 
					    {" QTC?",     2  }, // query station message
 | 
				
			||||||
 | 
					    {"&",         2  }, // compat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {" GRID?",    4  }, // query grid
 | 
					    {" GRID?",    4  }, // query grid
 | 
				
			||||||
 | 
					    {"^",         4  }, // compat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {" STATUS?",  6  }, // query idle message
 | 
					    {" STATUS?",  6  }, // query idle message
 | 
				
			||||||
 | 
					    {"*",         6  }, // compat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {">",     5  }, // relay message
 | 
					    {">",     5  }, // relay message
 | 
				
			||||||
    {"#",     8  }, // all or nothing message
 | 
					    {"#",     8  }, // all or nothing message
 | 
				
			||||||
@ -101,7 +111,7 @@ QMap<int, int> checksum_cmds = {
 | 
				
			|||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
QString callsign_pattern = QString("(?<callsign>[@]?[A-Z0-9/]+)");
 | 
					QString callsign_pattern = QString("(?<callsign>[@]?[A-Z0-9/]+)");
 | 
				
			||||||
QString optional_cmd_pattern = QString("(?<cmd>\\s?(?:HEARTBEAT (ACK|REQ)|AGN[?]|QSL[?]|HW CPY[?]|APRS[:]|QRZ[?]|SNR[?]|QTC[?]|QTH[?]|GRID[?]|STATUS[?]|(?:(?:ACK|73|YES|NO|SNR|QSL|RR|SK|FB|QTH|QTC|GRID|ACTIVE|IDLE)(?=[ ]|$))|[#> ]))?");
 | 
					QString optional_cmd_pattern = QString("(?<cmd>\\s?(?:HEARTBEAT (ACK|REQ)|AGN[?]|QSL[?]|HW CPY[?]|APRS[:]|QRZ[?]|SNR[?]|QTC[?]|QTH[?]|GRID[?]|STATUS[?]|(?:(?:ACK|73|YES|NO|SNR|QSL|RR|SK|FB|QTH|QTC|GRID|ACTIVE|IDLE)(?=[ ]|$))|[?*^&@#> ]))?");
 | 
				
			||||||
QString optional_grid_pattern = QString("(?<grid>\\s?[A-R]{2}[0-9]{2})?");
 | 
					QString optional_grid_pattern = QString("(?<grid>\\s?[A-R]{2}[0-9]{2})?");
 | 
				
			||||||
QString optional_extended_grid_pattern = QString("^(?<grid>\\s?(?:[A-R]{2}[0-9]{2}(?:[A-X]{2}(?:[0-9]{2})?)*))?");
 | 
					QString optional_extended_grid_pattern = QString("^(?<grid>\\s?(?:[A-R]{2}[0-9]{2}(?:[A-X]{2}(?:[0-9]{2})?)*))?");
 | 
				
			||||||
QString optional_num_pattern = QString("(?<num>(?<=SNR|HEARTBEAT ACK)\\s?[-+]?(?:3[01]|[0-2]?[0-9]))?");
 | 
					QString optional_num_pattern = QString("(?<num>(?<=SNR|HEARTBEAT ACK)\\s?[-+]?(?:3[01]|[0-2]?[0-9]))?");
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user