.NetCore implementiert ein Kundenservice-WebIM-System basierend auf SignalR und Reids

Vorwort

Zuvor habe ich etwas über den Architekturentwurf von SignalR+Redis zur Implementierung von WebIM sowie über die teilweise Implementierung des Codes und die endgültigen Renderings geschrieben. Da ich in letzter Zeit nicht sehr beschäftigt war, wollte ich dieses Projekt nur verbessern. Das Folgende ist eine grobe Zusammenfassung.
Teil 1 Architektonischer Entwurf und Umsetzung des WebIM-Projekts

Teil 2 .Net Core +signlar + redis Webim-Code-Implementierung (1) 

Teil 3 .Net Core +signlar + redis Webim-Code-Implementierung (2)

Teil 4 .Net Core +signlar + redis Webim-Code-Implementierung (3) 


完善过程中的思考:既然是一个WebIM客服系统,说明当前系统与自己的业务系统关联性不强。基于这个前提,最终把WebIM完善成了一个易接入高度开放不依赖于业务系统支持接入多个业务系统的售后服务系统

1. Nutzungsschritte

  1. Referenz js-Bibliothek:signlar.51softwarebox.com/script/signalr/ChatMain1.0.js
  2. Kundendienst für die Initialisierung der Unternehmensseite
     InitChatUser({
            UserID: '当前业务系统登录用户ID',
            UserName: '当前业务系统登录用户姓名',
            UserNickName: '当前业务系统登录用户昵称',
            UserAccount: '当前业务系统登录用户账号',
            SystemCode: '当前业务系统编码'
        }, function (res) {
            new InitChat({ 
                Text: '按钮标题',
                TextColor: '标题颜色',
                BackGroundColor: '按钮背景色',
                BottomRange: '按钮距离网页底部距离',
                RightRange: '按钮距离网页右边距离',
                BorderRadius: '按钮边角大小',
                IsOpenNewTarget: false, // 点击按钮是否全屏打开客服系统,默认当前页面弹出(非全屏)
                IsShowIcon: true, //是否显示图标
                IsOpenChatState: false //是否已打开客服系统,点开一次,刷新当前页面,是否自动打开,当IsOpenNewTarget=false时生效
            });
        });
  3. Zu diesem Zeitpunkt ist das Schaltflächensymbol des Kundendienstsystems in der kleinen rechten Ecke der Seite erschienen. Klicken Sie, um zu kommunizieren.

2. Hochoffene Schnittstellen-API

  1. Referenz-JS-Datei
  2. Für Geschäftssystemseiten verfügbare API-Schnittstellen
    1. GetChatRecordPageFun(res): Akzeptieren Sie den Inhalt der gesendeten Nachricht [einschließlich der anderen Partei/sich selbst] – kann zum Anpassen des UI-Stils verwendet werden
    2. var chatService = new InitChatService({}), nach der Instanziierung können Sie die Methodenbenutzeroberfläche und die Funktionsanpassung verwenden 
      1. chatService.SendMsg(msg, callFn): Nachricht senden
      2. chatService.GetChatRecordPage(currentPage, pageSize, callFn): Historische Nachrichten in Seiten abrufen
      3. chatService.SaveUserThumbsUpInfo (evaluateInfo, callFn, errFn): Benutzerkommentare speichern
      4. chatService.SaveGuestBookInfo(guestBookInfo, callFn, errFn): Benutzerkommentare speichern
    3. Globale Toolklasse: ChatUtil
      1. ChatUtil.isFunction(fn): Bestimmen Sie, ob der aktuelle Parametertyp eine Methode ist
      2. ChatUtil.Encryption.encode(str):Verschlüsselung
      3. ChatUtil.Encryption.decode(str):decryption
      4. ChatUtil.GetUserInfo(): Aktuelle Benutzerinformationen abrufen
      5. ChatUtil.GetGuid(): Guid generieren
      6. ChatUtil.SetCookie(name, value, Day): Cookies setzen (der erste Cookie-Name, der zweite Cookie-Wert und die dritte Speicherzeit)
      7. ChatUtil.GetCookie(name): Cookie nach Namen abrufen
      8. ChatUtil.ObjToStr(obj): Objekt zu String [name1=val1&name2=val2]
  3. Weitere APIs werden entwickelt und geöffnet...

Zusammenfassen

WebIM wird derzeit schrittweise verbessert. Wenn Sie Wünsche oder Vorschläge haben, hinterlassen Sie bitte eine Nachricht~~~

おすすめ

転載: blog.csdn.net/qq_18316109/article/details/126646006