The true way to send a broadcast from ADB command is :
adb shell am broadcast -a com.whereismywifeserver.intent.TEST --es sms_body "test from adb"
And, -a means ACTION, --es means to send a String extra.
PS. There are other data type you can send by specifying different params like:
[-e|--es ...]
[--esn ...]
[--ez ...]
[--ei ...]
[--el ...]
[--ef ...]
[--eu ...]
[--ecn ]
[--eia [,
(mutiple extras passed as Integer[])
[--eial [,
(mutiple extras passed as List)
[--ela [,
(mutiple extras passed as Long[])
[--elal [,
(mutiple extras passed as List)
[--efa [,
(mutiple extras passed as Float[])
[--efal [,
(mutiple extras passed as List)
[--esa [,
(mutiple extras passed as String[]; to embed a comma into a string,
escape it using "\,")
[--esal [,
(mutiple extras passed as List; to embed a comma into a string,
escape it using "\,")
[-f ]
For example, you can send an int value by:
--ei int_key 0