Skip to content

REST API

4IR.UK edited this page Jul 2, 2023 · 36 revisions

Version 1.0.14 introduced a SMEMA Board Flip: Read More

Lane Directory

  • GET /api/multiplug.ext.smema/1/lanes/

Interlocks

  • GET POST /api/multiplug.ext.smema/1/lane/interlock/ready/
  • POST /api/multiplug.ext.smema/1/lane/interlock/ready/latch/
  • GET POST /api/multiplug.ext.smema/1/lane/interlock/good/
  • POST /api/multiplug.ext.smema/1/lane/interlock/good/latch/
  • POST /api/multiplug.ext.smema/1/lane/interlock/good/divert/
  • POST /api/multiplug.ext.smema/1/lane/interlock/good/divert/latch
  • POST /api/multiplug.ext.smema/1/lane/interlock/good/flip/
  • POST /api/multiplug.ext.smema/1/lane/interlock/good/divert/flip/
  • GET POST /api/multiplug.ext.smema/1/lane/interlock/bad/
  • POST /api/multiplug.ext.smema/1/lane/interlock/bad/latch/
  • POST /api/multiplug.ext.smema/1/lane/interlock/bad/divert/
  • POST /api/multiplug.ext.smema/1/lane/interlock/bad/divert/latch
  • POST /api/multiplug.ext.smema/1/lane/interlock/bad/flip/
  • POST /api/multiplug.ext.smema/1/lane/interlock/bad/divert/flip/
  • GET POST /api/multiplug.ext.smema/1/lane/interlock/flip/
  • POST /api/multiplug.ext.smema/1/lane/interlock/flip/latch/

SMEMA I/O

  • GET /api/multiplug.ext.smema/1/lane/smema/

Power

Lane Directory

URL

GET /api/multiplug.ext.smema/1/lanes/

JSON Response Example

[
  {
    "index": 0,
    "guid": "fc06dc98-911f-4715-91fc-e9941a54172a",
    "lane": "1",
    "machine": "Machine 1"
  }
]

Interlock

URL

GET /api/multiplug.ext.smema/1/lane/interlock/?index=0

JSON Response Example

{
    "open": {
        "ready": false,
        "good": false,
        "bad": false,
        "flip": false
    },
    "latched": {
        "ready": false,
        "good": false,
        "bad": false,
        "flip": false
    },
    "diverted": {
        "good": false,
        "bad": false
    },
    "divertedLatched": {
        "good": false,
        "bad": false
    },
    "blocked": {
        "ready": false,
        "good": false,
        "bad": false,
        "flip": false
    }
}

Interlock - Machine Ready

URL

GET /api/multiplug.ext.smema/1/lane/interlock/ready/?index=0

JSON Response Example

{
  "ready": false,
  "latched": false
}

URL

POST /api/multiplug.ext.smema/1/lane/interlock/ready/?index=0&enable=true

JSON Response Example

{
  "ready": true,
  "latched": false
}

Interlock - Machine Ready - Latch

URL

POST /api/multiplug.ext.smema/1/lane/interlock/ready/latch/?index=0&enable=true

JSON Response Example

{
  "ready": true,
  "latched": true
}

Interlock - Good Board

URL

GET /api/multiplug.ext.smema/1/lane/interlock/good/?index=0

JSON Response Example

{
    "good": false,
    "latched": false,
    "diverted": false,
    "divertedLatched": false,
    "flip": false,
    "flipLatched": false
}

URL

POST /api/multiplug.ext.smema/1/lane/interlock/good/?index=0&enable=true

JSON Response Example

{
    "good": true,
    "latched": false,
    "diverted": false,
    "divertedLatched": false,
    "flip": false,
    "flipLatched": false
}

Interlock - Good Board - Latch

URL

POST /api/multiplug.ext.smema/1/lane/interlock/good/latch/?index=0&enable=true

JSON Response Example

{
  "good": true,
  "latched": true,
  "diverted": false,
  "divertedLatched": false
}

Interlock - Good Board - Divert

URL

POST /api/multiplug.ext.smema/1/lane/interlock/good/divert/?index=0&enable=true

JSON Response Example

{
  "good": true,
  "latched": true,
  "diverted": true,
  "divertedLatched": false
}

Interlock - Good Board - Divert - Latch

URL

POST /api/multiplug.ext.smema/1/lane/interlock/good/divert/latch?index=0&enable=true

JSON Response Example

{
  "good": true,
  "latched": true,
  "diverted": true,
  "divertedLatched": true
}

Interlock - Good Board - Flip

URL

POST /api/multiplug.ext.smema/1/lane/interlock/good/flip/?index=0&enable=true

JSON Response Example

{
    "good": true,
    "latched": false,
    "diverted": false,
    "divertedLatched": false,
    "flip": true,
    "flipLatched": false
}

Interlock - Good Board - Divert - Flip

URL

POST /api/multiplug.ext.smema/1/lane/interlock/good/divert/flip/?index=0&enable=true

JSON Response Example

{
    "good": true,
    "latched": false,
    "diverted": true,
    "divertedLatched": false,
    "flip": true,
    "flipLatched": false
}

Interlock - Bad Board

URL

GET /api/multiplug.ext.smema/1/lane/interlock/bad/?index=0

JSON Response Example

{
    "bad": false,
    "latched": false,
    "diverted": false,
    "divertedLatched": false,
    "flip": false,
    "flipLatched": false
}

URL

POST /api/multiplug.ext.smema/1/lane/interlock/bad/?index=0&enable=true

JSON Response Example

{
    "bad": true,
    "latched": false,
    "diverted": false,
    "divertedLatched": false,
    "flip": true,
    "flipLatched": false
}

Interlock - Bad Board - Latch

URL

POST /api/multiplug.ext.smema/1/lane/interlock/bad/latch/?index=0&enable=true

JSON Response Example

{
    "bad": false,
    "latched": true,
    "diverted": false,
    "divertedLatched": false,
    "flip": false,
    "flipLatched": false
}

Interlock - Bad Board - Divert

URL

POST /api/multiplug.ext.smema/1/lane/interlock/bad/divert/?index=0&enable=true

JSON Response Example

{
    "bad": false,
    "latched": false,
    "diverted": true,
    "divertedLatched": false,
    "flip": false,
    "flipLatched": false
}

Interlock - Bad Board - Divert - Latch

URL

POST /api/multiplug.ext.smema/1/lane/interlock/bad/divert/latch/?index=0&enable=true

JSON Response Example

{
    "bad": false,
    "latched": false,
    "diverted": true,
    "divertedLatched": false,
    "flip": false,
    "flipLatched": false
}

Interlock - Bad Board - Flip

URL

POST /api/multiplug.ext.smema/1/lane/interlock/bad/flip/?index=0&enable=true

JSON Response Example

{
    "bad": true,
    "latched": false,
    "diverted": false,
    "divertedLatched": false,
    "flip": true,
    "flipLatched": false
}

Interlock - Bad Board - Divert - Flip

URL

POST /api/multiplug.ext.smema/1/lane/interlock/bad/divert/flip/?index=0&enable=true

JSON Response Example

{
    "bad": false,
    "latched": false,
    "diverted": true,
    "divertedLatched": false,
    "flip": true,
    "flipLatched": false
}

Interlock - Flip Board

GET /api/multiplug.ext.smema/1/lane/interlock/flip/?index=0

JSON Response Example

{
    "flip": false,
    "flipLatched": false
}

URL

POST /api/multiplug.ext.smema/1/lane/interlock/flip/?index=0&enable=true

JSON Response Example

{
    "flip": true,
    "flipLatched": false
}

Interlock - Flip Board - Latch

URL

POST /api/multiplug.ext.smema/1/lane/interlock/flip/latch/?index=0&enable=true

JSON Response Example

{
    "flip": false,
    "flipLatched": true
}

SMEMA I/O

URL

GET /api/multiplug.ext.smema/1/lane/smema/?index=0

JSON Response Example

{
    "upline": {
        "ready": false,
        "good": false,
        "bad": false,
        "flip": true
    },
    "downline": {
        "ready": false,
        "good": false,
        "bad": false,
        "flip": false
    },
    "blocked": {
        "ready": false,
        "good": false,
        "bad": false,
        "flip": true
    }
}

System Power - Restart

URL

POST /api/multiplug.ext.smema/power/restart/

JSON Response Example

{}

System Power - Shutdown

URL

POST /api/multiplug.ext.smema/power/shutdown/

JSON Response Example

{}