메신저봇r 강좌 #3 변수로 채팅수 만들기

Поделиться
HTML-код
  • Опубликовано: 8 фев 2025
  • 흐음

Комментарии • 64

  • @Lee_gwhang_jae
    @Lee_gwhang_jae 3 года назад +1

    Sans 이런거 까지하셨다니 정말 대단하시군요 전 아무겄도 못하는데

  • @봇-k4c
    @봇-k4c Год назад +3

    소스가 어케 되는지..아 혹시 채팅 순위도 가능할까요?

    • @wne130
      @wne130  Год назад +2

      오픈채팅방 오시면 공지에 채팅순위 있어요

    • @ddk5844
      @ddk5844 5 месяцев назад

      오픈채팅방 어떴게들어가요

  • @user-rt3vj5vb8y
    @user-rt3vj5vb8y 11 месяцев назад

    마지막 }이게 빨갛게 떠요

    • @user-rt3vj5vb8y
      @user-rt3vj5vb8y 11 месяцев назад

      var 채팅수 = {} ;
      function response(room, msg, sender, isGroupChat, replier, imageDB, packageName){}
      if(채팅수[sender]==undefined){
      채팅수[sender]=0;
      } else {
      채팅수[sender]++;
      }
      if(msg=="/채팅수"){
      replier.reply(sender+"님의 채팅수 : "+채팅수[sender]);
      }
      }

    • @wne130
      @wne130  11 месяцев назад +6

      @@user-rt3vj5vb8yvar 채팅수 = {} ;
      function response(room, msg, sender, isGroupChat, replier, imageDB, packageName){
      if(채팅수[sender]==undefined){
      채팅수[sender]=0;
      } else {
      채팅수[sender]++;
      }
      if(msg=="/채팅수"){
      replier.reply(sender+"님의 채팅수 : "+채팅수[sender]);
      }
      } 이거 써보세요

  • @wne130
    @wne130  3 года назад +1

    컴터 할수있기 전까지는 메신저봇 강좌ㄹ(?)

  • @morningbot8104
    @morningbot8104 Год назад +1

    /채팅수를 말고 다른 챗을 쳐도 채팅수 표시가 뜨는데 정상인거죠?

    • @wne130
      @wne130  Год назад +1

      아무 채팅이나 쳐도 채팅수를 보여준다는 말인가요?

    • @morningbot8104
      @morningbot8104 Год назад +1

      고쳐졌네요 감사합니다

  • @김라길
    @김라길 3 месяца назад

    var 채팅수 = {};
    function response(room, msg, sender, isGroupChat, replier, imageDB, packageName) {
    if (채팅수[sender]==1){
    채팅수[sender]=1;
    }else{
    채팅수[sender]++;
    }
    if(msg=="/채팅수"){
    replier.reply(sender+"님의 채팅수:"+채팅수[sender]);
    }
    }
    NAN 이라떠요

  • @대머리-n9m
    @대머리-n9m Год назад

    채팅순위식으로 뜨게하는거 저도 소스 받고 싶은데 지금 될라나 모르겠네요

  • @김태현-i1k
    @김태현-i1k 9 месяцев назад

    요즘 카톡봇 만들고 있었는데
    덕분에 좋은 기능을 추가 할수있겠네요 감사합니다
    채널순위 를 하고 싶어서
    아래 댓글에있는 코딩을 그대로 복붙해서 사용해봤는데
    채팅수는 표시가 잘되지만
    채팅순위 를 할때 채팅순위 라고 치는분만 나오더군요
    예시)
    a는 10번채팅
    b는 5번채팅
    했다고치면
    올바르게 나와야하는 값
    1위🥇 a 10
    2위🥈 b 5
    이렇게 나와야하는데
    a 채팅순위
    🥇| a 10
    b 채팅순위
    🥇| b 5
    이렇게 채팅 순위 친 사람 만 인식돼서
    이런문제는 어떻게 해결해야할까요?

    • @wne130
      @wne130  9 месяцев назад +4

      var fs = FileStream;
      const path = "sdcard/채팅수/저장파일.txt";
      fs.read(path) || fs.write(path, "{}");
      var json = JSON.parse(fs.read(path));
      const Lw='\u200b'.repeat(500);
      function responseFix(room, msg, sender, isGroupChat, replier, imageDB, packageName) {
      if(sender.includes('\u202E').valueOf()) sender.replace(/\\u202e/gi, '').split('').reverse().join('');
      if(!json[room]) json[room]={};
      if(!json[room][sender]) json[room][sender]=0;
      json[room][sender]++;
      if(msg=="채팅수"){
      replier.reply(sender+"님의 채팅수 : "+json[room][sender]);
      }
      if(msg=="채팅순위"){
      list=[];
      for(i in json[room]) list.push(i+' (채팅수 : '+json[room][i]+')');
      replier.reply('채팅순위'+Lw+'

      '+list.sort((a,b)=>b.split(' (채팅수 : ')[1].split(')')[0]-a.split(' (채팅수 : ')[1].split(')')[0]).map(e=> (list.indexOf(e)+1)+'위ㅣ'+e).join('

      ').replace("1위","🥇").replace("2위","🥈").replace("3위","🥉"));
      }
      fs.write(path, JSON.stringify(json));
      }
      function onNotificationPosted(sbn, sm) {
      var packageName = sbn.getPackageName();
      if (!packageName.startsWith("com.kakao.tal")) return;
      var actions = sbn.getNotification().actions;
      if (actions == null) return;
      var userId = sbn.getUser().hashCode();
      for (var n = 0; n < actions.length; n++) {
      var action = actions[n];
      if (action.getRemoteInputs() == null) continue;
      var bundle = sbn.getNotification().extras;
      var msg = bundle.get("android.text").toString();
      var sender = bundle.getString("android.title");
      var room = bundle.getString("android.subText");
      if (room == null) room = bundle.getString("android.summaryText");
      var isGroupChat = room != null;
      if (room == null) room = sender;
      var replier = new com.xfl.msgbot.script.api.legacy.SessionCacheReplier(packageName, action, room, false, "");
      var icon = bundle.getParcelableArray("android.messages")[0].get("sender_person").getIcon().getBitmap();
      var image = bundle.getBundle("android.wearable.EXTENSIONS");
      if (image != null) image = image.getParcelable("background");
      var imageDB = new com.xfl.msgbot.script.api.legacy.ImageDB(icon, image);
      com.xfl.msgbot.application.service.NotificationListener.Companion.setSession(packageName, room, action);
      if (this.hasOwnProperty("responseFix")) {
      responseFix(room, msg, sender, isGroupChat, replier, imageDB, packageName, userId != 0);
      }
      }
      }

    • @wne130
      @wne130  9 месяцев назад

      이거 쓰셔보세요

    • @김태현-i1k
      @김태현-i1k 9 месяцев назад

      빠른답변 감사합니다

    • @김태현-i1k
      @김태현-i1k 9 месяцев назад

      ​@@wne130해봤는데 여전히 예시처럼 나오네요😂

  • @레온-m1s
    @레온-m1s 3 года назад

    영상 올라 왔다

  • @있어보이는_닉네임
    @있어보이는_닉네임 Год назад

    다른채팅을 치면 채팅수가 안오르는데요...

  • @Crayon673
    @Crayon673 Год назад

    채팅수가 NaN으로 떠요

  • @haha19020
    @haha19020 2 года назад

    그 채팅수 할때 2개씩 나가는데 어떻해야하죠??

  • @Bsjsjnnsnxnxjnxjzjjz
    @Bsjsjnnsnxnxjnxjzjjz 4 месяца назад

    옾픈채팅방 링크좀요

  • @MONO-bi2ky
    @MONO-bi2ky Год назад +1

    Nan 이라고 떠요 ㅠ

    • @wne130
      @wne130  Год назад

      전체 코드좀 보내주세요

  • @byeongtyu324
    @byeongtyu324 11 месяцев назад

    채팅순위만 소스 알려줄 수 있나요?

    • @wne130
      @wne130  11 месяцев назад +2

      var fs = FileStream;
      const path = "sdcard/채팅수/저장파일.txt";
      fs.read(path) || fs.write(path, "{}");
      var json = JSON.parse(fs.read(path));
      const Lw='\u200b'.repeat(500);
      function responseFix(room, msg, sender, isGroupChat, replier, imageDB, packageName) {
      if(sender.includes('\u202E').valueOf()) sender.replace(/\\u202e/gi, '').split('').reverse().join('');
      if(!json[room]) json[room]={};
      if(!json[room][sender]) json[room][sender]=0;
      json[room][sender]++;
      if(msg=="채팅수"){
      replier.reply(sender+"님의 채팅수 : "+json[room][sender]);
      }
      if(msg=="채팅순위"){
      list=[];
      for(i in json[room]) list.push(i+' (채팅수 : '+json[room][i]+')');
      replier.reply('채팅순위'+Lw+'

      '+list.sort((a,b)=>b.split(' (채팅수 : ')[1].split(')')[0]-a.split(' (채팅수 : ')[1].split(')')[0]).map(e=> (list.indexOf(e)+1)+'위ㅣ'+e).join('

      ').replace("1위","🥇").replace("2위","🥈").replace("3위","🥉"));
      }
      fs.write(path, JSON.stringify(json));
      }
      function onNotificationPosted(sbn, sm) {
      var packageName = sbn.getPackageName();
      if (!packageName.startsWith("com.kakao.tal")) return;
      var actions = sbn.getNotification().actions;
      if (actions == null) return;
      var userId = sbn.getUser().hashCode();
      for (var n = 0; n < actions.length; n++) {
      var action = actions[n];
      if (action.getRemoteInputs() == null) continue;
      var bundle = sbn.getNotification().extras;
      var msg = bundle.get("android.text").toString();
      var sender = bundle.getString("android.title");
      var room = bundle.getString("android.subText");
      if (room == null) room = bundle.getString("android.summaryText");
      var isGroupChat = room != null;
      if (room == null) room = sender;
      var replier = new com.xfl.msgbot.script.api.legacy.SessionCacheReplier(packageName, action, room, false, "");
      var icon = bundle.getParcelableArray("android.messages")[0].get("sender_person").getIcon().getBitmap();
      var image = bundle.getBundle("android.wearable.EXTENSIONS");
      if (image != null) image = image.getParcelable("background");
      var imageDB = new com.xfl.msgbot.script.api.legacy.ImageDB(icon, image);
      com.xfl.msgbot.application.service.NotificationListener.Companion.setSession(packageName, room, action);
      if (this.hasOwnProperty("responseFix")) {
      responseFix(room, msg, sender, isGroupChat, replier, imageDB, packageName, userId != 0);
      }
      }
      }

    • @byeongtyu324
      @byeongtyu324 11 месяцев назад

      @@wne130 list.sort((a,b)=>b.split에 a가 안된다고 떠요 ㅜ

    • @wne130
      @wne130  11 месяцев назад

      @@byeongtyu324 무시하셔도 됩니다

    • @태완김-e9t
      @태완김-e9t 9 месяцев назад

      ​@@wne130소스 복사하고싶은데 안되는데 가능하려면 어떻게해야할까요 영상잘봤습니다

    • @user-ew8hn2on1v
      @user-ew8hn2on1v 6 месяцев назад

      ㄷㄷ​@@wne130

  • @Costa329
    @Costa329 3 года назад

    나 강신욱

  • @CmaSnowman
    @CmaSnowman 11 месяцев назад

    작동이 안돼요 어떻게해요?

    • @wne130
      @wne130  11 месяцев назад

      어디서 작동이 안 되나요

    • @CmaSnowman
      @CmaSnowman 10 месяцев назад

      @@wne130 재미난형제님이 특정 채팅방에서만 되게 하려면 뭐시기뭐시기 return; 하시라고 해서 채팅방 이름 복사해서 붙여넣어서 function response 뭐시기 바로 밑에 스크립트 적었는데 그 뒤로 작동이 안돼요

    • @wne130
      @wne130  10 месяцев назад

      전체 소스를 복사해주세요@@CmaSnowman

  • @개구리-f3p1b
    @개구리-f3p1b 3 года назад

    채팅순위 명령어를 어디에 넣어야 하나요?

    • @wne130
      @wne130  3 года назад

      다른 코드에 넣으실건가요??

    • @개구리-f3p1b
      @개구리-f3p1b 3 года назад

      @@wne130 아녀 영상에 나온 코드에 넣으려는데 어떻게하나요?

    • @wne130
      @wne130  3 года назад

      채팅순위 명령어 코드있으신가요?

    • @개구리-f3p1b
      @개구리-f3p1b 3 года назад

      @@wne130 아녀;

    • @wne130
      @wne130  3 года назад

      @@개구리-f3p1b 근데 어떻게 넣으실려고;; 그냥 코드 드릴까요?

  • @user-rm9lr6fl3q
    @user-rm9lr6fl3q Год назад

    안돼는데요 어떡하죠 ㅠ

    • @wne130
      @wne130  Год назад

      어떻게 적으셨나요

  • @dohyun-g3p
    @dohyun-g3p Год назад

    런타임 오류가 뭐죠

  • @Costa329
    @Costa329 3 года назад

    나야

  • @Costa329
    @Costa329 3 года назад

  • @구펭몬
    @구펭몬 3 года назад +1

    채팅 순위 어떻게 해야 할까요

    • @wne130
      @wne130  3 года назад

      갠톡 오세요 댓글보면은 제가 갠톡 링크 단 댓글있을 겁니다

  • @근절-m1u
    @근절-m1u 3 года назад

    채팅 순위 만드는법 공유가능한가요?

    • @wne130
      @wne130  3 года назад

    • @wne130
      @wne130  3 года назад

      var fs = FileStream;
      const path = "sdcard/채팅수/저장파일.txt";
      fs.read(path) || fs.write(path, "{}");
      var json = JSON.parse(fs.read(path));
      const Lw='\u200b'.repeat(500);
      function response(room, msg, sender, isGroupChat, replier, imageDB, packageName) {
      if(sender.includes('\u202E').valueOf()) sender.replace(/\\u202e/gi, '').split('').reverse().join('');
      if(!json[room]) json[room]={};
      if(!json[room][sender]) json[room][sender]=0;
      json[room][sender]++;
      if(msg=="채팅수"){
      replier.reply(sender+"님의 채팅수 : "+json[room][sender]);
      }
      if(msg=="채팅순위"){
      list=[];
      for(i in json[room]) list.push(i+' (채팅수 : '+json[room][i]+')');
      replier.reply('채팅순위'+Lw+'

      '+list.sort((a,b)=>b.split(' (채팅수 : ')[1].split(')')[0]-a.split(' (채팅수 : ')[1].split(')')[0]).map(e=> (list.indexOf(e)+1)+'위ㅣ'+e).join('

      ').replace("1위","🥇").replace("2위","🥈").replace("3위","🥉"));
      }
      fs.write(path, JSON.stringify(json));
      }

  • @WTPC
    @WTPC 3 года назад

    채팅순위를 만들고 싶은데 어떻게 하면 되나요?(전체보기 포함)

    • @wne130
      @wne130  3 года назад

      open.kakao.com/me/wne130 갠톡 오시면 제가 소스 드리도록하죠

    • @태완김-e9t
      @태완김-e9t 9 месяцев назад

      ​@@wne130일대일 오픈챗 안들어가지네요 ㅠ 여럿 여쭤보고싶은데

    • @태완김-e9t
      @태완김-e9t 9 месяцев назад

      ​@@wne130소스정보 없을까요ㅠ