#인용 — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #인용, aggregated by home.social.
-
BotKit 0.2.0 릴리스
BotKit 0.2.0 버전이 릴리스되었습니다! BotKit을 처음 접하시는 분들을 위해 간단히 소개하자면, BotKit은 TypeScript로 개발된 독립형 #ActivityPub 봇 프레임워크입니다. Mastodon, Misskey 등 다양한 #연합우주(#fediverse) 플랫폼과 상호작용할 수 있으며, 기존 플랫폼의 제약에서 벗어나 자유롭게 봇을 만들 수 있습니다.
이번 릴리스는 연합우주 봇 개발을 더 쉽고 강력하게 만들기 위한 여정에서 중요한 발걸음입니다. 커뮤니티에서 요청해 왔던 여러 기능들을 새롭게 선보입니다.
더 나은 봇 상호작용을 위한 여정
BotKit을 개발하면서 우리는 항상 봇이 더 표현력 있고 상호작용이 풍부하도록 만드는 데 집중해 왔습니다. 0.2.0 버전에서는 연합우주의 사회적 측면을 봇에 접목시켜 한 단계 더 발전시켰습니다.
커스텀 에모지로 봇의 개성 표현하기
가장 많이 요청받았던 기능 중 하나가 #커스텀_에모지 지원입니다. 이제 봇은 독특한 시각적 요소로 메시지를 돋보이게 하며 자신만의 개성을 표현할 수 있습니다.
// 봇의 커스텀 에모지 정의하기 const emojis = bot.addCustomEmojis({ botkit: { file: `${import.meta.dirname}/images/botkit.png`, type: "image/png" }, fedify: { url: "https://fedify.dev/logo.png", type: "image/png" } }); // 메시지에 커스텀 에모지 사용하기 await session.publish( text`BotKit ${customEmoji(emojis.botkit)}은 Fedify ${customEmoji(emojis.fedify)}의 지원을 받습니다` );이 새로운 API를 통해 다음과 같은 기능을 사용할 수 있습니다.
Bot.addCustomEmojis()로 봇에 커스텀 에모지 추가하기customEmoji()함수로 메시지에 에모지 포함하기- Fedify의
Emoji객체를text태그 템플릿에서 사용하기
반응을 통한 소통
소통은 단순히 메시지를 게시하는 것만이 아닙니다. 다른 사람의 메시지에 반응하는 것도 중요합니다. 새로운 반응 시스템은 봇과 팔로워 사이에 자연스러운 상호작용 지점을 만들어 줍니다.
// 표준 유니코드 에모지로 메시지에 반응하기 await message.react(emoji`👍`); // 또는 정의한 커스텀 에모지로 반응하기 await message.react(emojis.botkit); // 반응을 인식하고 응답하는 봇 만들기 bot.onReact = async (session, reaction) => { await session.publish( text`${reaction.actor}님, 제 메시지에 ${reaction.emoji} 반응을 남겨주셔서 감사합니다!`, { visibility: "direct" } ); };이 기능을 통해 봇은 다음과 같은 작업을 수행할 수 있습니다.
Message.react()를 사용하여 유니코드 에모지로 메시지에 반응하기- 정의한 커스텀 에모지로 반응하기
Bot.onReact와Bot.onUnreact핸들러로 반응 이벤트 처리하기
인용을 통한 대화
토론에서는 종종 다른 사람이 말한 내용을 참조해야 할 때가 있습니다. 새로운 #인용 기능은 더 응집력 있는 대화 스레드를 만들어 줍니다.
// 봇의 게시물에서 다른 메시지 인용하기 await session.publish( text`이 흥미로운 관점에 대한 답변입니다...`, { quoteTarget: originalMessage } ); // 사용자가 봇의 메시지를 인용할 때 처리하기 bot.onQuote = async (session, quoteMessage) => { await session.publish( text`${quoteMessage.actor}님, 제 생각을 공유해 주셔서 감사합니다!`, { visibility: "direct" } ); };인용 기능을 통해 봇은 다음과 같은 작업을 수행할 수 있습니다.
quoteTarget옵션으로 메시지 인용하기Message.quoteTarget을 통해 인용된 메시지에 접근하기- 새로운
Bot.onQuote이벤트 핸들러로 인용 이벤트 처리하기
시각적 개선
소통은 시각적인 요소도 중요하기 때문에 봇의 표현 방식을 개선했습니다.
- 웹 인터페이스에서 이미지 첨부파일이 제대로 표시됩니다
- 봇의 콘텐츠가 더 보기 좋아지고 풍부한 경험을 제공합니다
내부 개선: 향상된 액티비티 전파
연합우주에서 액티비티가 전파되는 방식도 개선했습니다.
- 답글, 공유, 업데이트, 삭제의 더 정확한 전파
- 원본 메시지 작성자에게 액티비티가 제대로 전송됩니다
이러한 개선 사항은 다양한 연합우주 플랫폼에서 봇의 상호작용이 일관되고 안정적으로 이루어지도록 보장합니다.
BotKit 0.2.0으로 첫 걸음 떼기
이러한 새로운 기능을 경험해 보고 싶으신가요? BotKit 0.2.0은 JSR에서 받을 수 있으며 간단한 명령어로 설치할 수 있습니다.
deno add jsr:@fedify/[email protected]BotKit은 Temporal API(JavaScript에서 아직 시범적인 기능)를 사용하므로 deno.json에서 이를 활성화해야 합니다.
{ "imports": { "@fedify/botkit": "jsr:@fedify/[email protected]" }, "unstable": ["temporal"] }이 간단한 단계를 통해 최신 기능으로 연합우주 봇을 만들거나 업그레이드할 준비가 완료되었습니다.
앞으로의 전망
BotKit 0.2.0은 연합우주 봇 개발을 접근하기 쉽고, 강력하며, 즐겁게 만들기 위한 우리의 지속적인 노력을 보여줍니다. 이러한 새로운 기능들이 여러분의 봇이 연합우주 커뮤니티에서 더 매력적이고 상호작용이 풍부한 구성원이 되는 데 도움이 될 것이라고 믿습니다.
전체 문서와 더 많은 예제는 저희 문서 사이트에서 확인하실 수 있습니다.
피드백, 기능 요청, 코드 기여를 통해 이번 릴리스에 도움을 주신 모든 분들께 감사드립니다. BotKit 커뮤니티는 계속 성장하고 있으며, 여러분이 만들어낼 작품들을 기대합니다!
BotKit은 ActivityPub 서버 애플리케이션을 만들기 위한 하위 레벨 프레임워크인 Fedify의 지원을 받습니다.
-
어떤 말에 반응하고 어떤 말을 모르는 척해야 할지 귀신같이 아는 사람들로 가득한 타임라인 #인용 맞아 이거 땜에 지금처럼 흘러가는 형식의 슨스하는 거임...
-
> 대통령이나 총리가 중범죄를 저지를 때, 민주주의는 그 누구도 법 위에 군림하지 않는다는 사실을 보여줘야 한다. p.331
“어떻게 극단적 소수가 다수를 지배하는가”
-
> 대통령이나 총리가 중범죄를 저지를 때, 민주주의는 그 누구도 법 위에 군림하지 않는다는 사실을 보여줘야 한다. p.331
“어떻게 극단적 소수가 다수를 지배하는가”
-
> 대통령이나 총리가 중범죄를 저지를 때, 민주주의는 그 누구도 법 위에 군림하지 않는다는 사실을 보여줘야 한다. p.331
“어떻게 극단적 소수가 다수를 지배하는가”
-
> 두려움은 때로 사회를 독재로 되돌리려는 원동력으로 작용한다. 정치권력을 잃게 될지 모른다는 두려움, 더 중요하게는 기존의 지배적인 사회적 지위를 잃어버리게 될지 모른다는 두려움이 바로 그러한 힘으로 작용한다.
“어떻게 극단적 소수가 다수를 지배하는가” 52쪽
-
> 국민을 보호해야 하는 국가가 오히려 국민을 탄압하고 죽이는 행태는 한국에서도 찾아볼 수 있습니다. '제주 4·3 사건'이 그런 사례입니다. ... 과연 이 당시 한국 정부에 국가는 국민을 보호해야 한다는 개념이 있었는지를 따져 묻지 않을 수 없습니다. 국민을 지키는 일에 가장 앞장서야 할 군대와 경찰이 오히려 국민을 살해하는 도구가 되어버린 이유를 한 번쯤 생각해 봐야 합니다.
> 이처럼 일본군이 주도한 전쟁에서 특히 돌출되었던 제노사이드 문제가, 전쟁이 끝난 이후 일본의 영향을 받은 여러 동아시아 국가들에서 재현되었다는 점도 되짚어봐야 할 문제입니다. pp.619-20> 무장한 군인이 민간인을 해치는 것은, 마치 건장한 청년이 노약자를 폭행하는 것과 마찬가지로 일방적인 폭력 행위로서, 사후에라도 반드시 엄중하게 처벌해야만 합니다. 오늘 일본이 벌인 전쟁 과정에서 자행된 제노사이드의 사례를 통해서, 이러한 문제에 대해 한 번쯤 생각해 볼 기회가 되었으면 합니다. p.621
“일본사 시민강좌”
-
> 제대로 기능하는 민주주의에서는 시민들이 선거 결과, 법원의 판결, 언론 보도, 과학 분야의 연구 결과를 신뢰한다. 하지만 일단 사람들이 권력이 유일한 현실이라고 생각하게 되면, 이 모든 기관에 대한 신뢰가 무너지고, 민주주의는 붕괴하며, 강력한 지도자가 모든 권력을 장악할 수 있다. (208쪽)
> 선거관리위원회, 법원, 신문 등의 관료 조직이 유독 신뢰받지 못할 때 질서를 유지하는 유일한 방법은 신화에 더 많이 의존하는 것이다. (209쪽)
“넥서스”, 유발 하라리
-
>> 수많은 거대 기술회사가 성역 없는 토론과 '자유로운 발언'이라는 이름으로 이런 집단들을 무의식적으로 부추겨왔다. 이 잘못된 길잡이 때문에 지지자들은 '햇빛은 최고의 소독제다'라는 미국 대법원관 루이스 브랜다이스의 말을 인용하며 오픈 플랫폼이 혐오와 테라리즘의 부정을 만천하에 드러낼 것이라고 주장한다. 하지만 우리가 레딧과 트위터, 고대디, 클라우드플레어 등 다양한 플랫폼에서 얻은 교훈은 공개적인 노출이 이러한 신념을 지속적으로 일상화하고, 장려하고, 증폭시킨다는 것이다. (엘런 파오) (238쪽)
> 이렇기에 온라인 괴롭힘에 대한 소셜미디어의 안일한 대응은 그것을 양산하는 온라인 소굴을 더욱 급진화하고 통합하는 데 일조할 뿐이다. (242쪽)
-
> “현실감은 전혀 없지만, 그렇다면 우리는 행복한 거네.”
> “징병제도도 없고.”
> “언젠가 어떤 정치인이 우리나라에도 징병제도를 부활시켜야 한다고 발언한 적이 있지? 그때 우리 아버지가 혹시라도 그런 일이 벌어지면 무슨 수를 써서든 나는 해외로 도망치게 해준다고 했어.”
> ―내 아들에게 전쟁 따윈 시킬 수 없어.
> “좋은 얘기네.”
> “뭐, 조금 의미가 다르긴 했지만.”
> 덴코가 웃었다.
> “나도 전쟁을 해본 적이 없는데 너한테만 체험시킬 순 없다는 거였지.”“고구레 사진관” 하, p.232
-
> … 그러나 이삼 년 후에는 확실하게 가르쳐줘야 한다. 앞으로 너희가 맞닥뜨리며 살아가야 하는 사회에서는 '내가 원하는 모습이 될 수 없다', '원하는 것을 가질 수 없다'는 울분을 폭발적으로, 난폭하게 해소해서 범죄까지 저지르는 인간이 넘쳐날 거라고.
> 그 속에서 어떻게 살야가야 할지, 그 해답을 찾으려는 시도는 이제 겨우 실마리만 잡은 상황이라고.미야베 미유키, 《화차》
《눈의 아이》 〈편집자의 작은 즐거움〉 214쪽에서 인용