---
title: "Slīpsvītras komandas: pievieno /komandas mssgs kopienai"
description: "Dod savai mssgs kopienai savas slīpsvītras komandas: mssgs nosūta ziņu tavam tīmekļa servisam un publicē tā JSON atbildi kā kartīti. Iestatīšana un limiti."
canonical: https://docs.mss.gs/lv/commands
language: lv
---

# Pievieno slīpsvītras komandas

Dod savai kopienai pašai savas /komandas . Kad dalībnieks kādu ieraksta, mssgs nosūta ziņu tavam tīmekļa servisam un publicē tā atbildi: kartīti, pogas vai atbildi, ko redz tikai šis dalībnieks.

## Ko tu vari darīt

- **Atbildi ar kartīti** Atbildi ar JSON, un kanālā tas parādīsies kā kartīte.

- **Zini, kas jautāja** Tu saņem dalībnieku un viņa lomas, tāpēc vari pārbaudīt, kas ko drīkst darīt.

- **Atbildi privāti** Parādi atbildi tikai dalībniekam, kurš jautāja.

- **Nesteidzies** Atbildi ar ielādes indikatoru 5 sekunžu laikā un pabeidz darbu caur callback URL.

Lietotnē

Ieraksti /, un parādās kopienas komandas

#### Amsterdam

Tavs serviss atbild, mssgs publicē kartīti

Izvēlne un kartīte ir pašas lietotnes. Kājenē redzams, kurš izmantoja kuru komandu.

- [Ātrais sākums](#quick-start)

- [Iestatījumi](#settings)

- [Ko tu saņem](#request)

- [Ko tu atbildi](#reply)

- [Piecas sekundes](#timing)

- [Privātas atbildes](#private)

- [Pilns piemērs](#example)

- [Limiti](#limits)

## Ātrais sākums

- 1 Izveido trigeri Datora lietotnē atver savas kopienas **Manage Server → Triggers** un pievieno trigeri: komandu, uz kuru tas reaģē, piemēram, /weather , un tava tīmekļa servisa URL.

### Saņem ziņu

Kad dalībnieks nosūta ziņu, kas sākas ar /weather , mssgs nosūta to ar POST uz tavu URL:

```json
{
  "server_guid": "abc12345-...",
  "channel_guid": "def67890-...",
  "trigger_match": "/weather",
  "message": {
    "id": "d01ZZdef6-...",
    "content": "/weather Amsterdam",
    "member_guid": "member-guid",
    "user_guid": "user-guid",
    "group_guids": ["group-guid-1", "group-guid-2"],
    "cms": 1790000000000
  },
  "callback_url": "https://mss.gs/api/v1/trigger-callback/...",
  "stream_url": "https://mss.gs/api/v1/instant/...?token=..."
}
```

### Atbildi ar JSON

Atbildi 5 sekunžu laikā ar 2xx statusu un JSON. Kanālā tas kļūst par kartīti.

```json
{
  "message_container": {
    "color": "blue",
    "title": "Amsterdam",
    "description": "14 °C, light rain until 16:00",
    "fields": [
      { "field": "Wind", "value": "SW 18 km/h" },
      { "field": "Humidity", "value": "82%" }
    ]
  }
}
```

#### Amsterdam

## Iestatījumi

Katram trigerim ir šie iestatījumi sadaļā **Manage Server → Triggers**.

| Iestatījums | Ko tas dara |
| --- | --- |
| Trigger Name | Trigera nosaukums, kas redzams blakus komandai izvēlnē. |
| Word to Match | Teksts, ar ko jāsākas ziņai, piemēram, /weather . Slīpsvītra ir ierasta, bet nav obligāta. |
| URL Endpoint | Kur mssgs sūta ziņu. |
| Webhook Secret | Pēc izvēles. mssgs ar to paraksta katru pieprasījumu, skati zemāk. |
| Active | Izslēdz trigeri, to nedzēšot. |
| Post Matching Message | Vai dalībnieka paša ziņa /weather Amsterdam paliek kanālā virs tavas atbildes. |
| Show Loading Reply | Rāda ielādes kartīti, kamēr tavs serviss strādā. |
| Allowed User Groups | Trigeri iedarbina tikai šo lomu dalībnieki. Visiem pārējiem tā ir parasta ziņa. |

## Ko tu saņem

POST pieprasījumu ar JSON body. Galvenēs ir User-Agent: mssgs-webhook/1.0 .

| Lauks | Tips | Kas tas ir |
| --- | --- | --- |
| server_guid | string | Kopiena. |
| channel_guid | string | Kanāls, kurā ziņa nosūtīta. |
| trigger_match | string | Komanda, kas atbilda, piemēram, /weather . |
| message.content | string | Visa ziņa, ieskaitot komandu. |
| message.member_guid | string | Dalībnieks, kurš to nosūtīja, šajā kopienā. |
| message.user_guid | string | Tā paša cilvēka konts, vienāds visās kopienās. |
| message.group_guids | array | Dalībnieka lomas. |
| message.cms | number | Nosūtīšanas laiks milisekundēs. |
| message.is_action_button | boolean | true , ja trigeri iedarbināja poga, nevis ierakstīta komanda. |
| message.action_payload | object | Pogas payload , ja nospiesta poga. |
| callback_url | string | Atjaunini vai dzēs savu atbildi vēlāk, 30 minūšu laikā. |
| stream_url | string | Reāllaika plūsma ar atbildēm, reakcijām un pogu nospiešanām uz tavu atbildi, 10 minūtes. |

### Pārbaudi, kas ko drīkst

Salīdzini message.group_guids ar lomām, kurām uzticies, piemēram, lai /ban varētu palaist tikai moderatori. Lai komanda pārējiem vispār nebūtu pieejama, iestati tās lomas trigera iestatījumos.

## Ko tu atbildi

Jebkurš 2xx statuss ar JSON body, līdz 4 MB. Nosūti vismaz vienu no laukiem message_container vai actions .

| Lauks | Tips | Kas tas ir |
| --- | --- | --- |
| message_container | object | Kartīte. Šeit darbojas katrs ziņu kartīšu lauks, arī statusa birka, nozīmīte, diff statistika un sakļautā spriešana. |
| title , description , color , ... | string | Saīsinājums: kartītes lauki augšējā līmenī tiek automātiski ietīti kartītē. |
| actions | array | Pogas zem kartītes. Skati pogas. |
| visible_to_member_guids | array | Atbildi redz tikai šie dalībnieki. Skati privātas atbildes. |

## Piecas sekundes

mssgs gaida tavu atbildi 5 sekundes. Ja vajag ilgāk, atbildi uzreiz ar ielādes kartīti un pabeidz caur callback_url , kas ir derīgs 30 minūtes.

```javascript
// Answer within 5 seconds with a loader...
res.json({ message_container: { loader: true, loader_text: 'Looking it up…' } });

// ...then finish in your own time with the callback URL.
await fetch(req.body.callback_url, {
  method: 'PUT',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ message_container: { color: 'blue', title: 'Done', description: result } })
});
```

## Privātas atbildes

Ieliec dalībnieku id laukā visible_to_member_guids , un tavu atbildi redzēs tikai viņi. Izmanto member_guid no pieprasījuma, lai atbildētu tikai tam, kurš jautāja.

```json
{
  "message_container": {
    "color": "green",
    "title": "You're on the list",
    "description": "Only you can see this reply."
  },
  "visible_to_member_guids": ["<message.member_guid from the request>"]
}
```

## Pilns piemērs

Komanda /weather Node.js ar Express, kas atbild ar kartīti.

```javascript
import express from 'express';

const app = express();
app.use(express.json());

app.post('/mssgs/weather', async (req, res) => {
  const city = req.body.message.content.replace('/weather', '').trim() || 'Amsterdam';
  const w = await getWeather(city); // your own lookup

  res.json({
    message_container: {
      color: 'blue',
      title: city,
      description: `${w.temp} °C, ${w.summary}`,
      fields: [
        { field: 'Wind', value: w.wind },
        { field: 'Humidity', value: `${w.humidity}%` }
      ]
    }
  });
});

app.listen(3000);
```

## Limiti

| Limits | Vērtība |
| --- | --- |
| Laiks atbildei | 5 sekundes |
| Atbildes izmērs | 4 MB |
| Komandas vienam dalībniekam | 5 ik pēc 5 sekundēm |
| Atbildes atjaunināšana vēlāk | 30 minūtes, caur callback_url |
| Atbildes reāllaika plūsma | 10 minūtes, caur stream_url |

## Veido tālāk
