Skip to content

Commit 6a8866d

Browse files
authored
add file stream and image stream rpc call (#88)
* add file stream and image stream rpc call * fix test * 0.17.5 * add imageType to MessageImageStreamRequest * add @deprecated to MessageFile and MessageImage rpc * add change history in readme * 0.18.0
1 parent 31db2b7 commit 6a8866d

File tree

5 files changed

+33
-1
lines changed

5 files changed

+33
-1
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,9 @@ TCP hole punching
221221

222222
## HISTORY
223223

224+
### v0.18 (Oct 15, 2020)
225+
- Add new `MessageFileStream` and `MessageImageStream` to replace the `MessageFile` and `MessageImage` method to avoid blocking nodejs event loop when sending large files ([#88](https://github.com/Chatie/grpc/pull/88)) by [@windmemory](https://github.com/windmemory)
226+
224227
### v0.17 (Aug 5, 2020)
225228

226229
- Add PHPH Support ([#76](https://github.com/Chatie/grpc/pull/76) [#78](https://github.com/Chatie/grpc/pull/78)) by [@zhangchunsheng](https://github.com/zhangchunsheng)

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@chatie/grpc",
3-
"version": "0.17.4",
3+
"version": "0.18.0",
44
"description": "gRPC for Chatie",
55
"main": "dist/src/index.js",
66
"typings": "dist/src/index.d.js",

proto/wechaty/puppet.proto

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,12 @@ service Puppet {
9292
rpc MessagePayload (puppet.MessagePayloadRequest) returns (puppet.MessagePayloadResponse) {}
9393

9494
rpc MessageContact (puppet.MessageContactRequest) returns (puppet.MessageContactResponse) {}
95+
// @deprecated: using MessageFileStream to transfer files
9596
rpc MessageFile (puppet.MessageFileRequest) returns (puppet.MessageFileResponse) {}
97+
rpc MessageFileStream (puppet.MessageFileStreamRequest) returns (stream puppet.MessageFileStreamResponse) {}
98+
// @deprecated: using MessageImageStream to transfer images
9699
rpc MessageImage (puppet.MessageImageRequest) returns (puppet.MessageImageResponse) {}
100+
rpc MessageImageStream (puppet.MessageImageStreamRequest) returns (stream puppet.MessageImageStreamResponse) {}
97101
rpc MessageMiniProgram (puppet.MessageMiniProgramRequest) returns (puppet.MessageMiniProgramResponse) {}
98102
rpc MessageUrl (puppet.MessageUrlRequest) returns (puppet.MessageUrlResponse) {}
99103

proto/wechaty/puppet/message.proto

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,14 @@ message MessageImageResponse {
5656
string filebox = 1;
5757
}
5858

59+
message MessageImageStreamRequest {
60+
string id = 1;
61+
ImageType type = 2;
62+
}
63+
message MessageImageStreamResponse {
64+
bytes data = 1;
65+
}
66+
5967
message MessageContactRequest {
6068
string id = 1;
6169
}
@@ -70,6 +78,13 @@ message MessageFileResponse {
7078
string filebox = 1;
7179
}
7280

81+
message MessageFileStreamRequest {
82+
string id = 1;
83+
}
84+
message MessageFileStreamResponse {
85+
bytes data = 1;
86+
}
87+
7388
message MessageMiniProgramRequest {
7489
string id = 1;
7590
}

tests/puppet-server-impl.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,12 +133,22 @@ export const puppetServerImpl: IPuppetServer = {
133133
throw new Error('not implemented.')
134134
},
135135

136+
messageFileStream: (call) => {
137+
void call
138+
throw new Error('not implemented.')
139+
},
140+
136141
messageImage: (call, callback) => {
137142
void call
138143
void callback
139144
throw new Error('not implemented.')
140145
},
141146

147+
messageImageStream: (call) => {
148+
void call
149+
throw new Error('not implemented.')
150+
},
151+
142152
messageMiniProgram: (call, callback) => {
143153
void call
144154
void callback

0 commit comments

Comments
 (0)