mk6i/open-oscar-server

GitHub: mk6i/open-oscar-server

一个自托管的开源即时通讯服务器,兼容经典 AIM 和 ICQ 客户端,让用户能够自行搭建复刻版的 OSCAR 协议通讯服务。

Stars: 1427 | Forks: 104

# 打开 OSCAR Server
[![codecov](https://codecov.io/gh/mk6i/open-oscar-server/graph/badge.svg?token=MATKPP77JT)](https://codecov.io/gh/mk6i/open-oscar-server) [![Discord](https://img.shields.io/discord/1238648671348719626?logo=discord&logoColor=white)](https://discord.gg/2Xy4nF3Uh9)
**Open OSCAR Server** 是一个用 golang 编写的开源即时通讯服务器,兼容经典的 AIM 和 ICQ 客户端。

image
Above: Pidgin IM connected to Open OSCAR Server

| 免责声明 | |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 本项目是一个独立的开源项目,不隶属于、也不受 AOL 或 Yahoo! Inc. 的认可或关联。本项目完全是非商业性质的,不产生任何收入,也不接受捐赠。 | 支持以下功能: **AIM** - [x] Windows AIM 客户端:[v1.x-v5.x](./docs/CLIENT.md),[v6.x-v7.x](docs/AIM_6_7.md) - [x] 离开消息 - [x] 好友图标 (v4.x, v5.x) - [x] 好友列表 - [x] 聊天室 - [x] 公共和私人聊天大厅 - [x] 即时消息 - [x] 用户资料 - [x] 隐私设置(允许或屏蔽特定用户) - [x] 警告 - [x] 用户目录搜索 - [x] TOC1 协议客户端:Quick Buddy, gaim, [TiK](./docs/CLIENT_TIK.md) - [x] TOC2 协议客户端:[vAIM](https://www.onlyup.net/vaim/index.html), Miranda ~v0.4.0.3, iEM 1.0.1 - [x] 文件共享 - 仅限局域网:Direct Connect, Get File - 局域网/互联网:[Send File](./docs/RENDEZVOUS.md) **ICQ** - [x] Windows ICQ 客户端:[98x, 99x, 2000x, 2001x, 2002x, 2003x, 4, 5](./docs/CLIENT_ICQ.md) - [x] 即时消息 - [x] 资料 - [x] 用户搜索 - [x] 在线状态 - [x] 离线消息 ## 🏁 如何运行 使用以下便捷的服务器快速入门指南,快速启动并运行 Open OSCAR Server: * [Linux (x86_64)](./docs/LINUX.md) * [macOS (Intel 和 Apple Silicon)](./docs/MACOS.md) * [Windows 10/11 (x86_64)](./docs/WINDOWS.md) 还没有安装 AIM?请查看 [AIM 客户端设置指南](./docs/CLIENT.md)。 ...那 ICQ 呢?请查看 [ICQ 客户端设置指南](./docs/CLIENT_ICQ.md)。 ## 🛠️ 开发 本项目正在积极开发中。欢迎贡献代码! 按照[此指南](./docs/BUILD.md)了解如何编译和运行 Open OSCAR Server。 ## 👤 管理 API 管理 API 提供了用于管理服务器的功能(参见 [OpenAPI 规范](./api.yml))。以下内容向您展示如何通过命令行运行这些命令。 ### Windows PowerShell #### 列出用户 ``` Invoke-WebRequest -Uri http://localhost:8080/user -Method Get ``` #### 创建用户 ``` Invoke-WebRequest -Uri http://localhost:8080/user ` -Body '{"screen_name":"MyScreenName", "password":"thepassword"}' ` -Method Post ` -ContentType "application/json" ``` #### 删除用户 ``` Invoke-WebRequest -Uri http://localhost:8080/user ` -Body '{"screen_name": "user123"}' ` -Method Delete ` -ContentType "application/json" ``` #### 更改密码 ``` Invoke-WebRequest -Uri http://localhost:8080/user/password ` -Body '{"screen_name":"MyScreenName", "password":"thenewpassword"}' ` -Method Put ` -ContentType "application/json" ``` #### 列出活动会话 此请求列出所有已登录用户的会话。 ``` Invoke-WebRequest -Uri http://localhost:8080/session -Method Get ``` #### 创建公共聊天室 ``` Invoke-WebRequest -Uri http://localhost:8080/chat/room/public ` -Body '{"name":"Office Hijinks"}' ` -Method Post ` -ContentType "application/json" ``` #### 列出公共聊天室 ``` Invoke-WebRequest -Uri http://localhost:8080/chat/room/public -Method Get ``` ### macOS / Linux / FreeBSD #### 列出用户 ``` curl http://localhost:8080/user ``` #### 创建用户 ##### AIM ``` curl -d'{"screen_name":"MyScreenName", "password":"thepassword"}' http://localhost:8080/user ``` ##### ICQ ``` curl -d'{"screen_name":"100003", "password":"thepassw"}' http://localhost:8080/user ``` #### 删除用户 ``` curl -X DELETE -d '{"screen_name": "user123"}' http://localhost:8080/user ``` #### 更改密码 ``` curl -X PUT -d'{"screen_name":"MyScreenName", "password":"thenewpassword"}' http://localhost:8080/user/password ``` #### 列出活动会话 此请求列出所有已登录用户的会话。 ``` curl http://localhost:8080/session ``` #### 创建公共聊天室 ``` curl -d'{"name":"Office Hijinks"}' http://localhost:8080/chat/room/public ``` #### 列出公共聊天室 ``` curl http://localhost:8080/chat/room/public ``` ## 📄 许可证 Open OSCAR Server 采用 [MIT 许可证](./LICENSE)。
标签:AIM, EVTX分析, Golang, ICQ, OSC协议, 即时通讯, 安全编程, 幻觉检测, 日志审计, 服务器, 自托管