2013-03-21 14:29:25 +04:00
|
|
|
|
#Спецификация протокола SSP
|
2013-03-21 14:27:53 +04:00
|
|
|
|
|
2013-03-25 14:06:05 +04:00
|
|
|
|
*Версия 1.2.2*
|
2013-03-21 14:29:25 +04:00
|
|
|
|
|
|
|
|
|
##Определения
|
|
|
|
|
|
|
|
|
|
*SSP (SimpleSmokeProtocol)* - простой протокол установления соглашения для
|
|
|
|
|
совместного похода до мест разрешенных для курения.
|
|
|
|
|
|
|
|
|
|
*Вызывающая сторона* - субъект инициирующий запрос
|
|
|
|
|
|
|
|
|
|
*Вызываемая сторона* - субъект принимающий запрос
|
|
|
|
|
|
|
|
|
|
##Описание команд протокола
|
|
|
|
|
|
|
|
|
|
? - запрос, инициирующий протокол. Соответствует фразе «Пойдем курить?»
|
|
|
|
|
|
|
|
|
|
! - ответ на запрос инициирующий запрос, подразумевающий ответное желание идти
|
|
|
|
|
курить. Соответствует фразе «Да, пошли»
|
|
|
|
|
|
|
|
|
|
\# - ответ на запрос инициирующий запрос, подразумевающий отказ от похода курить.
|
|
|
|
|
Соответствует фразе «Нет, не хочу»
|
|
|
|
|
|
2013-03-25 12:40:55 +04:00
|
|
|
|
\#*число* - ответ на запрос инициирующий запрос, подразумевающий отказ от похода курить.
|
2013-03-25 12:43:07 +04:00
|
|
|
|
Соответствует фразе «Нет, не хочу, пять минут назад курил».
|
2013-03-25 12:45:40 +04:00
|
|
|
|
В случае, если точное время определить не представляется возможным, следует использовать
|
|
|
|
|
знак ~ («тильда»), подразумевающий неопределённое, но небольшое (до 45 минут) время.
|
|
|
|
|
В случае бо́льшего времени, возможно, следует использовать простой негативный
|
|
|
|
|
ответ - # либо отвечать позитивным ответом - !.
|
2013-03-25 12:40:55 +04:00
|
|
|
|
|
2013-03-21 14:29:25 +04:00
|
|
|
|
@*число* - ответ на запрос инициирующий запрос, подразумевающий ответное желание
|
2013-03-25 14:03:39 +04:00
|
|
|
|
идти курить но с отсрочкой на \*число\* минут. В случае, если точное время определить
|
2013-03-25 12:45:40 +04:00
|
|
|
|
не представляется возможным, следует использовать знак ~ («тильда»), подразумевающий
|
|
|
|
|
неопределённое, но небольшое (до 15 минут) время. В случае бо́льшего
|
2013-03-21 14:29:25 +04:00
|
|
|
|
времени, следует использовать негативный ответ - #. Соответствует фразе «Пошли,
|
2013-03-25 14:03:39 +04:00
|
|
|
|
но через \*число\* минут.»
|
2013-03-21 14:29:25 +04:00
|
|
|
|
|
2013-03-25 14:06:05 +04:00
|
|
|
|
\> - синхронизирующая команда, обозначающая начало исполнения протокола вызывающей стороной. Соответствует фразе «Выхожу!»
|
2013-03-21 14:29:25 +04:00
|
|
|
|
|
2013-03-25 14:06:05 +04:00
|
|
|
|
\>\> - синхронизирующая команда, обозначающая начало исполнения протокола вызываемой стороной. Соответствует фразе «Я тоже выхожу.»
|
2013-03-21 14:29:25 +04:00
|
|
|
|
|
|
|
|
|
##Пример использования протокола
|
|
|
|
|
|
|
|
|
|
X - вызывающий
|
|
|
|
|
Y - вызываемый
|
|
|
|
|
|
|
|
|
|
###Пример 1
|
|
|
|
|
|
|
|
|
|
X: ? («Пойдем курить?»)
|
|
|
|
|
Y: ! («Да, пошли»)
|
|
|
|
|
X: > («Выхожу!»)
|
|
|
|
|
Y: >> («Я тоже выхожу.»)
|
|
|
|
|
|
|
|
|
|
###Пример 2
|
|
|
|
|
|
|
|
|
|
X: ? («Пойдем курить?»)
|
|
|
|
|
Y: @5 («Пошли, но через 5 минут.»)
|
|
|
|
|
Y: ! («Да, пошли»)
|
|
|
|
|
X: > («Выхожу!»)
|
|
|
|
|
Y: >> («Я тоже выхожу.»)
|
|
|
|
|
|
|
|
|
|
###Пример 3
|
|
|
|
|
|
|
|
|
|
X: ? («Пойдем курить?»)
|
|
|
|
|
Y: # («Нет, не хочу»)
|
2013-03-25 12:40:55 +04:00
|
|
|
|
|
|
|
|
|
###Пример 4
|
|
|
|
|
|
|
|
|
|
X: ? («Пойдем курить?»)
|
|
|
|
|
Y: #20 («Нет, не хочу, 20 минут назад курил»)
|
|
|
|
|
|
|
|
|
|
###Пример 5
|
|
|
|
|
|
|
|
|
|
X: ? («Пойдем курить?»)
|
|
|
|
|
Y: #~ («Нет, не хочу, только что курил»)
|
|
|
|
|
|
2013-03-25 14:03:39 +04:00
|
|
|
|
|