This project is an instant messaging APP. Its main functions include group chat, private chat, and circle of friends. It can send text, voice, video, pictures, emoticons, red envelopes, etc. Messages can be withdrawn, the group can be set up with administrators, can ban people, kick people, can set whether customer information can be viewed, can @ customers, etc. It supports scanning the QR code to join the group, and can set friend notes, group business cards, message tops, and messages. Do not disturb, etc., has agent function, VIP function, sign-in function, supports offline push of messages (ios does not need to be listed, Android needs to be listed on the app store)
The backend can set up customer service and website management. You can send messages to customers through the backend, you can clear group chat records, you can also withdraw customer messages, you can set specific parameters, you can recommend specific groups, etc.
This system uses asynchronous push and caching technology to send messages. Messages are pushed in seconds. Even if the server configuration is low, customers will not feel slow. After browsing the pictures, they can preview them in real time without waiting for uploading.
The historical chat records, pictures and front-end programs on the APP are cached locally, and the page is opened in seconds. It supports the synchronization of chat records in the cloud, and can also switch between disconnected status pages. The smoothness is comparable to the native one.
Technical route:
Backend development language: PHP (native architecture)
Front-end development language: uniapp
Socket push: GateWayWorker (supports distributed deployment, high concurrency, strong pressure resistance, does not use third-party paid push services)
Database: mysql
Development tools: hbuiderX, phpstorm
Currently, it supports android, ios, pc, and h5. It does not provide ios signature, software application, and listing services.
Server configuration:
Server operating system: Linux Centos 7
Software environment: php 5.6 +Apache2.4+MySQL5.6 (recommended to use Pagoda)
Front desk function details:
Login and registration: customer name and password login, registration, invitation registration, if you don’t remember the password (retrieve password through SMS verification)
Friends: can send text, voice (APP only), pictures, videos, emoticons, and red envelopes; pictures can be previewed and cache is supported; the built-in browser can automatically extract and open hyperlinks, and a single hyperlink can extract the title and introduction;
Group: Displays group chat information, group chat QR code, and administrator rights. Messages can be muted or withdrawn, globally muted or individually muted. It can be set to see whether customer information can be viewed. You can @group friends, Can you set a group business card, can you set whether you can send a hyperlink, can you modify your nickname, and can you send a group statement?
Message: You can pin the message to the top and set Do Not Disturb
Contacts: You can make notes and search contacts and groups by customer name and nickname.
Message Assistant: Registration is automatically added and cannot be deleted. Backend administrators can send messages through the assistant.
Customer service: Multiple customer services can be set up in the backend. After registration, they will be added randomly or uniformly. The customer service has a specific identification.
Third-party websites: Multiple third-party websites can be embedded. The name and link can be set on the backend, and the end on which they are displayed can be set.
Scan: You can scan third-party websites, you can scan the QR code to join a group, you can scan the QR code to add friends, and you can scan the QR code to log in.
Moments (mobile phone only): You can send text and pictures, and you can like and comment.
Personal settings: set information (avatar, nickname, location, gender, personalized signature, etc.), change passwords, set message prompts (ring or vibration), bind bank cards, etc.
Agent Center: Set invitation links, invite QR codes, manually add customers, manage and view my team members, etc.
VIP center: VIP is divided into personal VIP and team VIP. Personal VIP can only be used by yourself, while team VIP can open personal VIP for subordinates.
My Wallet: Displays balance, recharge, withdrawal, and bill history.
Offline push of messages on the APP side: Integrated unipush (personal push), ios does not need to go to the app store, but requires push signature, Android side offline push needs to go to the app store (apply for soft copy and domain name registration)
Backend function details:
System settings: system parameter settings, APP parameter settings, VIP parameter settings, recharge and withdrawal settings, third-party website settings, remittance account settings, etc.
Customer management: You can view, modify, and delete customer information, send private messages to customers through official accounts, set up specific customer service, and manage complaint information.
Group management: View group information, modify group information, dissolve groups, and clear chat records of designated groups
Chat records: Chat records are divided into personal chat records and group chat records. Customer chat records can be viewed and deleted.
Login log: displays each customer’s login time, IP, and location
Fund management: recharge management, withdrawal management, billing, etc.
Role management: Different roles can be set according to different functions
Administrator management: add new, delete, modify administrators
Operation log: View administrator operation log
Change password: Change the password of the current login account