All Projects → sbwtw → Pidgin Wechat

sbwtw / Pidgin Wechat

Licence: wtfpl
pidgin plugin for web wechat protocol

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Pidgin Wechat

Wechat
java微信客户端
Stars: ✭ 109 (-8.4%)
Mutual labels:  wechat
Yii2 Plugins System
Yii2 plugins system module with event manager and https://github.com/loveorigami/yii2-shortcodes-pack
Stars: ✭ 112 (-5.88%)
Mutual labels:  plugins
Thinkservice
【新】多商户服务平台
Stars: ✭ 116 (-2.52%)
Mutual labels:  wechat
Alarmrobot
微信机器人 提醒机器人 python机器人 微信pc机器人
Stars: ✭ 110 (-7.56%)
Mutual labels:  wechat
Wechat desktop
Java实现仿微信电脑版UI
Stars: ✭ 112 (-5.88%)
Mutual labels:  wechat
Csdwheels
一套基于原生JavaScript开发的插件,无依赖、体积小
Stars: ✭ 114 (-4.2%)
Mutual labels:  plugins
Sy flutter wechat
Flutter 微信支付插件
Stars: ✭ 108 (-9.24%)
Mutual labels:  wechat
Paperweekly forum
paperweekly's forum
Stars: ✭ 118 (-0.84%)
Mutual labels:  wechat
Elastalert Wechat Plugin
elastalert微信企业号报警插件
Stars: ✭ 112 (-5.88%)
Mutual labels:  wechat
Calendar
微信小程序日历 酒店日历选择 带公历节日
Stars: ✭ 116 (-2.52%)
Mutual labels:  wechat
Shopapp
移动商城微信小程序
Stars: ✭ 110 (-7.56%)
Mutual labels:  wechat
Md
✍ 一款高度简洁的微信 Markdown 编辑器:支持 Markdown 所有基础语法、色盘取色、一键复制并粘贴到公众号后台、多图上传、一键下载文档、自定义 CSS 样式、一键重置等特性
Stars: ✭ 2,242 (+1784.03%)
Mutual labels:  wechat
Wechatrobot
个人微信号自动回复、陪聊、查天气、查垃圾分类。新增查看今日新闻和知乎热榜功能。
Stars: ✭ 115 (-3.36%)
Mutual labels:  wechat
Wechat Toolbox
WeChat toolbox(微信工具箱)
Stars: ✭ 109 (-8.4%)
Mutual labels:  wechat
Examples Of Web Crawlers
一些非常有趣的python爬虫例子,对新手比较友好,主要爬取淘宝、天猫、微信、豆瓣、QQ等网站。(Some interesting examples of python crawlers that are friendly to beginners. )
Stars: ✭ 10,724 (+8911.76%)
Mutual labels:  wechat
Rageframe2
一个基于Yii2高级框架的快速开发应用引擎
Stars: ✭ 1,553 (+1205.04%)
Mutual labels:  wechat
Miniprogram Project
微信小程序,诗词大全,成语大全,百家姓,成语接龙(垃圾分类查询小程序)
Stars: ✭ 114 (-4.2%)
Mutual labels:  wechat
Laravel Template
RESTful 模板,企业号/企业微信微信扫码登录/同步通讯录——Laravel vue2 iView
Stars: ✭ 119 (+0%)
Mutual labels:  wechat
Git Webhook Ci
A Git (github/gitee) webhook callback server to do stuff e.g. fetch new code (poor man CI)
Stars: ✭ 118 (-0.84%)
Mutual labels:  wechat
Wechatpay Postman Script
微信支付API v3的调试工具
Stars: ✭ 112 (-5.88%)
Mutual labels:  wechat

About Pidgin-wechat

pidgin-wechat is a protocol plugin for pidgin/libpurple. It's based on Web Wechat and supports basic message receiving and picture receiving.

Screenshot

pidgin-wechat screenshot pidgin-wechat screenshot

Build

You can use cargo to build it.

cargo build --release

Build dependencies

  • clang
  • libpurple (development package)

Build dependencies are maybe not fully listed. I have just tested on Archlinux with nightly rust complier.

You can download the compiled binary file in the Releases page.

Install

If you build using cargo, the binary file is placed at the target/release or target/debug directory.

To install this plugin, just need to copy the binary to your plugins direcotry and restart pidgin.

mkdir -p ~/.purple/plugins
cp -f libwechat.so ~/.purple/plugins/

Roadmap

Now this project is still in technical validation. I need to test some wechat features and think about how to implement them in pidgin.

Progress

  • [x] login
  • [x] send/receive text message
  • [x] send/receive text message in group chat
  • [x] receive image message
  • [x] receive custom sticker
  • [ ] upload file & image
  • [ ] buddy icon
  • [ ] wechat official accounts
  • [ ] rich text message
  • [ ] voice message
  • [ ] built in sticker
  • [ ] system message notify

Hack

Most common problems:

  • login failed, you can see 1101 error code at your terminal, need to relogin.

The log of pidgin-wechat is printed to the standard output. Start pidgin in your terminal, and then you can see it.

If it has crashed, you can use coredumpctl -1 info pidgin to check core dump info. It's very useful for finding out problems. (Make sure you install the coredump package)

File list

.
├── Cargo.lock
├── Cargo.toml
├── README.md
├── screenshot
│   ├── 2017-04-13-211208_887x708_scrot.png
│   └── 2017-04-13-211409_302x579_scrot.png
└── src
    ├── chatroom.rs                                 struct of chatroom infomation
    ├── message.rs                                  struct of message
    ├── pointer.rs                                  a wrapper of raw C pointer
    ├── server.rs                                   core protocol file
    ├── user.rs                                     struct of user infomation
    └── wechat.rs                                   core pidgin interface file

Q&A

Why use pidgin/libpurple?

The desktop wechat implementation already exists and maybe has modern UI, but I want to login to all my IMs in the same tool (like IRC, MSN, etc). I choose pidgin because it supports a lot of chat protocols.

Is red packet/custom sticker supported?

Not supported. Because this program is base on web wechat protocol, if the web wechat doesn't support these features, we can't either.

LICENSE

This project is licensed under WTFPL.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].