User to pay sponsored token fee using another token of no value

How can I prevent a user from paying transaction fees from my sponsoring token using worthless tokens? Because I realized that I can choose the token that I will use to pay the transfer fees.

I think you can’t unless sponsored token can only be used by its own token,

but i think, you choose to sponsor tx fee on your token for awareness and promotion! isn’t it?

If you sponsor a token to pay fees (i.e. XYZ), you pay those fees 0.001 Waves each time users use your XYZ sponsor token to pay transactions and you get back your XYZ sponsored tokens at the rate you previously decided.

Example

An user pays with sponsored fees:

  • i.e. he pays 0.003 XYZ (-0.003 XYZ)

You (the XYZ token issuer):

  • pay 0.001 Waves (-0.001 Waves)
  • receive back 0.003 XYZ (+0.003 XYZ)

This means that you always pay transactions 0.001 Waves.