Most important in your task to create a response of system to action of the user. Not important how it will look: spinning circle or another progress bar or is stylized as in my picture for example. ![color_process][1]
The main thing that the user received the visual notice that the system responded to its inquiry of or not freeze or doesn't work completely.
In this way the indicator of sending to IOS works.
![iOS][2]
It is by default animations length pf progress bar it is equal to 4 seconds. Even if your message is already sent - you see animation and know that sendind aren't freeze. In case sending takes more time, the indicator stops before the bar end and notify about when it's done directly as a result of sending of data. In most cases sending occurs quicker than 4 seconds that doesn't look suspiciously for user which simply watch a sending progress bar.
There are many ways to design this process, but how to visualize this process depends on esthetic requirements of your project.
May be a dog-mascot with a paint bucket & brush which paints pixels will be the best. [1]: https://i.sstatic.net/PZvgj.gif [2]: https://i.sstatic.net/RVEpA.jpg