Ich glaube ich hab den Fisch raus, und zwar steht in der Dokumentation
beim Beispiel nicht, dass man encodieren muss, und oben bei den ACKs
steht auch nicht dabei, dass man bei Argumenten encodieren muss.
siehe diesen Abschnitt:
1 | # start recognition in wordset 1
|
2 | SEND 'i'
|
3 | SEND 'B'
|
4 | # wait for reply:
|
5 | # (if 5s timeout has been set, wait for max 6s then abort
|
6 | # otherwise trigger recognition could never end)
|
7 | result = RECEIVE
|
8 | IF result = 's' THEN
|
9 | # successful recognition, ack and read result
|
10 | SEND ' '
|
11 | command = RECEIVE – 'A'
|
12 | # perform actions according to command
|
13 | ELSE IF result = 't' THEN
|
14 | # timed out, no word spoken
|
15 | ELSE IF result = 'e' THEN
|
16 | # error code, ack and read which one
|
17 | SEND ' '
|
18 | error = (RECEIVE – 'A') * 16
|
19 | SEND ' '
|
20 | error = error + (RECEIVE – 'A')
|
21 | # perform actions according to error
|
22 | ELSE
|
23 | # invalid request or reply
|
24 | ERROR
|
25 | END IF
|
Das decodieren wird hier gemacht, aber das en codieren, auf das wird
verzichtet, aus irgend einem Grund.
Auch oben steht wie man decodiren kann aber umgekehrt nicht.
Also da musste ich echt tief graben bis ichs raus kappt hab, puuuuhh!!