You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.4 KiB

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 .