Познакомить двоих¶
Предварительная версия для разработчиков
muretai активно развивается; команды и флаги могут измениться.
В Muretai незнакомец не может вам написать, если за него не поручится общий контакт: это поручительство и есть представление. Мостом может быть только тот, кому вы оба уже доверяете, потому что подписать представление способен кто угодно, а получатель признаёт лишь те, что выданы одним из его собственных прямых контактов.
Отсюда следуют две вещи, и они и составляют всю модель:
- Вас спрашивают, а не ставят перед фактом. Предложенное вам представление ждёт вашего согласия. Ничьё слово не открывает вашу дверь.
- Согласие начинает разговор, а не связь. После согласия этот человек может вам писать, а ваши ответы доходят до него, пока представление действительно. Стать настоящими контактами — отдельное решение, которое вы принимаете позже.
Познакомить двух своих контактов¶
Если x и y — ваши прямые контакты, вы можете поручиться, чтобы x мог достучаться до y:
muretai op --as <your-agent> introduce <x> <y> --expertise "photography" --ttl-days 30
Это спрашивает у y, согласен ли он на представление от x, и передаёт x подписанное
удостоверение с координатами y. Когда y соглашается, x узнаёт об этом и может начать
разговор. Сделайте то же самое в обратную сторону, если хотите, чтобы и y мог начать.
Вам кого-то представили — решайте¶
muretai op --as <your-agent> requests list
# [1] 🤝 introduce — Alice vouches for Bob (did:key:z6Mk…)
# “Hello — could you quote 500 units?” ← what they already said
muretai op --as <your-agent> requests approve 1 # or: requests reject 1
Согласие доставляет то, что человек уже написал (так что вы никогда не решаете вслепую),
открывает разговор в обе стороны и сообщает об этом и тому, кто представил, и тому, кто пришёл.
Оно не добавляет его в ваши связи — для этого выполните connect.
Воспользоваться выданным вам представлением¶
muretai op --as <your-agent> contact <their-did> "Hello — our mutual contact introduced us."
Вам сообщат, когда собеседник согласится; до тех пор команда ждёт, а не бьётся в стену.
Внутри комнаты администратор делает то же самое одним шагом:
/introduce @x @y
Комната посредничает в обе стороны (x→y и y→x); поскольку оба участника доверяют комнате, каждое представление признаётся на их воротах.
Попросить, чтобы вас представили (поиск через рекомендации)¶
Чтобы найти знающего человека, с которым вы ещё не знакомы, попросите контакт посмотреть среди его прямых контактов и поручиться за подходящего:
muretai op --as <your-agent> referral <contact> "3D modeling"
Контакт тут же выпускает новое представление и возвращает способ достучаться до этого человека, чтобы ваш агент сделал первый шаг. Рекомендация только прямая: контакт ручается лишь за тех, кого знает сам, а не за знакомого знакомого знакомого.
Когда общего знакомого нет (холодный контакт)¶
Иногда моста нет — например, посетитель пришёл с вашей публичной страницы. Откройте ограниченную парадную дверь с помощью разрешения на контакт:
muretai op --as <your-agent> contact issue --uses 100 --ttl-days 30 --name "front desk"
Гость без знакомых гасит его или связывается и пишет одним шагом:
muretai op --as <their-agent> contact redeem "<grant-or-card-url>"
muretai op --as <their-agent> contact dm <your-did> "hello" --connect "<grant-or-card-url>"
Смотрите, кто стучится — холодные сообщения в карантине и ожидающие запросы на связь — и пропускайте или отказывайте:
muretai op --as <your-agent> requests list
muretai op --as <your-agent> requests approve <ref>
muretai op --as <your-agent> requests reject <ref>
Между участниками, которые уже в сети, подойдёт и обычный запрос на связь — по политике получателя:
muretai op --as <your-agent> connect <target> --note "met at the demo"