31 lines
1.4 KiB
Plaintext
31 lines
1.4 KiB
Plaintext
version 1 .
|
|
# Definitions for the internal workings of the Hayes modem driver.
|
|
|
|
# Assertion. Declares presence of a Hayes modem.
|
|
ModemPresent = <modem =hayes @devicePath string @dataspace #!InternalProtocol> .
|
|
|
|
# TODO not yet properly specified
|
|
InternalProtocol = any .
|
|
|
|
# Message. Sent when the modem sends us a "URC", an Unsolicited Result Code.
|
|
UnsolicitedResultCode = <unsolicited @result Result> .
|
|
|
|
# Assertion. Asks the modem to execute the given command.
|
|
CommandRPC = <execute-command @commandText string @replyTo #!CommandResult> .
|
|
# Message. Asks the modem to execute the given command, but not to send back the reply.
|
|
CommandEvent = <execute-command @commandText string> .
|
|
|
|
# Assertion. Describes the result of a command execution.
|
|
CommandResult = <command-result @commandText string @results [Result ...] @finalResult string> .
|
|
|
|
@<examples [
|
|
<unsolicited <result "NO CARRIER" #f #f>>
|
|
<unsolicited <result "+CRING: VOICE" "CRING" ["VOICE"]>>
|
|
<unsolicited <result "+CLIP: \"+31655555555\",145,,,,0" "CLIP" ["+31655555555" "145" "" "" "" "0"]>>
|
|
<unsolicited <result "^DSCI: 2,1,4,0,+31655555555,145" "DSCI" ["2" "1" "4" "0" "+31655555555" "145"]>>
|
|
<unsolicited <result "+QIND: \"csq\",12,99" "QIND" ["csq" "12" "99"]>>
|
|
]>
|
|
Result = <result @text string @tag MaybeString @fields MaybeStrings> .
|
|
MaybeString = @present string / @absent #f .
|
|
MaybeStrings = @present [string ...] / @absent #f .
|