pxt-calliope/docs/reference/radio/receive-string.md
Juri Wolf a93febb5b7
Map and clean deprecated functions (#175)
* add image and deprecated arrow functions

* update locales

* map basic.showArrow

* map arrow blocks

* map & remove arrow images

* remove arrow blocks

* update locales

* remove & patch:
rgbw -> rgb
button/pin pressed -> button/pin event
loudness -> soundLevel

* update ts mappings for arrows

* add wip ts patch rules

* update .blocks files

* use Click instead of Down as default in Documentation and tests

* patch test.blocks

* fix lowercase name tag

* update test.blocks

* update blocks test files

* update blocks test files

* format block files

* pass blocks file tests

* fix ts mapping

* fix color.defl value

closes https://github.com/microsoft/pxt-calliope/issues/136

* fix ts mappings

- add optional spacing at the end of rgbw()
- map up to v4.0.19

* add suggested changes

* replace innerText by textContent

Co-authored-by: JW <gitkraken@juriwolf.de>
Co-authored-by: Juri <info@juriwolf.de>
2022-04-26 10:28:42 -07:00

2.1 KiB

receive String

Find the next string sent by radio from another @boardname@.

radio.receiveString()

~ hint

Deprecated

This API has been deprecated! Use on received string instead.

~

Returns

  • the first string that was sent. If no string was sent, then this function returns an empty (blank) string.

Example: Simple receiver

Show the string sent by another @boardname@.

radio.onDataReceived(() => {
    basic.showString(radio.receiveString());
});

Example: Two-way radio

If you load this program onto two or more @boardname@s, you can send a code word from one of them to the others by pressing button A. The other @boardname@s will receive the code word and then show it.

input.onButtonEvent(Button.A, ButtonEvent.Click, () => {
    radio.sendString("Codeword: TRIMARAN")
    basic.showString("SENT");
})

radio.onDataReceived(() => {
    basic.showString(radio.receiveString());
});

~hint

A radio that can both transmit and receive is called a transceiver.

~

Example: Mood radio

This is a simple program to send whether you are happy or sad over radio. Use the A or B button to select an emotion.

This program will also receive your friend's mood.

let data: string = "";
input.onButtonEvent(Button.A, ButtonEvent.Click, () => {
    radio.sendString("H");
});
input.onButtonEvent(Button.B, ButtonEvent.Click, () => {
    radio.sendString("S");
});
radio.onDataReceived(() => {
    data = radio.receiveString();
    if ("H" == data) {
        basic.showLeds(`
            . . . . .
            . # . # .
            . . . . .
            # . . . #
            . # # # .
            `);
    } else if ("S" == data) {
        basic.showLeds(`
            . . . . .
            . # . # .
            . . . . .
            . # # # .
            # . . . #
            `);
    } else {
        basic.showString("?");
    }
});

See also

send string, on data received

radio